Skip to content

Instantly share code, notes, and snippets.

@LaughingLeader
Last active August 8, 2018 19:34
Show Gist options
  • Save LaughingLeader/e735d2205fbd5131d9f3d4a79089e252 to your computer and use it in GitHub Desktop.
Save LaughingLeader/e735d2205fbd5131d9f3d4a79089e252 to your computer and use it in GitHub Desktop.
Test Mod Experiments - Sad Cube (DOS2 Mod)
Version 1
SubGoalCombiner SGC_AND
INITSECTION
DB_TME_SadCubeStageTemplate(0, "SadCube_Reborn_9ab66717-6ae1-4965-aeef-30a36a698033");
DB_TME_SadCubeStageTemplate(1, "SadCube_Reborn_God_1_0c47c691-c439-43a3-b3ca-88d6db9f4da4");
DB_TME_SadCubeStageTemplate(2, "SadCube_Reborn_God_2_8a757889-d13f-4aee-8330-44f50d0dadc0");
DB_TME_SadCubeStageTemplate(3, "SadCube_Reborn_God_3_0fc8689e-df45-4ca6-ad6f-4e98b18c66c5");
DB_TME_SadCubeStageTemplate(4, "SadCube_Reborn_God_4_bb9d08fd-be6d-4bfd-8314-d55f5746e431");
KBSECTION
QRY
TME_QRY_GetSadCube((CHARACTERGUID)_Char1, (CHARACTERGUID)_Char2)
AND
GetTemplate(_Char1, "SadCube_Reborn_9ab66717-6ae1-4965-aeef-30a36a698033")
THEN
DB_TME_SadCube((CHARACTERGUID)_Char1, (CHARACTERGUID)_Char2);
QRY
TME_QRY_GetSadCube((CHARACTERGUID)_Char1, (CHARACTERGUID)_Char2)
AND
GetTemplate(_Char2, "SadCube_Reborn_9ab66717-6ae1-4965-aeef-30a36a698033")
THEN
DB_TME_SadCube((CHARACTERGUID)_Char2, (CHARACTERGUID)_Char1);
IF
GameStarted(_,_)
AND
CharacterCanSee(CHARACTERGUID_SadCube_Reborn_002_8bce8b6b-9f7a-486a-8145-079420eb3c8b, CHARACTERGUID_SadCube_Reborn_002_8bce8b6b-9f7a-486a-8145-079420eb3c8b, 1)
THEN
DisplayText(CHARACTERGUID_SadCube_Reborn_002_8bce8b6b-9f7a-486a-8145-079420eb3c8b, "SADCUBE LIVVVVES!");
IF
CharacterSawCharacter(_Char1, _Char2)
AND
TME_QRY_GetSadCube(_Char1, _Char2)
AND
DB_TME_SadCube(_SadCube, _OtherChar)
THEN
TimerLaunch("Timers_SadCube_CheckTurn", 2000);
IF
TimerFinished("Timers_SadCube_CheckTurn")
AND
DB_TME_SadCube(_SadCube, _OtherChar)
AND
GetDistanceTo(_SadCube, _OtherChar, _Dist)
AND
_Dist > 10
THEN
TimerLaunch("Timers_SadCube_CheckTurn", 500);
IF
TimerFinished("Timers_SadCube_CheckTurn")
AND
DB_TME_SadCube(_SadCube, _OtherChar)
AND
GetDistanceTo(_SadCube, _OtherChar, _Dist)
AND
_Dist <= 10
THEN
TimerLaunch("Timers_SadCube_Turn", 500);
IF
TimerFinished("Timers_SadCube_Turn")
AND
DB_TME_SadCube(_SadCube, _OtherChar)
THEN
CharacterLookAt(_SadCube, _OtherChar);
NOT DB_TME_SadCube(_SadCube, _OtherChar);
DB_TME_SadCubeStage((CHARACTERGUID)_SadCube, 0, _OtherChar);
DisplayText(_SadCube, "Peasant! Your presence disturbs me...");
TimerLaunch("Timers_SadCube_Transform", 3000);
IF
TimerFinished("Timers_SadCube_Transform")
AND
DB_TME_SadCubeStage(_SadCube, 0, _OtherChar)
THEN
CharacterCharacterSetEvent(_SadCube, _OtherChar, "Events_TME_SadCubeLookedAtCharacter");
ApplyStatus(_OtherChar, "FEAR", 3.0, 1);
PlayEffect(_SadCube, "RS3_FX_GP_ScriptedEvent_RedPrincess_Teleport_01");
PlayEffect(_SadCube, "RS3_FX_GP_ScriptedEvent_Screamer_Plant_01");
IF
TimerFinished("Timers_SadCube_Transform")
AND
DB_TME_SadCubeStage(_SadCube, _Stage, _OtherChar)
AND
IntegerSum(_Stage, 1, _NextStage)
AND
DB_TME_SadCubeStageTemplate(_NextStage, _Template)
THEN
NOT DB_TME_SadCubeStage(_SadCube, _Stage, _OtherChar);
DB_TME_SadCubeStage(_SadCube, _NextStage, _OtherChar);
PlayEffect(_SadCube, "RS3_FX_GP_ScriptedEvent_RedPrincess_Teleport_01");
CharacterTransform(_SadCube, _Template, 0, 1, 0, 0, 0, 0, 0);
TimerLaunch("Timers_SadCube_Transform", 60);
IF
TimerFinished("Timers_SadCube_Transform")
AND
DB_TME_SadCubeStage(_SadCube, _Stage, _OtherChar)
AND
IntegerSum(_Stage, 1, _NextStage)
AND
NOT DB_TME_SadCubeStageTemplate(_NextStage, _)
THEN
NOT DB_TME_SadCubeStage(_SadCube, _Stage, _OtherChar);
PlayEffect(_SadCube, "RS3_FX_Skills_Earth_Cast_Shout_Earthquake_Root_01");
DisplayText(_SadCube, "Prepare to be annihilated!");
CharacterLaunchIteratorAroundCharacter(_SadCube, 60.0, "TME_Events_SadCubeEarthquake");
TimerLaunch("Timers_SadCube_Jump", 3000);
DB_TME_SadCubeJumpTarget(_SadCube, _OtherChar);
IF
TimerFinished("Timers_SadCube_Jump")
AND
DB_TME_SadCubeJumpTarget(_SadCube, _OtherChar)
THEN
NOT DB_TME_SadCubeJumpTarget(_SadCube, _OtherChar);
CharacterUseSkill(_SadCube, "Jump_DragonDive", _OtherChar, 1, 1, 1);
IF
StoryEvent((CHARACTERGUID)_Character, "TME_Events_SadCubeEarthquake")
AND
GetTemplate(_Character, _Template)
AND
StringContains(_Template, "SadCube", 0)
THEN
ApplyStatus(_Character, "KNOCKED_DOWN", 9.0, 1);
ApplyDamage(_Character, 5, "PHYSICAL");
IF
RegionEnded(_)
THEN
CharacterTransform(CHARACTERGUID_SadCube_Reborn_002_8bce8b6b-9f7a-486a-8145-079420eb3c8b, "SadCube_Reborn_9ab66717-6ae1-4965-aeef-30a36a698033", 0, 1, 0, 0, 0, 0, 0);
IF
StoryEvent((CHARACTERGUID)_SadCube, "Events_TMT_SadCubeInit")
THEN
CharacterTransform(_SadCube, "SadCube_Reborn_9ab66717-6ae1-4965-aeef-30a36a698033", 0, 1, 0, 0, 0, 0, 0);
EXITSECTION
ENDEXITSECTION
ParentTargetEdge "TestMod_Experiments"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment