Return to post
- variables
- {
- global:
1: NumBots
2: Density
3: turnmode
5: CurrentAngle
6: ChangeInAngle
7: UR
8: TotalAngleUR
9: SampleSize
- 0: GameState
- 1: Button
- 2: DamageMode
- 3: StrafeMode
- 4: TurnMode
- 5: GameMode
- 6: BotTypeList
- 7: BotType
- }
- subroutines
- {
- 0: HomeText
- 1: Menu1Text
- 2: Menu2Text
- 3: Menu3Text
- 4: Menu4Text
- 5: Menu5Text
- 6: ClearWorldEffects
- 7: SpawnBots
- }
- rule("Initialisation")
- {
- event
- {
- Player Joined Match;
- Team 1;
- Slot 0;
- }
- actions
- {
Global.NumBots = 2;
Global.Density = 15;
Global.SampleSize = -1;
Call Subroutine(Sub3);
Disable Built-In Game Mode Announcer;
Global.E = False;
Create Dummy Bot(Hero(Ana), Team 2, 0, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500, -7.500)), Host Player);
Create Dummy Bot(Hero(Ana), Team 2, 1, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500, -7.500)), Host Player);
- "Set player to Genji"
- Preload Hero(Event Player, Hero(Genji));
- Start Forcing Player To Be Hero(Event Player, Hero(Genji));
- "Move player to position"
- Start Forcing Player Position(Event Player, Vector(0, 0, 0), True);
- "Display Home Menu UI"
- Call Subroutine(HomeText);
- Wait(0.250, Ignore Condition);
- "Free player to move"
- Stop Forcing Player Position(Event Player);
- "Set Button Positions"
- Global.Button[0] = Vector(-20, 13.500, 5);
- Global.Button[1] = Vector(-20, 7.500, 5);
- Global.Button[2] = Vector(-20, 13.500, 0);
- Global.Button[3] = Vector(-20, 7.500, 0);
- Global.Button[4] = Vector(-20, 13.500, -5);
- Global.Button[5] = Vector(-20, 7.500, -5);
- Global.Button[6] = Vector(-20, 10.500, 0);
- "Set turn mode and strafe mode to false"
- Global.TurnMode = False;
- Global.StrafeMode = False;
- "Add bots to lists."
- Global.BotTypeList[0] = Hero(Ana);
- Global.BotTypeList[1] = Hero(Zenyatta);
- Global.BotTypeList[2] = Hero(McCree);
- Global.BotTypeList[3] = Hero(Widowmaker);
- Global.BotTypeList[4] = Hero(Hanzo);
- }
- }
rule("Text Spawner")
- rule("Home Menu Input")
- {
- event
- {
Player Joined Match;
- Ongoing - Each Player;
- Team 1;
All;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 0;
- }
- actions
- {
Create In-World Text(All Players(All Teams), Custom String("No. Bots: {0}", Global.NumBots), Vector(19.500, 1.500, -10), 1,
Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Dash(400%)"), Vector(19.500, 1.500, -7), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Normal(100%)"), Vector(19.500, 1.500, -5), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Damage multiplier:"), Vector(19.500, 2.500, -5), 1,
Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Nano(150%)"), Vector(19.500, 1.500, -3), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Normal Mode"), Vector(19.500, 1.500, -1), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("180 Dash Mode"), Vector(19.500, 1.500, 1), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Toggle Strafe"), Vector(19.500, 1.500, 3), 1, Clip Against Surfaces,
Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Spawn Range : {0}m", Global.Density), Vector(19.500, 1.500, 6), 1,
Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
Create In-World Text(All Players(All Teams), Custom String("Press Interact Key while standing inside sphere to activate."), Vector(
19.500, 3, 0), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
Create Effect(All Players(All Teams), Sphere, Blue, Vector(0, -10, 0), 0.500, Visible To Position and Radius);
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu1Text);
- Wait(0.500, Ignore Condition);
- Global.GameState = 1;
- Global.GameMode = 1;
- Call Subroutine(SpawnBots);
- "Button 1"
- disabled Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu2Text);
- disabled Global.GameState = 2;
- disabled Global.GameMode = 2;
- "Button 4"
- disabled Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu3Text);
- disabled Global.GameState = 3;
- disabled Global.GameMode = 3;
- "Button 5"
- disabled Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu4Text);
- disabled Global.GameState = 4;
- disabled Global.GameMode = 4;
- }
- }
rule("Remove Bot Button")
- rule("Menu 1 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -11)) <= 2;
- Global.GameState == 1;
- }
- actions
- {
If(Global.NumBots > 2);
Global.NumBots = Global.NumBots + -1;
Call Subroutine(Sub1);
Global.turnmode = False;
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 1;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 150);
- "Button 1"
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(HomeText);
- Wait(0.500, Ignore Condition);
- Global.GameState = 0;
- Global.GameMode = 0;
- Destroy All Dummy Bots;
- "Button 2"
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 0;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 100);
- "Button 3"
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu5Text);
- Wait(0.500, Ignore Condition);
- Global.GameState = 5;
- "Button 4"
- Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 2;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 400);
- "Button 5"
- Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- If(Global.StrafeMode == False);
- Global.StrafeMode = True;
- Global.TurnMode = False;
- Else;
- Global.StrafeMode = False;
- End;
- Call Subroutine(Menu1Text);
- End;
- }
- }
rule("Add Bot Button")
- rule("Menu 2 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -9)) <= 2;
- Global.GameState == 2;
- }
- actions
- {
If(Global.NumBots < 6);
Global.NumBots = Global.NumBots + 1;
Call Subroutine(Sub0);
Global.turnmode = False;
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
- Wait(1, Ignore Condition);
- }
- }
rule("Dash DMG Button")
- rule("Menu 3 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -7)) <= 2;
- Global.GameState == 3;
- }
- actions
- {
Destroy All Effects;
Wait(0.250, Ignore Condition);
Set Damage Dealt(Event Player, 400);
Create Effect(All Players(All Teams), Sparkles, Red, Event Player, 2, Visible To Position and Radius);
Call Subroutine(Sub3);
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
- Wait(1, Ignore Condition);
- }
- }
rule("Normal DMG Button")
- rule("Menu 4 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -5)) <= 2;
- Global.GameState == 4;
- }
- actions
- {
Destroy All Effects;
Wait(0.250, Ignore Condition);
Set Damage Dealt(Event Player, 100);
Create Effect(All Players(All Teams), Sparkles, White, Event Player, 2, Visible To Position and Radius);
Call Subroutine(Sub3);
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
- Wait(1, Ignore Condition);
- }
- }
rule("Nano DMG Button")
- rule("Menu 5 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -3)) <= 2;
- Global.GameState == 5;
- }
- actions
- {
Destroy All Effects;
Wait(0.250, Ignore Condition);
Set Damage Dealt(Event Player, 150);
Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 2, Visible To Position and Radius);
Call Subroutine(Sub3);
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 0;
- Call Subroutine(Menu5Text);
- Wait(0.500, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 1"
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu1Text);
- Wait(0.250, Ignore Condition);
- Global.GameState = 1;
- "Button 2"
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 1;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 3"
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 2;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 4"
- Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 3;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 5"
- Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 4;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- }
- }
rule("Normal Mode Button")
- rule("Home Menu Text [sub0]")
- {
- event
- {
Ongoing - Each Player;
Team 1;
Slot 0;
- Subroutine;
- HomeText;
- }
conditions
- actions
- {
Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, -1)) <= 2;
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[4], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[5], 1.250, Visible To Position and Radius);
- "Title"
- Create In-World Text(All Players(All Teams), Custom String("Press [Interact] Key while looking circle to select."), Vector(-20, 17,
- 0), 2.500, Do Not Clip, Visible To Position and String, White, Default Visibility);
- }
- }
- rule("Menu 1 Text [sub1]")
- {
- event
- {
- Subroutine;
- Menu1Text;
- }
- actions
- {
Call Subroutine(Sub0);
Global.turnmode = False;
Destroy All HUD Text;
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("Nano"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Blue, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Back"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Orange, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Normal"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Purple, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("Enemy Type"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- "Button 4"
- Create In-World Text(All Players(All Teams), Custom String("Dash"), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[4], 1.250, Visible To Position and Radius);
- "Button 5"
- Create In-World Text(All Players(All Teams), Custom String("Strafe"), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- If(Global.StrafeMode == False);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else;
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[5], 1.250, Visible To Position and Radius);
- End;
- "Text Category"
- Create In-World Text(All Players(All Teams), Custom String("Damage Modifier"), Vector(-20, 14.500, 0), 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Damage Effect"
- If(Global.DamageMode == 0);
- Create Effect(All Players(All Teams), Sparkles, White, Event Player, 2, Visible To Position and Radius);
- Else If(Global.DamageMode == 1);
- Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 2, Visible To Position and Radius);
- Else If(Global.DamageMode == 2);
- Create Effect(All Players(All Teams), Sparkles, Red, Event Player, 2, Visible To Position and Radius);
- End;
- }
- }
rule("180 Mode Button")
- rule("Menu 2 Text [sub2]")
- {
- event
- {
Ongoing - Each Player;
Team 1;
Slot 0;
- Subroutine;
- Menu2Text;
- }
conditions
- actions
- {
Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, 1)) <= 2;
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
- rule("Menu 3 Text [sub3]")
- {
- event
- {
- Subroutine;
- Menu3Text;
- }
- actions
- {
Global.E = False;
Call Subroutine(Sub2);
Global.turnmode = True;
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
rule("Strafe Mode Button")
- rule("Menu 4 Text [sub4]")
- {
- event
- {
Ongoing - Each Player;
Team 1;
Slot 0;
- Subroutine;
- Menu4Text;
- }
conditions
- actions
- {
Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, 3)) <= 2;
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
- rule("Menu 5 Text [sub5]")
- {
- event
- {
- Subroutine;
- Menu5Text;
- }
- actions
- {
If(Global.E == True);
Global.E = False;
Else;
Global.E = True;
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("Ana"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Back"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Orange, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Zen"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("McCree"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 4"
- Create In-World Text(All Players(All Teams), Custom String("Widow"), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 5"
- Create In-World Text(All Players(All Teams), Custom String("Hanzo"), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Confirmation Buttons"
- If(Global.BotType == 0);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 1);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 2);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 3);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 4);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[5], 1.250, Visible To Position and Radius);
- End;
- }
- }
rule("Decrease Density Button")
- rule("ClearWorldEffects [sub6]")
- {
- event
- {
Ongoing - Each Player;
Team 1;
Slot 0;
- Subroutine;
- ClearWorldEffects;
- }
conditions
- actions
- {
Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, 5)) <= 2;
- Destroy All In-World Text;
- Destroy All Effects;
- Wait(0.050, Ignore Condition);
- }
- }
- rule("SpawnBots [sub7]")
- {
- event
- {
- Subroutine;
- SpawnBots;
- }
- actions
- {
If(Global.Density > 7.500);
Global.Density = Global.Density + -0.500;
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 5, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 4, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- }
- }
rule("Increase Density Button")
- rule("Set Ultimate")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
Is Button Held(Event Player, Interact) == True;
Distance Between(Event Player, Vector(20, 1.500, 7)) <= 2;
- Ultimate Charge Percent(Event Player) == 0;
- }
- actions
- {
If(Global.Density < 19.500);
Global.Density = Global.Density + 0.500;
- Set Ultimate Charge(Event Player, 100);
- }
- }
- rule("Respawn Bot 1")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 0;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 0);
If(Global.turnmode == True);
Create Dummy Bot(Hero(Ana), Team 2, 0, Vector(0.500, 0, 0), Host Player);
Else;
Create Dummy Bot(Hero(Ana), Team 2, 0, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500, -7.500)), Host Player);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(0.500, 0, 0), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500,
- -7.500)), Host Player);
- End;
- }
- }
- rule("Respawn Bot 2")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 1;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 1);
If(Global.turnmode == True);
Create Dummy Bot(Hero(Ana), Team 2, 1, Vector(-0.500, 0, 0), Host Player);
Else;
Create Dummy Bot(Hero(Ana), Team 2, 1, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500, -7.500)), Host Player);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(-0.500, 0, 0), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500,
- -7.500)), Host Player);
- End;
- }
- }
- rule("Respawn Bot 3")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 2;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 2);
If(Global.turnmode == True);
Create Dummy Bot(Hero(Ana), Team 2, 2, Vector(0, 0, 0.500), Host Player);
Else If(Global.NumBots >= 3);
Create Dummy Bot(Hero(Ana), Team 2, 2, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(0, 0, 0.500), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 4")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 3;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 3);
If(Global.turnmode == True);
Create Dummy Bot(Hero(Ana), Team 2, 3, Vector(0, 0, -0.500), Host Player);
Else If(Global.NumBots >= 4);
Create Dummy Bot(Hero(Ana), Team 2, 3, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(0, 0, -0.500), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 5")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 4;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 4);
If(Global.NumBots >= 5);
Create Dummy Bot(Hero(Ana), Team 2, 4, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
- If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 4, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 6")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 5;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 5);
If(Global.NumBots == 6);
Create Dummy Bot(Hero(Ana), Team 2, 5, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
- If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 5, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
rule("Add Bots sub0")
- rule("Strafe Loop (not mine)")
- {
- event
- {
Subroutine;
Sub0;
- Ongoing - Each Player;
- Team 2;
- All;
- }
- conditions
- {
- Global.StrafeMode == True;
- }
- actions
- {
If(Global.NumBots == 3);
Create Dummy Bot(Hero(Ana), Team 2, 2, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
Else If(Global.NumBots == 4);
Create Dummy Bot(Hero(Ana), Team 2, 3, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
Else If(Global.NumBots == 5);
Create Dummy Bot(Hero(Ana), Team 2, 4, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
Else If(Global.NumBots == 6);
Create Dummy Bot(Hero(Ana), Team 2, 5, Vector(Random Integer(Global.Density, Global.Density * -1), 0, Random Integer(
Global.Density, Global.Density * -1)), Host Player);
End;
Destroy All HUD Text;
- Set Facing(Event Player, Vector(Random Integer(-20, 20), 0, Random Integer(-20, 20)), To World);
- Start Throttle In Direction(Event Player, Left, 1, To Player, Replace existing throttle, Direction and Magnitude);
- Wait(Random Real(0.500, 1.500), Ignore Condition);
- Stop Throttle In Direction(Event Player);
- Wait(0.500, Ignore Condition);
- Start Throttle In Direction(Event Player, Right, 1, To Player, Replace existing throttle, Direction and Magnitude);
- Wait(Random Real(0.500, 1.500), Ignore Condition);
- Stop Throttle In Direction(Event Player);
- Wait(0.500, Ignore Condition);
- Loop If Condition Is True;
- }
- }variables
- {
- global:
- 0: GameState
- 1: Button
- 2: DamageMode
- 3: StrafeMode
- 4: TurnMode
- 5: GameMode
- 6: BotTypeList
- 7: BotType
- }
- subroutines
- {
- 0: HomeText
- 1: Menu1Text
- 2: Menu2Text
- 3: Menu3Text
- 4: Menu4Text
- 5: Menu5Text
- 6: ClearWorldEffects
- 7: SpawnBots
- }
rule("Remove Bots sub1")
- rule("Initialisation")
- {
- event
- {
Subroutine;
Sub1;
- Player Joined Match;
- Team 1;
- Slot 0;
- }
- actions
- {
If(Global.NumBots == 2);
Destroy Dummy Bot(Team 2, 2);
Else If(Global.NumBots == 3);
Destroy Dummy Bot(Team 2, 3);
Else If(Global.NumBots == 4);
Destroy Dummy Bot(Team 2, 4);
Else If(Global.NumBots == 5);
Destroy Dummy Bot(Team 2, 5);
End;
Destroy All HUD Text;
- "Set player to Genji"
- Preload Hero(Event Player, Hero(Genji));
- Start Forcing Player To Be Hero(Event Player, Hero(Genji));
- "Move player to position"
- Start Forcing Player Position(Event Player, Vector(0, 0, 0), True);
- "Display Home Menu UI"
- Call Subroutine(HomeText);
- Wait(0.250, Ignore Condition);
- "Free player to move"
- Stop Forcing Player Position(Event Player);
- "Set Button Positions"
- Global.Button[0] = Vector(-20, 13.500, 5);
- Global.Button[1] = Vector(-20, 7.500, 5);
- Global.Button[2] = Vector(-20, 13.500, 0);
- Global.Button[3] = Vector(-20, 7.500, 0);
- Global.Button[4] = Vector(-20, 13.500, -5);
- Global.Button[5] = Vector(-20, 7.500, -5);
- Global.Button[6] = Vector(-20, 10.500, 0);
- "Set turn mode and strafe mode to false"
- Global.TurnMode = False;
- Global.StrafeMode = False;
- "Add bots to lists."
- Global.BotTypeList[0] = Hero(Ana);
- Global.BotTypeList[1] = Hero(Zenyatta);
- Global.BotTypeList[2] = Hero(McCree);
- Global.BotTypeList[3] = Hero(Widowmaker);
- Global.BotTypeList[4] = Hero(Hanzo);
- }
- }
rule("180 Mode sub2")
- rule("Home Menu Input")
- {
- event
- {
Subroutine;
Sub2;
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 0;
- }
- actions
- {
Global.NumBots = 4;
Kill(Players In Slot(4, Team 2), Null);
Kill(Players In Slot(5, Team 2), Null);
Create Dummy Bot(Hero(Ana), Team 2, 0, Vector(0.500, 0, 0), Host Player);
Create Dummy Bot(Hero(Ana), Team 2, 1, Vector(-0.500, 0, 0), Host Player);
Create Dummy Bot(Hero(Ana), Team 2, 2, Vector(0, 0, 0.500), Host Player);
Create Dummy Bot(Hero(Ana), Team 2, 3, Vector(0, 0, -0.500), Host Player);
Set Max Health(Players In Slot(1, All Teams), 75);
Set Max Health(Players In Slot(2, All Teams), 50);
Set Max Health(Players In Slot(3, All Teams), 25);
Create HUD Text(Event Player, Custom String("Unstable Rate Avg: {0}°", Global.UR), Null, Null, Left, 0, White, White, White,
Visible To and String, Default Visibility);
Create HUD Text(Event Player, Custom String("Dash Angle Diff: {0}°", Global.ChangeInAngle), Null, Null, Left, 0, White, White,
White, Visible To and String, Default Visibility);
Create HUD Text(Event Player, Custom String("Press Crouch + Interact to reset UR"), Null, Null, Right, 0, White, White, Orange,
Visible To and String, Default Visibility);
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu1Text);
- Wait(0.500, Ignore Condition);
- Global.GameState = 1;
- Global.GameMode = 1;
- Call Subroutine(SpawnBots);
- "Button 1"
- disabled Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu2Text);
- disabled Global.GameState = 2;
- disabled Global.GameMode = 2;
- "Button 4"
- disabled Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu3Text);
- disabled Global.GameState = 3;
- disabled Global.GameMode = 3;
- "Button 5"
- disabled Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- disabled Call Subroutine(ClearWorldEffects);
- disabled Call Subroutine(Menu4Text);
- disabled Global.GameState = 4;
- disabled Global.GameMode = 4;
- }
- }
rule("Button spawner sub3")
- rule("Menu 1 Input")
- {
- event
- {
Subroutine;
Sub3;
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 1;
- }
- actions
- {
Create Effect(All Players(All Teams), Sphere, Red, Vector(20, 1, -11), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Green, Vector(20, 1, -9), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Blue, Vector(20, 1, -7), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Blue, Vector(20, 1, -5), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Blue, Vector(20, 1, -3), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, White, Vector(20, 1, -1), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, White, Vector(20, 1, 1), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Blue, Vector(20, 1, 3), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Red, Vector(20, 1, 5), 0.500, Visible To Position and Radius);
Create Effect(All Players(All Teams), Sphere, Green, Vector(20, 1, 7), 0.500, Visible To Position and Radius);
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 1;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 150);
- "Button 1"
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(HomeText);
- Wait(0.500, Ignore Condition);
- Global.GameState = 0;
- Global.GameMode = 0;
- Destroy All Dummy Bots;
- "Button 2"
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 0;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 100);
- "Button 3"
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu5Text);
- Wait(0.500, Ignore Condition);
- Global.GameState = 5;
- "Button 4"
- Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.DamageMode = 2;
- Call Subroutine(Menu1Text);
- Set Damage Dealt(Event Player, 400);
- "Button 5"
- Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- If(Global.StrafeMode == False);
- Global.StrafeMode = True;
- Global.TurnMode = False;
- Else;
- Global.StrafeMode = False;
- End;
- Call Subroutine(Menu1Text);
- End;
- }
- }
rule("Strafe Loop (not mine)")
- rule("Menu 2 Input")
- {
- event
- {
- Ongoing - Each Player;
Team 2;
All;
- Team 1;
- Slot 0;
- }
- conditions
- {
Global.E == True;
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 2;
- }
- actions
- {
Start Throttle In Direction(Event Player, Left, 1, To Player, Replace existing throttle, Direction and Magnitude);
Wait(Random Real(0.500, 1.500), Ignore Condition);
Stop Throttle In Direction(Event Player);
Wait(0.500, Ignore Condition);
Start Throttle In Direction(Event Player, Right, 1, To Player, Replace existing throttle, Direction and Magnitude);
Wait(Random Real(0.500, 1.500), Ignore Condition);
Stop Throttle In Direction(Event Player);
Wait(0.500, Ignore Condition);
Loop If Condition Is True;
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
- Wait(1, Ignore Condition);
- }
- }
- rule("Menu 3 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 3;
- }
- actions
- {
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
- Wait(1, Ignore Condition);
- }
- }
rule("Angle")
- rule("Menu 4 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
Global.turnmode == True;
Is Using Ability 1(Event Player) == True;
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 4;
- }
- actions
- {
Global.SampleSize = 1 + Global.SampleSize;
Global.ChangeInAngle = Absolute Value(Angle Difference(Global.CurrentAngle, Horizontal Facing Angle Of(Event Player)));
Global.CurrentAngle = Horizontal Facing Angle Of(Event Player);
If(Global.SampleSize >= 1);
Global.TotalAngleUR = Global.TotalAngleUR + (180 - Global.ChangeInAngle);
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 1;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu1Text);
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 2;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu2Text);
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 3;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu3Text);
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Global.GameState = 4;
- Call Subroutine(Menu5Text);
- Call Subroutine(Menu4Text);
- End;
Global.UR = Global.TotalAngleUR / Global.SampleSize;
- Wait(1, Ignore Condition);
- }
- }
rule("Reset UR")
- rule("Menu 5 Input")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
Is Button Held(Event Player, Crouch) == True;
- Is Button Held(Event Player, Interact) == True;
- Global.GameState == 5;
- }
- actions
- {
Global.UR = 0;
Global.SampleSize = -1;
Global.TotalAngleUR = 0;
- "Button 0"
- If(Distance Between(Global.Button[0], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[0]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 0;
- Call Subroutine(Menu5Text);
- Wait(0.500, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 1"
- Else If(Distance Between(Global.Button[1], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[1]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Call Subroutine(Menu1Text);
- Wait(0.250, Ignore Condition);
- Global.GameState = 1;
- "Button 2"
- Else If(Distance Between(Global.Button[2], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[2]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 1;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 3"
- Else If(Distance Between(Global.Button[3], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[3]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 2;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 4"
- Else If(Distance Between(Global.Button[4], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[4]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 3;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- "Button 5"
- Else If(Distance Between(Global.Button[5], Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player)
- + Facing Direction Of(Event Player) * Distance Between(Eye Position(Event Player), Global.Button[5]), Null, Event Player,
- False)) <= 1);
- Call Subroutine(ClearWorldEffects);
- Global.BotType = 4;
- Call Subroutine(Menu5Text);
- Wait(0.250, Ignore Condition);
- Destroy All Dummy Bots;
- Call Subroutine(SpawnBots);
- }
- }
- rule("Home Menu Text [sub0]")
- {
- event
- {
- Subroutine;
- HomeText;
- }
- actions
- {
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[4], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("Coming Soon..."), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[5], 1.250, Visible To Position and Radius);
- "Title"
- Create In-World Text(All Players(All Teams), Custom String("Press [Interact] Key while looking circle to select."), Vector(-20, 17,
- 0), 2.500, Do Not Clip, Visible To Position and String, White, Default Visibility);
- }
- }
- rule("Menu 1 Text [sub1]")
- {
- event
- {
- Subroutine;
- Menu1Text;
- }
- actions
- {
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("Nano"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Blue, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Back"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Orange, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Normal"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Purple, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("Enemy Type"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- "Button 4"
- Create In-World Text(All Players(All Teams), Custom String("Dash"), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Red, Global.Button[4], 1.250, Visible To Position and Radius);
- "Button 5"
- Create In-World Text(All Players(All Teams), Custom String("Strafe"), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- If(Global.StrafeMode == False);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else;
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[5], 1.250, Visible To Position and Radius);
- End;
- "Text Category"
- Create In-World Text(All Players(All Teams), Custom String("Damage Modifier"), Vector(-20, 14.500, 0), 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Damage Effect"
- If(Global.DamageMode == 0);
- Create Effect(All Players(All Teams), Sparkles, White, Event Player, 2, Visible To Position and Radius);
- Else If(Global.DamageMode == 1);
- Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 2, Visible To Position and Radius);
- Else If(Global.DamageMode == 2);
- Create Effect(All Players(All Teams), Sparkles, Red, Event Player, 2, Visible To Position and Radius);
- End;
- }
- }
- rule("Menu 2 Text [sub2]")
- {
- event
- {
- Subroutine;
- Menu2Text;
- }
- actions
- {
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
- rule("Menu 3 Text [sub3]")
- {
- event
- {
- Subroutine;
- Menu3Text;
- }
- actions
- {
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
- rule("Menu 4 Text [sub4]")
- {
- event
- {
- Subroutine;
- Menu4Text;
- }
- actions
- {
- "Button 0"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("FreePlay"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- "Button 1"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Challange"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("Reaction"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- "Button 3"
- Create In-World Text(Players In Slot(0, Team 1), Custom String("[Null]"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(Players In Slot(0, Team 1), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- }
- }
- rule("Menu 5 Text [sub5]")
- {
- event
- {
- Subroutine;
- Menu5Text;
- }
- actions
- {
- "Button 0"
- Create In-World Text(All Players(All Teams), Custom String("Ana"), Global.Button[0], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 1"
- Create In-World Text(All Players(All Teams), Custom String("Back"), Global.Button[1], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- Create Effect(All Players(All Teams), Sphere, Orange, Global.Button[1], 1.250, Visible To Position and Radius);
- "Button 2"
- Create In-World Text(All Players(All Teams), Custom String("Zen"), Global.Button[2], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 3"
- Create In-World Text(All Players(All Teams), Custom String("McCree"), Global.Button[3], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 4"
- Create In-World Text(All Players(All Teams), Custom String("Widow"), Global.Button[4], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Button 5"
- Create In-World Text(All Players(All Teams), Custom String("Hanzo"), Global.Button[5], 2, Do Not Clip,
- Visible To Position and String, White, Default Visibility);
- "Confirmation Buttons"
- If(Global.BotType == 0);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 1);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 2);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 3);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[5], 1.250, Visible To Position and Radius);
- Else If(Global.BotType == 4);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[0], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[2], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[3], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, White, Global.Button[4], 1.250, Visible To Position and Radius);
- Create Effect(All Players(All Teams), Sphere, Green, Global.Button[5], 1.250, Visible To Position and Radius);
- End;
- }
- }
- rule("ClearWorldEffects [sub6]")
- {
- event
- {
- Subroutine;
- ClearWorldEffects;
- }
- actions
- {
- Destroy All In-World Text;
- Destroy All Effects;
- Wait(0.050, Ignore Condition);
- }
- }
- rule("SpawnBots [sub7]")
- {
- event
- {
- Subroutine;
- SpawnBots;
- }
- actions
- {
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 5, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 4, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- Wait(0.050, Ignore Condition);
- }
- }
- rule("Set Ultimate")
- {
- event
- {
- Ongoing - Each Player;
- Team 1;
- Slot 0;
- }
- conditions
- {
- Ultimate Charge Percent(Event Player) == 0;
- }
- actions
- {
- Set Ultimate Charge(Event Player, 100);
- }
- }
- rule("Respawn Bot 1")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 0;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 0);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(0.500, 0, 0), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 0, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500,
- -7.500)), Host Player);
- End;
- }
- }
- rule("Respawn Bot 2")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 1;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 1);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(-0.500, 0, 0), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 1, Vector(Random Integer(7.500, -7.500), 0, Random Integer(7.500,
- -7.500)), Host Player);
- End;
- }
- }
- rule("Respawn Bot 3")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 2;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 2);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(0, 0, 0.500), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 2, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 4")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 3;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 3);
- If(Global.TurnMode == True);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(0, 0, -0.500), Host Player);
- Else If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 3, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 5")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 4;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 4);
- If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 4, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Respawn Bot 6")
- {
- event
- {
- Player Died;
- Team 2;
- Slot 5;
- }
- actions
- {
- Wait(0.250, Ignore Condition);
- Destroy Dummy Bot(Team 2, 5);
- If(Global.GameMode == 1);
- Create Dummy Bot(Global.BotTypeList[Global.BotType], Team 2, 5, Vector(Random Integer(-15, 15), 0, Random Integer(-15, 15)),
- Host Player);
- End;
- }
- }
- rule("Strafe Loop (not mine)")
- {
- event
- {
- Ongoing - Each Player;
- Team 2;
- All;
- }
- conditions
- {
- Global.StrafeMode == True;
- }
- actions
- {
- Set Facing(Event Player, Vector(Random Integer(-20, 20), 0, Random Integer(-20, 20)), To World);
- Start Throttle In Direction(Event Player, Left, 1, To Player, Replace existing throttle, Direction and Magnitude);
- Wait(Random Real(0.500, 1.500), Ignore Condition);
- Stop Throttle In Direction(Event Player);
- Wait(0.500, Ignore Condition);
- Start Throttle In Direction(Event Player, Right, 1, To Player, Replace existing throttle, Direction and Magnitude);
- Wait(Random Real(0.500, 1.500), Ignore Condition);
- Stop Throttle In Direction(Event Player);
- Wait(0.500, Ignore Condition);
- Loop If Condition Is True;
- }
- }