Return to post
- settings
- {
- main
- {
Description: "ReinKart But More Chaos, Version 1.1.1 Visit workshop codes for more CODE:M5N9R made by Clewster22#2775"
- Description: "ReinKart But More Chaos, Version 1.1.4 Visit Workshop.codes for more CODE:M5N9R made by Clewster22#2775"
- Mode Name: "Super ReinKart"
- }
- modes
- {
- Deathmatch
- {
- enabled maps
- {
- Workshop Chamber 0
- }
- }
- General
- {
- Allow Hero Switching: Off
- Hero Limit: Off
- Respawn As Random Hero: On
- Respawn Time Scalar: 0%
- Score To Win: 50
- }
- }
- heroes
- {
- General
- {
- Reinhardt
- {
- Barrier Field: Off
- Charge Cooldown Time: 0%
- Damage Dealt: 500%
- Damage Received: 500%
- Fire Strike: Off
- Jump Vertical Speed: 150%
- Movement Speed: 300%
- Primary Fire: Off
- Quick Melee: Off
- Ultimate Generation - Combat Earthshatter: 500%
- }
- enabled heroes
- {
- Reinhardt
- }
- }
- }
- }
- variables
- {
- global:
- 0: Box1
- 1: Box2
- 2: Box3
- 3: Box4
- 4: Box5
- 5: BoxHeight
- 6: BoxCooldown
- 7: BoxWidth
- 8: Jump_values
- 9: Freeze_values
- 10: Bomb_values
- 11: Ghost_values
12: Star_values
- 12: Rally_values
- 13: Max_item_values
- 14: Freeze_radius
- 15: Bot_id
- 16: Shock_values
- player:
- 0: Random_item_value
- 1: Killstreak_Icon_attributes
- 2: Killstreak
- 3: Movespeed_tracker
- 4: Players_within_freeze
- 5: Bomb_attributes
- 6: Players_within_bomb
- 7: Ghost_attributes
- 8: Ghost_duration
9: Star_attributes
10: Star_duration
- 9: Rally_attributes
- 10: Rally_duration
- 11: Item_disable
- 12: Bomb_duration
- 13: Shock_attributes
- 14: Shock_position
- 15: Shock_direction
- 16: Players_within_shock
- }
- subroutines
- {
- 0: Item_generation
- 1: Item_used
- 2: Jump_effect
- 3: Freeze_effect
- 4: Bomb_effect
- 5: Bomb_countdown
- 6: Ghost_effect
- 7: Star_effect
- 8: Item_inuse
- 9: Shock_effect
- }
- rule("Global variables")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.BoxHeight = 1.250;
- Global.BoxCooldown = 2;
- Global.BoxWidth = 0.500;
- Global.Freeze_radius = 15;
- }
- }
- rule("Player variables")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Event Player.Item_disable = True;
- Event Player.Movespeed_tracker = 100;
- Create HUD Text(Event Player, Custom String("KILLSTREAK: {0}", Event Player.Killstreak), Null, Null, Left, 0,
- Event Player.Killstreak_Icon_attributes[1], Color(White), Color(White), Visible To String and Color, Default Visibility);
- }
- }
- rule("Item box HUD Texts")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
Create HUD Text(Filtered Array(All Players(All Teams), Current Array Element.Random_item_value == 0), Custom String("BLANK"), Null,
Custom String("PICK UP AN ITEM BOX"), Right, 0, Color(White), Color(White), Color(White), Visible To and String,
Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams), Current Array Element.Random_item_value == 0), Icon String(X),
- Custom String("BLANK"), Custom String("PICK UP AN ITEM BOX"), Right, 0, Color(White), Color(White), Color(White),
- Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
- Current Array Element.Random_item_value >= Global.Jump_values[0] && Current Array Element.Random_item_value < Global.Jump_values[1]),
Custom String("JUMP BOOST"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(
White), Visible To and String, Default Visibility);
- Icon String(Arrow: Up), Custom String("JUMP"), Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(Green), Color(
- White), Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
- Current Array Element.Random_item_value >= Global.Freeze_values[0] && Current Array Element.Random_item_value < Global.Freeze_values[1]),
Custom String("FREEZE WAVE"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(
White), Visible To and String, Default Visibility);
- Icon String(Asterisk), Custom String("FREEZE WAVE"), Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(Blue), Color(
- White), Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
- Current Array Element.Random_item_value >= Global.Shock_values[0] && Current Array Element.Random_item_value < Global.Shock_values[1]),
Custom String("SHOCK BALL"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(
White), Visible To and String, Default Visibility);
- Icon String(Bolt), Custom String("SHOCK BALL"), Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(Purple), Color(
- White), Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
- Current Array Element.Random_item_value >= Global.Bomb_values[0] && Current Array Element.Random_item_value < Global.Bomb_values[1]),
Custom String("FLAME BOMB"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(
White), Visible To and String, Default Visibility);
- Icon String(Fire), Custom String("FLAME BOMB"), Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(Red), Color(White),
- Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
- Current Array Element.Random_item_value >= Global.Ghost_values[0] && Current Array Element.Random_item_value < Global.Ghost_values[1]),
Custom String("GHOST"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(White),
Visible To and String, Default Visibility);
- Ability Icon String(Hero(Reaper), Button(Ability 1)), Custom String("GHOST"), Custom String("PRESS PRIMARY FIRE TO USE"),
- Right, 0, Color(Gray), Color(White), Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams),
Current Array Element.Random_item_value >= Global.Star_values[0] && Current Array Element.Random_item_value <= Global.Star_values[1]),
Custom String("STAR"), Null, Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(White), Color(White), Color(White),
Visible To and String, Default Visibility);
Create HUD Text(Filtered Array(All Players(All Teams), Current Array Element.Random_item_value == -1), Custom String(
"ITEM IN USE"), Null, Custom String("WAIT FOR ITEM TO FINISH"), Right, 0, Color(White), Color(White), Color(White),
Visible To and String, Default Visibility);
- Current Array Element.Random_item_value >= Global.Rally_values[0] && Current Array Element.Random_item_value <= Global.Rally_values[1]),
- Icon String(Flag), Custom String("RALLY"), Custom String("PRESS PRIMARY FIRE TO USE"), Right, 0, Color(Yellow), Color(White),
- Color(White), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(All Players(All Teams), Current Array Element.Random_item_value == -1), Icon String(No), Null,
- Custom String("ITEM IN USE"), Right, 0, Color(Black), Color(White), Color(White), Visible To and String, Default Visibility);
- }
- }
- rule("if Rein Clash with each other")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Has Status(Event Player, Knocked Down) == True;
- }
- actions
- {
- Apply Impulse(Event Player, Backward, 10, To Player, Incorporate Contrary Motion);
- Apply Impulse(Event Player, Up, 50 / (Event Player.Movespeed_tracker / 50), To Player, Incorporate Contrary Motion);
- }
- }
- rule("On fire icon -> Yellow, Orange, Blue, Purple")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Event Player.Killstreak_Icon_attributes = Empty Array;
- Modify Player Variable(Event Player, Killstreak_Icon_attributes, Append To Array, Null);
- Modify Player Variable(Event Player, Killstreak_Icon_attributes, Append To Array, Color(White));
- Create Icon(Event Player.Killstreak_Icon_attributes[0], Event Player, Fire, Visible To Position and Color,
- Event Player.Killstreak_Icon_attributes[1], False);
- }
- }
- rule("When player scores kill")
- {
- event
- {
- Player Earned Elimination;
- All;
- All;
- }
- actions
- {
- Event Player.Killstreak += 1;
- Heal(Event Player, Null, 500);
- Event Player.Movespeed_tracker += 10;
- Set Move Speed(Event Player, Event Player.Movespeed_tracker);
- If(Victim.Killstreak >= 10);
- Modify Player Score(Event Player, 10);
- Small Message(Event Player, Custom String("10 Bonus points"));
- Else If(Victim.Killstreak >= 5);
- Modify Player Score(Event Player, 5);
- Small Message(Event Player, Custom String("5 Bonus points"));
- Else If(Victim.Killstreak >= 3);
- Modify Player Score(Event Player, 3);
- Small Message(Event Player, Custom String("3 Bonus points"));
- Else If(Victim.Killstreak >= 1);
- Modify Player Score(Event Player, 1);
- Small Message(Event Player, Custom String("1 Bonus point"));
- }
- }
- rule("Update icon when scores kill")
- {
- event
- {
- Player Earned Elimination;
- All;
- All;
- }
- actions
- {
- Event Player.Killstreak_Icon_attributes[0] = All Players(All Teams);
- If(Event Player.Killstreak >= 10);
- Event Player.Killstreak_Icon_attributes[1] = Color(Purple);
- Else If(Event Player.Killstreak >= 5);
- Event Player.Killstreak_Icon_attributes[1] = Color(Blue);
- Else If(Event Player.Killstreak >= 3);
- Event Player.Killstreak_Icon_attributes[1] = Color(Orange);
- Else If(Event Player.Killstreak >= 1);
- Event Player.Killstreak_Icon_attributes[1] = Color(Yellow);
- End;
- If(Event Player.Ghost_attributes[0] == True);
- Event Player.Killstreak_Icon_attributes[0] = Null;
- End;
- }
- }
- rule("When player dies")
- {
- event
- {
- Player Died;
- All;
- All;
- }
- actions
- {
- Wait(0.160, Ignore Condition);
- Event Player.Killstreak = 0;
- Event Player.Movespeed_tracker = 100;
- Set Move Speed(Event Player, Event Player.Movespeed_tracker);
- Event Player.Killstreak_Icon_attributes[0] = Null;
- Event Player.Killstreak_Icon_attributes[1] = Color(White);
- Event Player.Random_item_value = 0;
- Event Player.Item_disable = True;
- }
- }
- rule("When game starts remove all items and stuff")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Is Waiting For Players == False;
- }
- actions
- {
- Kill(All Players(All Teams), Null);
- Wait(0.160, Ignore Condition);
- }
- }
- rule("Item enable after joining game")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Event Player.Item_disable == True;
- }
- actions
- {
- Wait(1, Ignore Condition);
- Event Player.Item_disable = False;
- }
- }
- rule("Item enable after spawning")
- {
- event
- {
- Player Died;
- All;
- All;
- }
- conditions
- {
- Event Player.Item_disable == True;
- }
- actions
- {
- Wait(1, Restart When True);
- Event Player.Item_disable = False;
- }
- }
- rule("Item box Attributes -> Location, Availblity, cooldown, visiblity")
- {
- event
- {
- Ongoing - Global;
- }
- }
- rule("Box 1 - Attributes")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Box1 = Empty Array;
- Modify Global Variable(Box1, Append To Array, Vector(0, Global.BoxHeight, 0));
- Modify Global Variable(Box1, Append To Array, True);
- Modify Global Variable(Box1, Append To Array, Global.BoxCooldown);
- Modify Global Variable(Box1, Append To Array, All Players(All Teams));
- }
- }
- rule("Box 1 - Effects")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create Effect(All Players(All Teams), Ring, Color(Aqua), Global.Box1[0], Global.BoxWidth, Visible To Position and Radius);
- Create Effect(Global.Box1[3], Sphere, Color(Aqua), Global.Box1[0], Global.BoxWidth, Visible To Position and Radius);
- }
- }
- rule("Box 1 - Update visiblity when player joins match")
- {
- event
- {
- Player Joined Match;
- All;
- All;
- }
- conditions
- {
- Global.Box1[0] == True;
- }
- actions
- {
- Global.Box1[3] = All Players(All Teams);
- }
- }
- rule("Box 1 - Pickup")
- {
- event
- {
- Ongoing - Each Player;
- All;
- Reinhardt;
- }
- conditions
- {
- Distance Between(Position Of(Event Player), Global.Box1[0]) < 2;
- Event Player.Random_item_value == 0;
- Global.Box1[1] == True;
- Event Player.Item_disable == False;
- }
- actions
- {
- Call Subroutine(Item_generation);
- Global.Box1[3] = Null;
- Global.Box1[1] = False;
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box1[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Aqua), Global.Box1[0], 100);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Green), Event Player, 1);
- }
- }
- rule("Box 1 - Cooldown")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Global.Box1[1] == False;
- }
- actions
- {
- Wait(Global.BoxCooldown, Ignore Condition);
- Global.Box1[1] = True;
- Global.Box1[3] = All Players(All Teams);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box1[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Ring Explosion Sound, Color(White), Global.Box1[0], 100);
- }
- }
- rule("Box 2 - Attributes")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Box2 = Empty Array;
- Modify Global Variable(Box2, Append To Array, Vector(8, Global.BoxHeight, 8));
- Modify Global Variable(Box2, Append To Array, True);
- Modify Global Variable(Box2, Append To Array, Global.BoxCooldown);
- Modify Global Variable(Box2, Append To Array, All Players(All Teams));
- }
- }
- rule("Box 2 - Effects")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create Effect(All Players(All Teams), Ring, Color(Aqua), Global.Box2[0], Global.BoxWidth, Visible To Position and Radius);
- Create Effect(Global.Box2[3], Sphere, Color(Aqua), Global.Box2[0], Global.BoxWidth, Visible To Position and Radius);
- }
- }
- rule("Box 2 - Update visiblity when player joins match")
- {
- event
- {
- Player Joined Match;
- All;
- All;
- }
- conditions
- {
- Global.Box2[0] == True;
- }
- actions
- {
- Global.Box2[3] = All Players(All Teams);
- }
- }
- rule("Box 2 - Pickup")
- {
- event
- {
- Ongoing - Each Player;
- All;
- Reinhardt;
- }
- conditions
- {
- Distance Between(Position Of(Event Player), Global.Box2[0]) < 2;
- Event Player.Random_item_value == 0;
- Global.Box2[1] == True;
- Event Player.Item_disable == False;
- }
- actions
- {
- Call Subroutine(Item_generation);
- Global.Box2[3] = Null;
- Global.Box2[1] = False;
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box2[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Aqua), Global.Box2[0], 100);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Green), Event Player, 1);
- }
- }
- rule("Box 2 - Cooldown")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Global.Box2[1] == False;
- }
- actions
- {
- Wait(Global.BoxCooldown, Ignore Condition);
- Global.Box2[1] = True;
- Global.Box2[3] = All Players(All Teams);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box2[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Ring Explosion Sound, Color(White), Global.Box2[0], 100);
- }
- }
- rule("Box 3 - Attributes")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Box3 = Empty Array;
- Modify Global Variable(Box3, Append To Array, Vector(-8, Global.BoxHeight, -8));
- Modify Global Variable(Box3, Append To Array, True);
- Modify Global Variable(Box3, Append To Array, Global.BoxCooldown);
- Modify Global Variable(Box3, Append To Array, All Players(All Teams));
- }
- }
- rule("Box 3 - Effects")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create Effect(All Players(All Teams), Ring, Color(Aqua), Global.Box3[0], Global.BoxWidth, Visible To Position and Radius);
- Create Effect(Global.Box3[3], Sphere, Color(Aqua), Global.Box3[0], Global.BoxWidth, Visible To Position and Radius);
- }
- }
- rule("Box 3 - Update visiblity when player joins match")
- {
- event
- {
- Player Joined Match;
- All;
- All;
- }
- conditions
- {
- Global.Box3[0] == True;
- }
- actions
- {
- Global.Box3[3] = All Players(All Teams);
- }
- }
- rule("Box 3 - Pickup")
- {
- event
- {
- Ongoing - Each Player;
- All;
- Reinhardt;
- }
- conditions
- {
- Distance Between(Position Of(Event Player), Global.Box3[0]) < 2;
- Event Player.Random_item_value == 0;
- Global.Box3[1] == True;
- Event Player.Item_disable == False;
- }
- actions
- {
- Call Subroutine(Item_generation);
- Global.Box3[3] = Null;
- Global.Box3[1] = False;
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box3[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Aqua), Global.Box3[0], 100);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Green), Event Player, 1);
- }
- }
- rule("Box 3 - Cooldown")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Global.Box3[1] == False;
- }
- actions
- {
- Wait(Global.BoxCooldown, Ignore Condition);
- Global.Box3[1] = True;
- Global.Box3[3] = All Players(All Teams);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box3[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Ring Explosion Sound, Color(White), Global.Box3[0], 100);
- }
- }
- rule("Box 4 - Attributes")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Box4 = Empty Array;
- Modify Global Variable(Box4, Append To Array, Vector(8, Global.BoxHeight, -8));
- Modify Global Variable(Box4, Append To Array, True);
- Modify Global Variable(Box4, Append To Array, Global.BoxCooldown);
- Modify Global Variable(Box4, Append To Array, All Players(All Teams));
- }
- }
- rule("Box 4 - Effects")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create Effect(All Players(All Teams), Ring, Color(Aqua), Global.Box4[0], Global.BoxWidth, Visible To Position and Radius);
- Create Effect(Global.Box4[3], Sphere, Color(Aqua), Global.Box4[0], Global.BoxWidth, Visible To Position and Radius);
- }
- }
- rule("Box 4 - Update visiblity when player joins match")
- {
- event
- {
- Player Joined Match;
- All;
- All;
- }
- conditions
- {
- Global.Box4[0] == True;
- }
- actions
- {
- Global.Box4[3] = All Players(All Teams);
- }
- }
- rule("Box 4 - Pickup")
- {
- event
- {
- Ongoing - Each Player;
- All;
- Reinhardt;
- }
- conditions
- {
- Distance Between(Position Of(Event Player), Global.Box4[0]) < 2;
- Event Player.Random_item_value == 0;
- Global.Box4[1] == True;
- Event Player.Item_disable == False;
- }
- actions
- {
- Call Subroutine(Item_generation);
- Global.Box4[3] = Null;
- Global.Box4[1] = False;
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box4[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Aqua), Global.Box4[0], 100);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Green), Event Player, 1);
- }
- }
- rule("Box 4 - Cooldown")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Global.Box4[1] == False;
- }
- actions
- {
- Wait(Global.BoxCooldown, Ignore Condition);
- Global.Box4[1] = True;
- Global.Box4[3] = All Players(All Teams);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box4[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Ring Explosion Sound, Color(White), Global.Box4[0], 100);
- }
- }
- rule("Box 5 - Attributes")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Box5 = Empty Array;
- Modify Global Variable(Box5, Append To Array, Vector(-8, Global.BoxHeight, 8));
- Modify Global Variable(Box5, Append To Array, True);
- Modify Global Variable(Box5, Append To Array, Global.BoxCooldown);
- Modify Global Variable(Box5, Append To Array, All Players(All Teams));
- }
- }
- rule("Box 5 - Effects")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create Effect(All Players(All Teams), Ring, Color(Aqua), Global.Box5[0], Global.BoxWidth, Visible To Position and Radius);
- Create Effect(Global.Box5[3], Sphere, Color(Aqua), Global.Box5[0], Global.BoxWidth, Visible To Position and Radius);
- }
- }
- rule("Box 5 - Update visiblity when player joins match")
- {
- event
- {
- Player Joined Match;
- All;
- All;
- }
- conditions
- {
- Global.Box5[0] == True;
- }
- actions
- {
- Global.Box5[3] = All Players(All Teams);
- }
- }
- rule("Box 5 - Pickup")
- {
- event
- {
- Ongoing - Each Player;
- All;
- Reinhardt;
- }
- conditions
- {
- Distance Between(Position Of(Event Player), Global.Box5[0]) < 2;
- Event Player.Random_item_value == 0;
- Global.Box5[1] == True;
- Event Player.Item_disable == False;
- }
- actions
- {
- Call Subroutine(Item_generation);
- Global.Box5[3] = Null;
- Global.Box5[1] = False;
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box5[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Aqua), Global.Box5[0], 100);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Green), Event Player, 1);
- }
- }
- rule("Box 5 - Cooldown")
- {
- event
- {
- Ongoing - Global;
- }
- conditions
- {
- Global.Box5[1] == False;
- }
- actions
- {
- Wait(Global.BoxCooldown, Ignore Condition);
- Global.Box5[1] = True;
- Global.Box5[3] = All Players(All Teams);
- Play Effect(All Players(All Teams), Good Pickup Effect, Color(Aqua), Global.Box5[0], Global.BoxWidth);
- Play Effect(All Players(All Teams), Ring Explosion Sound, Color(White), Global.Box5[0], 100);
- }
- }
- rule("Random Item Generation")
- {
- event
- {
- Subroutine;
- Item_generation;
- }
- actions
- {
- Event Player.Random_item_value = Random Integer(Global.Max_item_values[0], Global.Max_item_values[1]);
- }
- }
- rule("Item loot ranges -> Item Loot Range, Jump, Freeze, Shock, Bomb, Ghost, Star")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Global.Max_item_values = Empty Array;
- Modify Global Variable(Max_item_values, Append To Array, 1);
- Modify Global Variable(Max_item_values, Append To Array, 100);
- Global.Jump_values = Empty Array;
- Modify Global Variable(Jump_values, Append To Array, 1);
- Modify Global Variable(Jump_values, Append To Array, 35);
- Global.Freeze_values = Empty Array;
- Modify Global Variable(Freeze_values, Append To Array, 35);
- Modify Global Variable(Freeze_values, Append To Array, 55);
- Global.Shock_values = Empty Array;
- Modify Global Variable(Shock_values, Append To Array, 55);
- Modify Global Variable(Shock_values, Append To Array, 70);
- Global.Bomb_values = Empty Array;
- Modify Global Variable(Bomb_values, Append To Array, 70);
- Modify Global Variable(Bomb_values, Append To Array, 85);
- Global.Ghost_values = Empty Array;
- Modify Global Variable(Ghost_values, Append To Array, 85);
- Modify Global Variable(Ghost_values, Append To Array, 95);
Global.Star_values = Empty Array;
Modify Global Variable(Star_values, Append To Array, 95);
Modify Global Variable(Star_values, Append To Array, 100);
- Global.Rally_values = Empty Array;
- Modify Global Variable(Rally_values, Append To Array, 95);
- Modify Global Variable(Rally_values, Append To Array, 100);
- }
- }
- rule("Item Activiation")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Event Player.Random_item_value > 0;
- Is Button Held(Event Player, Button(Primary Fire)) == True;
- Has Status(Event Player, Frozen) == False;
- Has Status(Event Player, Stunned) == False;
- }
- actions
- {
- Play Effect(Event Player, Buff Impact Sound, Color(White), Event Player, 100);
If(Event Player.Random_item_value >= Global.Star_values[0]);
- If(Event Player.Random_item_value >= Global.Rally_values[0]);
- Call Subroutine(Item_inuse);
Small Message(Event Player, Custom String("Star used"));
Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String("{0} used the star",
- Small Message(Event Player, Custom String("Rally used"));
- Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String("{0} used the rally",
- Event Player));
- Call Subroutine(Star_effect);
- Else If(Event Player.Random_item_value >= Global.Ghost_values[0]);
- Call Subroutine(Item_inuse);
- Small Message(Event Player, Custom String("Ghost used"));
- Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String(
- "{0} turned into a ghost", Event Player));
- Call Subroutine(Ghost_effect);
- Else If(Event Player.Random_item_value >= Global.Bomb_values[0]);
- Call Subroutine(Item_inuse);
- Small Message(Event Player, Custom String("Flame Bomb used"));
- Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String("{0} planted a bomb!",
- Event Player));
- Call Subroutine(Bomb_effect);
- Else If(Event Player.Random_item_value >= Global.Shock_values[0]);
- Call Subroutine(Item_inuse);
- Small Message(Event Player, Custom String("Shock Ball used"));
Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String("{0} went bowling!",
Event Player));
- Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String(
- "{0} sent a shock ball!", Event Player));
- Call Subroutine(Shock_effect);
- Else If(Event Player.Random_item_value >= Global.Freeze_values[0]);
- Call Subroutine(Item_inuse);
- Small Message(Event Player, Custom String("Freeze Wave Used"));
- Small Message(Filtered Array(All Players(All Teams), Current Array Element != Event Player), Custom String(
- "{0} used a Freeze Wave!", Event Player));
- Call Subroutine(Freeze_effect);
- Else If(Event Player.Random_item_value >= Global.Jump_values[0]);
- Call Subroutine(Item_inuse);
- Small Message(Event Player, Custom String("Jump Used"));
- Call Subroutine(Jump_effect);
- End;
- Start Rule(Item_used, Restart Rule);
- }
- }
- rule("Item in use")
- {
- event
- {
- Subroutine;
- Item_inuse;
- }
- actions
- {
- Event Player.Random_item_value = -1;
- }
- }
- rule("Item used")
- {
- event
- {
- Subroutine;
- Item_used;
- }
- actions
- {
- Event Player.Random_item_value = 0;
- }
- }
- rule("ITEM EFFECTS")
- {
- event
- {
- Ongoing - Global;
- }
- }
- rule("Jump Boost")
- {
- event
- {
- Subroutine;
- Jump_effect;
- }
- actions
- {
- Apply Impulse(Event Player, Up, 20, To World, Cancel Contrary Motion);
- Play Effect(All Players(All Teams), Good Explosion, Color(Blue), Event Player, 1);
- }
- }
- rule("Freeze Wave")
- {
- event
- {
- Subroutine;
- Freeze_effect;
- }
- actions
- {
- Play Effect(All Players(All Teams), Ring Explosion, Color(Blue), Event Player, Global.Freeze_radius);
- Event Player.Players_within_freeze = Filtered Array(Players Within Radius(Event Player, Global.Freeze_radius, All Teams, Off),
- Current Array Element != Event Player);
- Set Status(Event Player.Players_within_freeze, Null, Frozen, 2);
- }
- }
- rule("Shock ball attributes -> visibilty, explosion radius, shock duration, active")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Event Player.Shock_attributes = Empty Array;
- Event Player.Shock_attributes[0] = Null;
- Event Player.Shock_attributes[1] = 10;
- Event Player.Shock_attributes[2] = 2;
- Event Player.Shock_attributes[3] = False;
- Create Effect(Event Player.Shock_attributes[0], Sphere, Color(Purple), Event Player.Shock_position, 0.500,
- Visible To Position and Radius);
- }
- }
- rule("Spawn ball")
- {
- event
- {
- Subroutine;
- Shock_effect;
- }
- actions
- {
- Event Player.Shock_attributes[0] = All Players(All Teams);
- Event Player.Shock_attributes[3] = True;
- Event Player.Shock_position = Eye Position(Event Player) + World Vector Of(Vector(0, 0, 1), Event Player, Rotation);
- Event Player.Shock_direction = Facing Direction Of(Event Player);
- Chase Player Variable At Rate(Event Player, Shock_position, Event Player.Shock_position + Event Player.Shock_direction * 100, 20,
- Destination and Rate);
- }
- }
- rule("Ball hits something")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Ray Cast Hit Position(Event Player.Shock_position, Event Player.Shock_position + 0.700 * Event Player.Shock_direction, All Players(
- All Teams), Null, True) != Event Player.Shock_position + 0.700 * Event Player.Shock_direction;
- Event Player.Shock_attributes[3] == True;
- }
- actions
- {
- Stop Chasing Player Variable(Event Player, Shock_position);
- Event Player.Shock_attributes[0] = Null;
- Play Effect(All Players(All Teams), Bad Explosion, Color(Purple), Event Player.Shock_position, Event Player.Shock_attributes[1]);
- Play Effect(All Players(All Teams), Explosion Sound, Color(Purple), Event Player.Shock_position, 100);
- Event Player.Players_within_shock = Filtered Array(Players Within Radius(Event Player.Shock_position,
- Event Player.Shock_attributes[1], All Teams, Off), Current Array Element != Event Player);
- Set Status(Event Player.Players_within_shock, Event Player, Stunned, Event Player.Shock_attributes[2]);
- Event Player.Shock_attributes[3] = False;
- }
- }
- rule("Flame bomb -> Visibility, Location, Countdown, Bomb active, Bomb radius")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Event Player.Bomb_attributes = Empty Array;
- Modify Player Variable(Event Player, Bomb_attributes, Append To Array, Null);
- Modify Player Variable(Event Player, Bomb_attributes, Append To Array, Position Of(Event Player));
- Modify Player Variable(Event Player, Bomb_attributes, Append To Array, 0);
- Modify Player Variable(Event Player, Bomb_attributes, Append To Array, False);
- Modify Player Variable(Event Player, Bomb_attributes, Append To Array, 9);
- Create Effect(Event Player.Bomb_attributes[0], Sphere, Color(Red), Event Player.Bomb_attributes[1], 0.500,
- Visible To Position and Radius);
- Create In-World Text(Event Player.Bomb_attributes[0], Custom String("{0}", Event Player.Bomb_duration),
- Event Player.Bomb_attributes[1], 1.500, Clip Against Surfaces, Visible To Position and String, Color(Orange),
- Default Visibility);
- }
- }
- rule("Flame Bomb - spawn")
- {
- event
- {
- Subroutine;
- Bomb_effect;
- }
- actions
- {
- Event Player.Bomb_attributes[0] = All Players(All Teams);
- Event Player.Bomb_attributes[1] = Position Of(Event Player);
- Event Player.Bomb_attributes[2] = 3;
- Event Player.Bomb_attributes[3] = True;
- }
- }
- rule("Flame bomb - explosion effect")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Event Player.Bomb_attributes[3] == True;
- }
- actions
- {
- Call Subroutine(Item_inuse);
- Call Subroutine(Bomb_countdown);
- Event Player.Players_within_bomb = Filtered Array(Players Within Radius(Event Player.Bomb_attributes[1],
- Event Player.Bomb_attributes[4], All Teams, Off), Current Array Element != Event Player);
- Play Effect(All Players(All Teams), Bad Explosion, Color(Red), Event Player.Bomb_attributes[1], Event Player.Bomb_attributes[4]);
- Play Effect(All Players(All Teams), Ring Explosion, Color(Red), Event Player.Bomb_attributes[1], Event Player.Bomb_attributes[4]);
- Play Effect(All Players(All Teams), Explosion Sound, Color(White), Event Player.Bomb_attributes[1], 100);
- Damage(Event Player.Players_within_bomb, Event Player, 500);
- Set Status(Event Player.Players_within_bomb, Null, Burning, 1);
- Event Player.Bomb_attributes[0] = Null;
- Event Player.Bomb_attributes[2] = 3;
- Event Player.Bomb_attributes[3] = False;
- Call Subroutine(Item_used);
- }
- }
- rule("Flame bomb - countdown")
- {
- event
- {
- Subroutine;
- Bomb_countdown;
- }
- actions
- {
- Event Player.Bomb_duration = Event Player.Bomb_attributes[2];
- Chase Player Variable At Rate(Event Player, Bomb_duration, 0, 1, Destination and Rate);
- Wait(Event Player.Bomb_attributes[2], Ignore Condition);
- Stop Chasing Player Variable(Event Player, Bomb_duration);
- }
- }
- rule("Ghost -> Check, Countdown setter")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Event Player.Ghost_attributes = Empty Array;
- Event Player.Ghost_attributes[0] = False;
- Event Player.Ghost_attributes[1] = 10;
- }
- }
- rule("Ghost - effect")
- {
- event
- {
- Subroutine;
- Ghost_effect;
- }
- actions
- {
- Play Effect(All Players(All Teams), Good Explosion, Color(White), Event Player, 1);
- Set Invisible(Event Player, Enemies);
- Event Player.Ghost_attributes[0] = True;
- Event Player.Killstreak_Icon_attributes[0] = Null;
- Wait(Event Player.Ghost_attributes[1], Ignore Condition);
- Set Invisible(Event Player, None);
- Play Effect(All Players(All Teams), Good Explosion, Color(White), Event Player, 1);
- Event Player.Ghost_attributes[0] = False;
Event Player.Killstreak_Icon_attributes[0] = All Players(All Teams);
- If(Event Player.Killstreak > 0);
- Event Player.Killstreak_Icon_attributes[0] = All Players(All Teams);
- End;
- }
- }
- rule("Ghost - hud")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- Create HUD Text(Filtered Array(Event Player, Event Player.Ghost_attributes[0] == True), Null, Null, Custom String("GHOSTED: {0}",
- Event Player.Ghost_duration), Top, 0, Color(White), Color(White), Color(Yellow), Visible To and String, Default Visibility);
- }
- }
- rule("Ghost - timer")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Event Player.Ghost_attributes[0] == True;
- }
- actions
- {
- Event Player.Ghost_duration = Event Player.Ghost_attributes[1];
- Chase Player Variable At Rate(Event Player, Ghost_duration, 0, 1, Destination and Rate);
- Wait(Event Player.Ghost_attributes[1], Abort When False);
- Stop Chasing Player Variable(Event Player, Ghost_duration);
- }
- }
- rule("Ghost - if died while ghosted")
- {
- event
- {
- Player Died;
- All;
- All;
- }
- conditions
- {
- Event Player.Ghost_attributes[0] == True;
- }
- actions
- {
- Event Player.Ghost_duration = 0;
- Stop Chasing Player Variable(Event Player, Ghost_duration);
- Event Player.Ghost_attributes[0] = False;
- Set Invisible(Event Player, None);
- Play Effect(All Players(All Teams), Good Explosion, Color(White), Event Player, 1);
- }
- }
rule("Star -> Check, countdown setter, visibility, radius")
- rule("Rally -> Check, countdown setter, visibility, radius")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
Event Player.Star_attributes = Empty Array;
Event Player.Star_attributes[0] = False;
Event Player.Star_attributes[1] = 10;
Event Player.Star_attributes[2] = Null;
Event Player.Star_attributes[3] = 1.300;
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(White), Event Player, Event Player.Star_attributes[3],
- Event Player.Rally_attributes = Empty Array;
- Event Player.Rally_attributes[0] = False;
- Event Player.Rally_attributes[1] = 10;
- Event Player.Rally_attributes[2] = Null;
- Event Player.Rally_attributes[3] = 1.300;
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(White), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(White), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(White), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(White), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(White), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(White), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(White), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
Create Effect(Event Player.Star_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Star_attributes[3],
- Create Effect(Event Player.Rally_attributes[2], Sparkles, Color(Yellow), Event Player, Event Player.Rally_attributes[3],
- Visible To Position and Radius);
- }
- }
rule("Star - effect")
- rule("Rally - effect")
- {
- event
- {
- Subroutine;
- Star_effect;
- }
- actions
- {
Event Player.Star_attributes[0] = True;
Event Player.Star_attributes[2] = All Players(All Teams);
Set Status(Event Player, Null, Phased Out, Event Player.Star_attributes[1]);
Set Status(Event Player, Null, Invincible, Event Player.Star_attributes[1]);
Wait(Event Player.Star_attributes[1], Ignore Condition);
Event Player.Star_attributes[0] = False;
Event Player.Star_attributes[2] = Null;
- Event Player.Rally_attributes[0] = True;
- Event Player.Rally_attributes[2] = All Players(All Teams);
- Set Status(Event Player, Null, Invincible, Event Player.Rally_attributes[1]);
- Wait(Event Player.Rally_attributes[1], Ignore Condition);
- Event Player.Rally_attributes[0] = False;
- Event Player.Rally_attributes[2] = Null;
- }
- }
rule("Star - hud")
- rule("Rally - hud")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
Create HUD Text(Filtered Array(Event Player, Event Player.Star_attributes[0] == True), Null, Null, Custom String("STAR POWER: {0}",
Event Player.Star_duration), Top, 0, Color(White), Color(White), Color(Yellow), Visible To and String, Default Visibility);
- Create HUD Text(Filtered Array(Event Player, Event Player.Rally_attributes[0] == True), Null, Null, Custom String(
- "RALLY POWER: {0}", Event Player.Rally_duration), Top, 0, Color(White), Color(White), Color(Yellow), Visible To and String,
- Default Visibility);
- }
- }
rule("Star - timer")
- rule("Rally - timer")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
Event Player.Star_attributes[0] == True;
- Event Player.Rally_attributes[0] == True;
- }
- actions
- {
- Event Player.Rally_duration = Event Player.Rally_attributes[1];
- Chase Player Variable At Rate(Event Player, Rally_duration, 0, 1, Destination and Rate);
- Wait(Event Player.Rally_attributes[1], Ignore Condition);
- Stop Chasing Player Variable(Event Player, Rally_duration);
- }
- }
- rule("Rally - if died while Rallied")
- {
- event
- {
- Player Died;
- All;
- All;
- }
- conditions
- {
- Event Player.Rally_attributes[0] == True;
- }
- actions
- {
Event Player.Star_duration = Event Player.Star_attributes[1];
Chase Player Variable At Rate(Event Player, Star_duration, 0, 1, Destination and Rate);
Wait(Event Player.Star_attributes[1], Ignore Condition);
Stop Chasing Player Variable(Event Player, Star_duration);
- Event Player.Rally_duration = 0;
- Stop Chasing Player Variable(Event Player, Rally_duration);
- Event Player.Rally_attributes[0] = False;
- Event Player.Rally_attributes[2] = Null;
- Clear Status(Event Player, Invincible);
- Play Effect(All Players(All Teams), Good Explosion, Color(White), Event Player, 1);
- }
- }
- disabled rule("DEVELOPER TOOLS")
- {
- event
- {
- Ongoing - Global;
- }
- actions
- {
- Create HUD Text(Host Player, Custom String("DEVELOPER TOOLS ENABLED"), Null, Null, Top, 0, Color(White), Color(White), Color(
- White), Visible To and String, Default Visibility);
- Create HUD Text(All Players(All Teams), Null, Null, Custom String("Press R for dummy bot, use melee button to cycle items."), Top,
- 1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
- }
- }
rule("Dummy bot spawn")
- disabled rule("Dummy rein spawn")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Is Button Held(Event Player, Button(Reload)) == True;
- Global.Bot_id == 0;
- }
- actions
- {
Create Dummy Bot(Hero(Bastion), All Teams, -1, Host Player, Host Player);
- Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Host Player, Host Player);
- Global.Bot_id = Last Created Entity;
- }
- }
- disabled rule("Dummy rein Charge")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Is Button Held(Event Player, Button(Reload)) == True;
- }
- actions
- {
- Press Button(Players On Hero(Hero(Reinhardt), All Teams), Button(Ability 1));
- }
- }
- disabled rule("Cycle item")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- conditions
- {
- Is Button Held(Host Player, Button(Melee)) == True;
- }
- actions
- {
- If(Host Player.Random_item_value == 0);
- Wait(0.250, Ignore Condition);
- Global.Bot_id.Random_item_value = Global.Jump_values[0];
- Else If(Host Player.Random_item_value == Global.Jump_values[0]);
- Wait(0.250, Ignore Condition);
- Host Player.Random_item_value = Global.Freeze_values[0];
- Else If(Host Player.Random_item_value == Global.Freeze_values[0]);
- Wait(0.250, Ignore Condition);
- Host Player.Random_item_value = Global.Bomb_values[0];
- Else If(Host Player.Random_item_value == Global.Bomb_values[0]);
- Wait(0.250, Ignore Condition);
- Host Player.Random_item_value = Global.Ghost_values[0];
- Else If(Host Player.Random_item_value == Global.Ghost_values[0]);
- Wait(0.250, Ignore Condition);
Host Player.Random_item_value = Global.Star_values[0];
Else If(Host Player.Random_item_value == Global.Star_values[0]);
- Host Player.Random_item_value = Global.Rally_values[0];
- Else If(Host Player.Random_item_value == Global.Rally_values[0]);
- Wait(0.250, Ignore Condition);
- Host Player.Random_item_value = Global.Jump_values[0];
- End;
- }
- }