Create
Return to post

Comparing difference between and

View raw
  • settings
  • {
  • main
  • {
  • Description: "Job Simulator (King's Row) - Created by MrSharkiee -- Modified By: Kleator & Mercy"
  • Description: "Job Simulator (King's Row) - Created by MrSharkiee -- Modified By: Kleator & Mercy (v. 1.0.0)"
  • }
  • lobby
  • {
  • Allow Players Who Are In Queue: Yes
  • Map Rotation: Paused
  • Match Voice Chat: Enabled
  • Max Spectators: 3
  • Return To Lobby: Never
  • Use Experimental Update If Available: Yes
  • }
  • modes
  • {
  • Deathmatch
  • {
  • Game Length In Minutes: 15
  • enabled maps
  • {
  • King's Row Winter
  • }
  • }
  • General
  • {
  • Game Mode Start: Manual
  • Hero Limit: Off
  • Spawn Health Packs: Disabled
  • }
  • }
  • heroes
  • {
  • General
  • {
  • Ability Cooldown Time: 58%
  • Ammunition Clip Size Scalar: 480%
  • Movement Speed: 115%
  • Ultimate Duration: 127%
  • Ultimate Generation: 111%
  • Ultimate Generation - Combat: 182%
  • Ultimate Generation - Passive: 111%
  • Baptiste
  • {
  • Regenerative Burst: Off
  • }
  • Bastion
  • {
  • Self-Repair: Off
  • }
  • D.Va
  • {
  • Boosters Knockback Scalar: 150%
  • }
  • Echo
  • {
  • Ammunition Clip Size Scalar: 130%
  • Flight Cooldown Time: 69%
  • Focusing Beam Cooldown Time: 122%
  • Jump Vertical Speed: 120%
  • Sticky Bombs Cooldown Time: 111%
  • Ultimate Generation - Combat Duplicate: 108%
  • Ultimate Generation - Passive Duplicate: 111%
  • Ultimate Generation Duplicate: 114%
  • }
  • Lúcio
  • {
  • Crossfade: Off
  • }
  • Mei
  • {
  • Healing Received: 10%
  • }
  • Mercy
  • {
  • Ammunition Clip Size Scalar: 106%
  • Healing Dealt: 30%
  • Healing Received: 30%
  • Ultimate Generation - Combat Valkyrie: 109%
  • Ultimate Generation - Passive Valkyrie: 108%
  • Ultimate Generation Valkyrie: 115%
  • }
  • Moira
  • {
  • Biotic Orb Max Healing Scalar: 10%
  • Healing Dealt: 10%
  • Healing Received: 10%
  • }
  • Roadhog
  • {
  • Take a Breather: Off
  • }
  • Soldier: 76
  • {
  • Biotic Field: Off
  • }
  • }
  • }
  • }
  • variables
  • {
  • global:
  • 0: Days
  • 1: isTarget
  • 2: Martini_Stock
  • 3: BloodyMary_Stock
  • 4: SlowMotion
  • 5: Bought_BloodyMary
  • 6: Bought_Martini
  • 7: Bought_SpeedUpgrade
  • 8: Bought_JumpUpgrade
  • 9: Bought_PortableFreezer
  • 10: Bought_StunGun
  • 11: Bought_Movie
  • 12: Criminal_1
  • 13: Criminal_1_Kill_Count
  • 26: SlotPermissionDenied
  • player:
  • 0: Money
  • 1: Players_Killed
  • 2: isCriminal
  • 3: hasJob
  • 4: Bartender
  • 5: Mechanic
  • 6: Cinema_Attendant
  • 7: Toy_Factory_Worker
  • 8: Doctor
  • 9: Researcher
  • 10: Officer
  • 11: Mafia
  • 12: isDrinking
  • 13: hasToy
  • 14: hasStunGun
  • 15: hasPortableFreezer
  • 16: hasMoveSpeedUpgarde
  • 17: hasJumpUpgrade
  • 18: hasInvisibility
  • 19: hasSlowMotion
  • 21: Bartender_At_Work
  • 22: Mechanic_At_Work
  • 23: Cinema_Attendant_At_Work
  • 24: Toy_Factory_Worker_At_Work
  • 25: Researcher_At_Work
  • 26: Doctor_Is_Healing
  • 27: isJailed
  • 28: inTutorial
  • 29: nextPaycheckTime
  • 30: IsModerator
  • 32: Cashier
  • 33: Cashier_At_Work
  • 34: Brewer
  • 35: Brewer_At_Work
  • 36: LastPosition
  • 37: Alcohollevel
  • }
  • disabled rule("- Mady By: MrSharkiee - Modified By: Mercy -")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Spawn")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Event Player.isCriminal = False;
  • Disable Built-In Game Mode Scoring;
  • Create HUD Text(Event Player, String("{0} {1}", Custom String("Money: $"), Event Player.Money), Null, Null, Left, 1, Green, Green,
  • Green, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, String("{0}: {1}", Custom String("Players Murdered"), Event Player.Players_Killed), Null, Null, Left,
  • 3, Red, Red, Red, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, String("{0}: {1}", Custom String("Criminal Status"), Event Player.isCriminal), Left, 4,
  • Red, White, Orange, Visible To and String, Default Visibility);
  • Event Player.Money += 30;
  • Set Healing Dealt(Event Player, 0);
  • }
  • }
  • rule("Update Days")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.Days += 1;
  • Wait(60, Ignore Condition);
  • Loop;
  • }
  • }
  • rule("Global HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(All Players(All Teams), Null, Null, Custom String("Press Interact to use teleporter pads"), Right, 1, Team 1,
  • White, White, Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Null, Custom String("Go to tutorial (located at point A) for more information"),
  • Right, 1.500, White, White, Team 1, Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), String("{0}: {1}", Custom String("Day"), Global.Days), Null, Null, Left, 2, Orange, Orange,
  • Orange, Visible To and String, Default Visibility);
  • }
  • }
  • rule("Define Criminal")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Players_Killed >= 1;
  • }
  • actions
  • {
  • Event Player.isCriminal = True;
  • disabled If(Event Player.Players_Killed > Global.P);
  • disabled Skip If(Event Player[Global.Criminal_1], 3);
  • disabled If(Global.Criminal_1 != 0);
  • disabled Global.Criminal_1_Kill_Count = Global.Criminal_1;
  • disabled Global.Q = Global.P;
  • disabled End;
  • disabled Global.Criminal_1 = Event Player;
  • disabled Global.P = Event Player.Players_Killed;
  • disabled Else If(Event Player.Players_Killed > Global.Q);
  • disabled Skip If(Global.Criminal_1 == Event Player, 4);
  • disabled Skip If(Global.Criminal_1_Kill_Count == Event Player, 3);
  • disabled If(Global.Criminal_1_Kill_Count != 0);
  • disabled Global.O = Global.Criminal_1_Kill_Count;
  • disabled Global.R = Global.Q;
  • disabled End;
  • disabled Global.Criminal_1_Kill_Count = Event Player;
  • disabled Global.Q = Event Player.Players_Killed;
  • disabled Else If(Event Player.Players_Killed > Global.R);
  • disabled Skip If(Global.Criminal_1 == Event Player, 2);
  • disabled Skip If(Global.Criminal_1_Kill_Count == Event Player, 1);
  • disabled If((Global.Criminal_1 || Global.Criminal_1_Kill_Count) != Event Player);
  • disabled Global.O = Event Player;
  • disabled Global.R = Event Player.Players_Killed;
  • disabled End;
  • disabled End;
  • Global.Criminal_1 = Event Player;
  • Global.Criminal_1_Kill_Count = Event Player.Players_Killed;
  • }
  • }
  • rule("Define Player Kill")
  • {
  • event
  • {
  • Player Dealt Final Blow;
  • All;
  • All;
  • }
  • actions
  • {
  • Event Player.Players_Killed += 1;
  • }
  • }
  • rule("Prevent Negative Money")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Money <= -1;
  • }
  • actions
  • {
  • Event Player.Money = 0;
  • }
  • }
  • rule("Teleport Effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-99.426, 0, -8.559), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Toy Factory"), Vector(-99.426, 2.278, -8.559), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-103.271, 0, -7.946), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Exit Toy Factory"), Vector(-103.118, 2.126, -7.969), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-33.983, 0, -24.766), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Town Square"), Vector(-33.983, 1.109, -24.766), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-31.247, 0, -24.196), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Exit Town Square"), Vector(-31.247, 1.134, -24.196), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-4.009, 0, 17.518), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Tower"), Vector(-4.009, 1.320, 17.518), 1, Clip Against Surfaces,
  • Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-3.096, 0, 21.511), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Exit Tower"), Vector(-3.096, 2.398, 21.511), 1, Clip Against Surfaces,
  • Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-0.143, 0, -38.312), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Club Room"), Vector(-0.143, 1.374, -38.312), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(2.839, 0, -38.788), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Plaza"), Vector(2.839, 1.374, -38.788), 1, Clip Against Surfaces,
  • Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-97.833, -2.247, -47.466), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Underground"), Vector(-97.833, -1.247, -47.466), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-100.229, -2.855, -48.646), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Enter Plaza"), Vector(-100.229, -1.855, -48.646), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Teleport To Factory (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-99.074, 2.294, -8.539)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-105.938, 2.299, -8.670));
  • Small Message(Event Player, Custom String("Entering Toy Factory"));
  • }
  • }
  • rule("Teleport Out of Factory (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-103.271, 2.120, -7.946)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-96.655, 2.392, -9.016));
  • Small Message(Event Player, Custom String("Entering Plaza"));
  • }
  • }
  • rule("Teleport To Square (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-33.983, 1.109, -24.766)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-26.983, 1.109, -24.766));
  • Small Message(Event Player, Custom String("Entering Town Square"));
  • }
  • }
  • rule("Teleport Out Of Square (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-31.247, 1.134, -24.196)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-36.247, 1.134, -24.196));
  • Small Message(Event Player, Custom String("Entering Plaza"));
  • }
  • }
  • rule("Teleport To Tower (Square)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-4.009, 1.320, 17.518)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-1.087, 2.252, 30.457));
  • Small Message(Event Player, Custom String("Entering Tower"));
  • }
  • }
  • rule("Teleport Out of Tower (Square)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-3.096, 2.398, 21.511)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-3.096, 2.398, 15.511));
  • Small Message(Event Player, Custom String("Entering Square"));
  • }
  • }
  • rule("Teleport To Club Room (Square)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-0.143, 1.374, -38.312)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(7.261, 0.348, -39.166));
  • Small Message(Event Player, Custom String("Entering Club Room"));
  • Set Status(Event Player, Null, Invincible, 9999);
  • }
  • }
  • rule("Teleport Out of Club Room (Square)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(2.839, 1.046, -38.788)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-3.603, 1.414, -37.747));
  • Small Message(Event Player, Custom String("Entering Square"));
  • Clear Status(Event Player, Invincible);
  • }
  • }
  • rule("Teleport To Underground (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-97.833, -1.247, -47.466)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-102.139, -2.248, -49.421));
  • Small Message(Event Player, Custom String("Entering Underground"));
  • }
  • }
  • rule("Teleport Out of Underground (Plaza)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-100.229, -1.855, -48.646)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-95.159, -1.247, -46.254));
  • Small Message(Event Player, Custom String("Entering Plaza"));
  • }
  • }
  • rule("Apply Job Effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sparkles, Aqua, Vector(-74.004, 1.748, -34.131), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Bartender"), Vector(-74.004, 1.748, -34.131), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(-61.741, 1.252, 7.771), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Mechanic"), Vector(-61.741, 1.252, 7.771), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(16.160, 2.251, 1.863), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Cinema Attendant"), Vector(16.160, 2.251, 1.863), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(-155.389, -1.623, 28.843), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Toy Factory Worker"), Vector(-155.389, -1.623, 28.843), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(-12.684, 1.513, 2.355), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Doctor"), Vector(-12.684, 1.513, 2.355), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(5.718, 2.248, 39.216), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Researcher"), Vector(5.718, 2.248, 39.216), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(-17.885, 3.235, -50.743), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Officer"), Vector(-17.885, 3.235, -50.743), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Orange, Vector(-112.839, -3.151, -49.431), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Apply for Mafia"), Vector(-112.839, -3.151, -49.431), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • disabled Create Effect(All Players(All Teams), Sparkles, Aqua, Vector(-19.973, 2.698, -14.937), 0.500, Visible To Position and Radius);
  • disabled Create In-World Text(All Players(All Teams), Custom String("Apply for Cashier"), Vector(-19.973, 2.698, -14.937), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • disabled Create Effect(All Players(All Teams), Sparkles, Aqua, Vector(-83.808, 7.698, -13.878), 0.500, Visible To Position and Radius);
  • disabled Create In-World Text(All Players(All Teams), Custom String("Apply for Brewer"), Vector(-83.802, 7.698, -13.911), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Apply as Bartender")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-74.004, 1.748, -34.131)) <= 1.900;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Create In-World Text(All Players(All Teams), Custom String("Bartender ♥‿♥"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Purple, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Bartender!"));
  • Event Player.Bartender = True;
  • Wait(1.420, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • }
  • }
  • rule("Apply as Mechanic")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-61.741, 1.252, 7.771)) <= 1.900;
  • Event Player.hasJob == False;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.450, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Mechanic (ง'̀-'́)ง"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Lime Green, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Mechanic"));
  • Event Player.Mechanic = True;
  • }
  • }
  • rule("Apply as Cinema Attendant")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(16.066, 2.249, 1.608)) <= 1.900;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Cinema Attendant ~(˘▾˘~)"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Yellow, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Cinema Attendant"));
  • Event Player.Cinema_Attendant = True;
  • }
  • }
  • rule("Apply as Factory Worker")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-155.389, -1.623, 28.843)) <= 1.900;
  • Event Player.hasJob == False;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Toy Factory Worker ☜(⌒▽⌒)☞"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Aqua, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Toy Factory Worker"));
  • Event Player.Toy_Factory_Worker = True;
  • }
  • }
  • rule("Apply as Doctor")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-12.684, 1.513, 2.355)) <= 1.900;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Doctor ┬─┬ノ( º _ ºノ)"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Sky Blue, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Doctor"));
  • Event Player.Doctor = True;
  • }
  • }
  • rule("Apply as Researcher")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(5.718, 2.248, 39.216)) <= 1.900;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Researcher (╯°□°)╯︵ ┻━┻"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Orange, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Researcher"));
  • Event Player.Researcher = True;
  • }
  • }
  • rule("Apply as Officer")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-17.885, 3.235, -50.743)) <= 1.900;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Officer ヾ(⌐■_■)ノ♪"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Blue, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as an Officer"));
  • Event Player.Officer = True;
  • }
  • }
  • rule("Apply as Mafia")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-112.839, -3.151, -49.431)) <= 1.900;
  • Event Player.hasJob == False;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Mafia (ὸ_ό)"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Red, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Mafia"));
  • Event Player.Mafia = True;
  • }
  • }
  • rule("Quit Job Effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-78.376, 1.748, -38.569), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Bartender"), Vector(-78.376, 1.748, -38.569), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-54.732, 1.251, -2.422), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Mechanic"), Vector(-54.686, 1.250, -2.398), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(17.790, 3.235, -10.427), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Cinema Attendant"), Vector(17.790, 3.235, -10.427), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-156.631, -1.630, 21.798), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Toy Factory Worker"), Vector(-156.631, -1.630, 21.798), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-21.999, 1.516, 9.527), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Doctor"), Vector(-21.999, 1.516, 9.527), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-2.130, 2.250, 40.792), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Researcher"), Vector(-2.130, 2.250, 40.792), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-24.761, 3.235, -57.708), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Officer"), Vector(-24.761, 3.235, -57.708), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sparkles, Red, Vector(-110.525, -3.152, -56.544), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Quit Job as Mafia"), Vector(-110.525, -3.152, -56.544), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • disabled Create Effect(All Players(All Teams), Sparkles, Red, Vector(-19.457, 2.699, -17.924), 0.500, Visible To Position and Radius);
  • disabled Create In-World Text(All Players(All Teams), Custom String("Quit Job as Cashier"), Vector(-19.457, 2.699, -17.924), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • disabled Create Effect(All Players(All Teams), Sparkles, Red, Vector(-77.142, 7.698, -12.475), 0.500, Visible To Position and Radius);
  • disabled Create In-World Text(All Players(All Teams), Custom String("Quit Job as Brewer"), Vector(-77.142, 7.698, -12.475), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Quit Bartender")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-78.376, 1.748, -38.569)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Bartender == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Disallow Button(Event Player, Interact);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Bartender"));
  • Event Player.Bartender = False;
  • Event Player.Bartender_At_Work = False;
  • Teleport(Event Player, Vector(-67.042, 1.131, -30.136));
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Secondary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Set Damage Dealt(Event Player, 100);
  • Set Status(Event Player, Null, Invincible, 0);
  • Destroy HUD Text(Last Text ID);
  • Wait(1.250, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • }
  • }
  • rule("Quit Mechanic")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-54.732, 1.251, -2.422)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Mechanic == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Mechanic"));
  • Event Player.Mechanic = False;
  • Teleport(Event Player, Vector(-68.946, 1.197, 1.090));
  • Event Player.Mechanic_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Secondary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Set Damage Dealt(Event Player, 100);
  • Set Status(Event Player, Null, Invincible, 0);
  • }
  • }
  • rule("Quit as Cinema Attendant")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(17.790, 3.235, -10.427)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Cinema_Attendant == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Cinema Attendant"));
  • Event Player.Cinema_Attendant = False;
  • Teleport(Event Player, Vector(8.419, 2.251, -4.575));
  • }
  • }
  • rule("Quit as Factory Worker")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-156.631, -1.630, 21.798)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Toy_Factory_Worker == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Toy Factory Worker"));
  • Event Player.Toy_Factory_Worker = False;
  • Teleport(Event Player, Vector(-148.457, -1.605, 24.199));
  • }
  • }
  • rule("Quit as Doctor")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-21.999, 1.516, 9.527)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Doctor == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Doctor"));
  • Event Player.Doctor = False;
  • Teleport(Event Player, Vector(-10.186, 1.340, 6.973));
  • }
  • }
  • rule("Quit as Researcher")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-2.130, 2.250, 40.792)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Researcher == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Researcher"));
  • Event Player.Researcher = False;
  • Teleport(Event Player, Vector(0.324, 2.250, 39.912));
  • }
  • }
  • rule("Quit as Officer")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-24.777, 3.235, -57.908)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Officer == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as an Officer"));
  • Event Player.Officer = False;
  • Teleport(Event Player, Vector(-26.278, 1.940, -42.116));
  • }
  • }
  • rule("Quit as Mafia")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-110.525, -3.152, -56.544)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Mafia == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Destroy HUD Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Mafia"));
  • Event Player.Mafia = False;
  • Teleport(Event Player, Vector(-106.281, -2.246, -51.455));
  • }
  • }
  • rule("At Work Effects")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(Event Player.Mechanic_At_Work, Light Shaft, White, Vector(-56.588, 0, 6.046), 8, Visible To Position and Radius);
  • Create Effect(Event Player.Toy_Factory_Worker_At_Work, Light Shaft, White, Vector(-145.254, -5, 23.686), 8,
  • Visible To Position and Radius);
  • Create Effect(Event Player.Cinema_Attendant_At_Work, Light Shaft, White, Vector(16.373, 0, -2.335), 1.500,
  • Visible To Position and Radius);
  • Create Effect(Event Player.Researcher_At_Work, Light Shaft, White, Vector(4.073, 0, 54.623), 7, Visible To Position and Radius);
  • }
  • }
  • rule("Go to Work (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Bartender;
  • Event Player.Bartender_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Event Player.Bartender_At_Work = True;
  • Teleport(Event Player, Vector(-77.058, 1.749, -36.019));
  • Big Message(Event Player, Custom String("You're now at work as a Bartender"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • rule("Paycheck (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Bartender == True;
  • Event Player.Bartender_At_Work == True;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 8;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Working (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player.Bartender_At_Work == True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(-68.729, 1.786, -30.987));
  • Event Player.Bartender_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • rule("Go to Work (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Mechanic;
  • Event Player.Mechanic_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(-56.315, 1.248, 6.403));
  • Event Player.Mechanic_At_Work = True;
  • Big Message(Event Player, Custom String("You're now at work as a Mechanic"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • rule("Paycheck (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Mechanic_At_Work == True;
  • Event Player.Mechanic == True;
  • Distance Between(Event Player, Vector(-56.588, 1.250, 6.046)) <= 8;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 8;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Working (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Mechanic_At_Work == True;
  • Distance Between(Event Player, Vector(-56.588, 1.250, 6.046)) >= 8;
  • }
  • actions
  • {
  • Event Player.Mechanic_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Small Message(Event Player, Custom String("You stopped working at King's Row Auto Repair"));
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • rule("Go to Work (Toy Factory Worker)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Toy_Factory_Worker;
  • Event Player.Toy_Factory_Worker_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(-145.254, -1.607, 23.686));
  • Event Player.Toy_Factory_Worker_At_Work = True;
  • Big Message(Event Player, Custom String("You're now at work as a Toy Factory Worker"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • rule("Paycheck (Toy Factory Worker)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Toy_Factory_Worker == True;
  • Event Player.Toy_Factory_Worker_At_Work == True;
  • Distance Between(Event Player, Vector(-145.254, -1.607, 23.686)) <= 8;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 6.500;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Working (Toy Factory Worker)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Toy_Factory_Worker_At_Work == True;
  • Distance Between(Event Player, Vector(-145.254, -1.607, 23.686)) >= 8;
  • }
  • actions
  • {
  • Event Player.Toy_Factory_Worker_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Small Message(Event Player, Custom String("You stopped working at Claus's Toy Factory"));
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • rule("Go to Work (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Cinema_Attendant;
  • Event Player.Cinema_Attendant_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(16.373, 2.248, -2.335));
  • Event Player.Cinema_Attendant_At_Work = True;
  • Big Message(Event Player, Custom String("You're now at work as a Cinema Attendant"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • rule("Paycheck (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Cinema_Attendant == True;
  • Event Player.Cinema_Attendant_At_Work == True;
  • Distance Between(Event Player, Vector(16.373, 2.248, -2.335)) <= 1.500;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 6;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Working (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Cinema_Attendant_At_Work == True;
  • Distance Between(Event Player, Vector(16.373, 2.248, -2.335)) >= 1.500;
  • }
  • actions
  • {
  • Event Player.Cinema_Attendant_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Small Message(Event Player, Custom String("You stopped working at The Meridian"));
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • rule("Go to Work (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Researcher;
  • Event Player.Researcher_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(4.073, 3.252, 54.623));
  • Event Player.Researcher_At_Work = True;
  • Big Message(Event Player, Custom String("You're now at work as a Researcher"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 180;
  • }
  • }
  • rule("Paycheck (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Researcher_At_Work == True;
  • Event Player.Researcher == True;
  • Distance Between(Event Player, Vector(4.073, 3.252, 54.623)) <= 7;
  • }
  • actions
  • {
  • Wait(180, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 35;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Working (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Researcher_At_Work == True;
  • Distance Between(Event Player, Vector(4.073, 3.252, 54.623)) >= 7;
  • }
  • actions
  • {
  • Event Player.Researcher_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Small Message(Event Player, Custom String("You stopped working at your Research Station"));
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • rule("Always Working + Paycheck (Doctor)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Closest Player To(Event Player, All Teams)) <= 3;
  • Is Button Held(Event Player, Crouch) == True;
  • Event Player == Event Player.Doctor;
  • Health(Player Closest To Reticle(Event Player, All Teams)) < Max Health(Player Closest To Reticle(Event Player, All Teams));
  • Is Alive(Player Closest To Reticle(Event Player, All Teams)) == True;
  • }
  • actions
  • {
  • Heal(Player Closest To Reticle(Event Player, All Teams), Event Player, 15);
  • Event Player.Money += 0.150;
  • Event Player.Doctor_Is_Healing = True;
  • Abort If Condition Is False;
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Paycheck (Doctor)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Doctor == True;
  • }
  • actions
  • {
  • Wait(120, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 12;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Stop Healing (Doctor)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == False;
  • Event Player.Doctor == True;
  • }
  • actions
  • {
  • Event Player.Doctor_Is_Healing = False;
  • }
  • }
  • rule("IsHealing Effect (Doctor)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Doctor_Is_Healing == True;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Good Aura, Yellow, Event Player, 0.100, Visible To Position and Radius);
  • Small Message(Event Player, String("{0} {1}", Custom String("You Are Now Healing"), Player Closest To Reticle(Event Player,
  • All Teams)));
  • }
  • }
  • rule("!IsHealing Effect (Doctor)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Doctor_Is_Healing == False;
  • }
  • actions
  • {
  • Destroy Effect(Last Created Entity);
  • }
  • }
  • rule("Always Working (Officer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Player Closest To Reticle(Event Player, All Teams)) <= 5;
  • Player Closest To Reticle(Event Player, All Teams).Players_Killed >= 1;
  • Event Player == Event Player.Officer;
  • Is Button Held(Event Player, Interact) == True;
  • Is Alive(Event Player) == True;
  • Is Alive(Player Closest To Reticle(Event Player, All Teams)) == True;
  • }
  • actions
  • {
  • Player Closest To Reticle(Event Player, All Teams).isJailed = True;
  • Event Player.Money += 10;
  • Set Status(Event Player, Player Closest To Reticle(Event Player, All Teams), Stunned, 1);
  • }
  • }
  • rule("Paycheck (Officer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Officer == True;
  • }
  • actions
  • {
  • Wait(180, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 15;
  • Loop If Condition Is True;
  • }
  • }
  • rule("isJailed (Officer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.isJailed == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-117.944, -3.152, -26.945));
  • Event Player.Bartender_At_Work = False;
  • Event Player.Mechanic_At_Work = False;
  • Event Player.Cinema_Attendant_At_Work = False;
  • Event Player.Toy_Factory_Worker_At_Work = False;
  • Event Player.Researcher_At_Work = False;
  • Global.Criminal_1 = 0;
  • Global.Criminal_1_Kill_Count = 0;
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Secondary Fire);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Jump);
  • Set Damage Dealt(Event Player, 0);
  • Set Status(Event Player, Null, Invincible, 45);
  • Big Message(All Players(All Teams), String("{0} {1}", Event Player, String("{0} {1} {2}", Custom String(
  • "Has Been Imprisoned For "), Event Player.Players_Killed * 20, Custom String(" secons!"))));
  • Wait(20 * Event Player.Players_Killed, Ignore Condition);
  • Teleport(Event Player, Vector(-19.579, 1.124, -35.356));
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Secondary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Jump);
  • Set Damage Dealt(Event Player, 100);
  • Big Message(Event Player, String("{0} {1}", Custom String("You have served your time and lost $"), Min(25, Event Player.Money)));
  • Event Player.Money -= Min(25, Event Player.Money);
  • Event Player.isCriminal = False;
  • Event Player.Players_Killed = 0;
  • Event Player.isJailed = False;
  • Wait(5, Ignore Condition);
  • Allow Button(Event Player, Ability 2);
  • }
  • }
  • rule("Wanted List (Officer)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create In-World Text(All Players(All Teams), Custom String("Last Known Murderer"), Vector(-13.140, 3.250, -59.849), 1.250,
  • Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • Create In-World Text(All Players(All Teams), String("{0} : {1} : {2}", Global.Criminal_1, Custom String("Players Killed "),
  • Global.Criminal_1_Kill_Count), Vector(-13.140, 3, -59.849), 1, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • }
  • }
  • rule("Complete Task (Mafia)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Mafia == True;
  • Is Button Held(Event Player, Interact) == True;
  • Player Closest To Reticle(Event Player, All Teams) == Global.isTarget;
  • Distance Between(Event Player, Player Closest To Reticle(Event Player, All Teams)) <= 3;
  • Is Alive(Event Player) == True;
  • Is Alive(Player Closest To Reticle(Event Player, All Teams)) == True;
  • Global.isTarget != 0;
  • }
  • actions
  • {
  • Event Player.LastPosition[0] = Position Of(Event Player);
  • Global.isTarget = Null;
  • Big Message(Player Closest To Reticle(Event Player, All Teams), Custom String("You have been mugged and knocked out!"));
  • Teleport(Player Closest To Reticle(Event Player, All Teams), Vector(-104.439, -3.151, -66.853));
  • Set Status(Player Closest To Reticle(Event Player, All Teams), Null, Invincible, 15);
  • Set Status(Player Closest To Reticle(Event Player, All Teams), Null, Knocked Down, 15);
  • Set Status(Player Closest To Reticle(Event Player, All Teams), Null, Unkillable, 15);
  • Event Player.Money += 25;
  • Wait(15, Ignore Condition);
  • Teleport(Event Player, Event Player.LastPosition[0]);
  • }
  • }
  • rule("Random Pick (Mafia)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.isTarget = Random Value In Array(All Players(All Teams));
  • Wait(120, Ignore Condition);
  • Loop;
  • }
  • }
  • rule("Picked Target (Mafia)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create In-World Text(All Players(All Teams), String("{0} {1}", Custom String("Target: "), Global.isTarget), Vector(-102.370,
  • -2.247, -56.184), 1.500, Clip Against Surfaces, Visible To Position and String, Lime Green, Default Visibility);
  • }
  • }
  • rule("Initialize All Stock Items")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.Martini_Stock = 5;
  • Global.BloodyMary_Stock = 5;
  • }
  • }
  • rule("Drinks Effect (Bartender)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Purple, Vector(-68.305, 1.500, -37.282), 0.300, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Martini $5"), Vector(-68.305, 1.600, -37.282), 1,
  • Clip Against Surfaces, Visible To Position and String, Purple, Default Visibility);
  • Create Effect(All Players(All Teams), Sphere, Red, Vector(-72.057, 1.500, -27.822), 0.300, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Bloody Mary $5"), Vector(-72.057, 1.600, -27.822), 1,
  • Clip Against Surfaces, Visible To Position and String, Red, Default Visibility);
  • Create Effect(All Players(All Teams), Sphere, Sky Blue, Vector(-79.037, 1.750, -35.322), 0.300, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Restock Drinks"), Vector(-79.037, 1.800, -35.322), 1,
  • Clip Against Surfaces, Visible To Position and String, Sky Blue, Default Visibility);
  • Create In-World Text(All Players(All Teams).Bartender_At_Work, Custom String("Crouch + Jump + Interact to Stop Working"), Vector(
  • -76.649, 1.500, -36.941), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Martini (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-68.305, 1.500, -37.282)) <= 1;
  • Global.Martini_Stock > 0;
  • Event Player.isDrinking == False;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 5;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Good Pickup Effect, Blue, Vector(-68.305, 1.500, -37.282), 1);
  • Global.Martini_Stock -= 1;
  • Event Player.Money -= 5;
  • Wait(1.250, Ignore Condition);
  • Global.Bought_Martini = True;
  • Small Message(Event Player, Custom String("You drank a martini and felt dizzy."));
  • Event Player.isDrinking = True;
  • Set Status(Event Player, Null, Knocked Down, 7);
  • Wait(10, Ignore Condition);
  • Event Player.isDrinking = False;
  • Heal(Event Player, Null, 50);
  • }
  • }
  • rule("Bloody Mary (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-72.057, 1.500, -27.822)) <= 1;
  • Global.BloodyMary_Stock > 0;
  • Event Player.isDrinking == False;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 5;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Good Pickup Effect, Red, Vector(-72.057, 1.500, -27.822), 1);
  • Global.BloodyMary_Stock -= 1;
  • Event Player.Money -= 5;
  • Global.Bought_BloodyMary = True;
  • Wait(1.250, Ignore Condition);
  • Small Message(Event Player, Custom String("You drank a bloody mary and passed out!"));
  • Event Player.isDrinking = True;
  • Set Status(Event Player, Null, Asleep, 8);
  • Wait(10, Ignore Condition);
  • Event Player.isDrinking = False;
  • Heal(Event Player, Null, 50);
  • }
  • }
  • rule("Error Stock Martini (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-68.626, 1.500, -37.134)) <= 1;
  • Global.Martini_Stock <= 0;
  • Event Player.isDrinking == False;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("Out of Martini! Requires a Bartender to restock it!"));
  • }
  • }
  • rule("Error Stock Bloody Mary (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-72.057, 1.500, -27.822)) <= 1;
  • Global.BloodyMary_Stock <= 0;
  • Event Player.isDrinking == False;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("Out of Bloody Mary! Requires a Bartender to restock it!"));
  • }
  • }
  • rule("Restock Drinks (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Bartender == True;
  • Event Player.Bartender_At_Work == True;
  • Distance Between(Event Player, Vector(-79.037, 1.400, -35.322)) <= 1.900;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Global.Martini_Stock = 10;
  • Global.BloodyMary_Stock = 10;
  • Big Message(Event Player, Custom String("Restocked all 15 martini and bloody mary"));
  • Play Effect(Event Player, Ring Explosion Sound, Aqua, Event Player, 100);
  • }
  • }
  • rule("Toy Factory Shop Effects (Toy)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Yellow, Vector(-133.128, -0.250, 25), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Stun Pistol $10"), Vector(-133.128, 0, 25), 1, Clip Against Surfaces,
  • Visible To Position and String, Yellow, Default Visibility);
  • Create Effect(All Players(All Teams), Sphere, Sky Blue, Vector(-129.680, -0.250, 24.468), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Portable Freezer $15"), Vector(-129.680, 0, 24.468), 1,
  • Clip Against Surfaces, Visible To Position and String, Sky Blue, Default Visibility);
  • }
  • }
  • rule("Stun Pistol Buy (Toy)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-133.128, 0, 25)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 10;
  • Event Player.hasToy == False;
  • }
  • actions
  • {
  • Event Player.hasToy = True;
  • Event Player.hasStunGun = True;
  • Global.Bought_StunGun = True;
  • Event Player.Money -= 10;
  • Small Message(Event Player, Custom String("You bought a stun gun for $10 (Press Interact close to a player to use it)"));
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Wait(0.250, Ignore Condition);
  • }
  • }
  • rule("Stun Pistol Use (Toy)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Player Closest To Reticle(Event Player, All Teams)) <= 5;
  • Event Player.hasStunGun == True;
  • Is Alive(Event Player) == True;
  • Is Alive(Player Closest To Reticle(Event Player, All Teams)) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Jump) == False;
  • }
  • actions
  • {
  • Wait(0.250, Ignore Condition);
  • Set Status(Player Closest To Reticle(Event Player, All Teams), Null, Stunned, 5);
  • Event Player.hasToy = False;
  • Event Player.hasStunGun = False;
  • Play Effect(Event Player, Explosion Sound, White, Event Player, 100);
  • }
  • }
  • rule("Portable Freezer Buy (Toy)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-129.680, 0, 24.468)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 15;
  • Event Player.hasToy == False;
  • }
  • actions
  • {
  • Event Player.hasToy = True;
  • Event Player.hasPortableFreezer = True;
  • Global.Bought_PortableFreezer = True;
  • Event Player.Money -= 15;
  • Small Message(Event Player, Custom String("You bought a portable freezer for $25 (Press Interact close to a player to use it)"));
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Wait(0.250, Ignore Condition);
  • }
  • }
  • rule("Portable Freezer Use (Toy)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Player Closest To Reticle(Event Player, All Teams)) <= 5;
  • Event Player.hasPortableFreezer == True;
  • Is Alive(Event Player) == True;
  • Is Alive(Player Closest To Reticle(Event Player, All Teams)) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Jump) == False;
  • }
  • actions
  • {
  • Wait(0.250, Ignore Condition);
  • Set Status(Player Closest To Reticle(Event Player, All Teams), Null, Frozen, 5);
  • Event Player.hasToy = False;
  • Event Player.hasPortableFreezer = False;
  • Play Effect(Event Player, Explosion Sound, White, Event Player, 100);
  • }
  • }
  • rule("Mechanic Shop Effects (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Orange, Vector(-41.949, 1, -2.272), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Speed Upgrade $30 (2 Day)"), Vector(-41.949, 1.250, -2.272), 1,
  • Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • Create Effect(All Players(All Teams), Sphere, Green, Vector(-42.656, 1, 1.228), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Jump Upgrade $30 (2 Day)"), Vector(-42.656, 1.250, 1.228), 1,
  • Clip Against Surfaces, Visible To Position and String, Green, Default Visibility);
  • }
  • }
  • rule("Speed Upgrade Buy (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-41.949, 1.248, -2.272)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 30;
  • Event Player.hasMoveSpeedUpgarde == False;
  • }
  • actions
  • {
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Event Player.Money -= 30;
  • Global.Bought_SpeedUpgrade = True;
  • Wait(0.650, Ignore Condition);
  • Event Player.hasMoveSpeedUpgarde = True;
  • Set Move Speed(Event Player, 215);
  • Small Message(Event Player, Custom String("You bought a speed upgrade for $30"));
  • Wait(120, Ignore Condition);
  • Set Move Speed(Event Player, 100);
  • Small Message(Event Player, Custom String("Your speed upgrade has expired"));
  • Event Player.hasMoveSpeedUpgarde = False;
  • }
  • }
  • rule("Jump Upgrade Buy (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-42.656, 1.248, 1.228)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 30;
  • Event Player.hasJumpUpgrade == False;
  • }
  • actions
  • {
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Event Player.Money -= 30;
  • Global.Bought_JumpUpgrade = True;
  • Event Player.hasJumpUpgrade = True;
  • Set Gravity(Event Player, 18);
  • Small Message(Event Player, Custom String("You bought a jump upgrade for $30"));
  • Wait(120, Ignore Condition);
  • Set Gravity(Event Player, 100);
  • Small Message(Event Player, Custom String("Your jump upgrade has expired"));
  • Event Player.hasJumpUpgrade = False;
  • }
  • }
  • rule("Researcher Shop Effects (Researcher)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, White, Vector(12.589, 2.250, 34.938), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Invisibility $250 (12 Hours)"), Vector(12.589, 2.500, 34.938), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Sphere, Red, Vector(13.246, 2.250, 39.134), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Slow Motion Experimental $350"), Vector(13.246, 2.500, 39.134), 1,
  • Clip Against Surfaces, Visible To Position and String, Red, Default Visibility);
  • }
  • }
  • rule("Invisibility Buy (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(12.589, 2.249, 34.938)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 250;
  • Event Player.hasInvisibility == False;
  • }
  • actions
  • {
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Event Player.Money -= 250;
  • Event Player.hasInvisibility = True;
  • Set Invisible(Event Player, All);
  • Small Message(Event Player, Custom String("You are now invisible for 12 hours"));
  • Wait(30, Ignore Condition);
  • Set Invisible(Event Player, None);
  • Small Message(Event Player, Custom String("You are now visible again"));
  • Event Player.hasInvisibility = False;
  • }
  • }
  • rule("Slow Motion Buy (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(13.246, 2.249, 39.134)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 350;
  • Event Player.hasSlowMotion == False;
  • }
  • actions
  • {
  • Play Effect(Event Player, Buff Explosion Sound, White, Event Player, 100);
  • Event Player.Money -= 350;
  • Event Player.hasSlowMotion = True;
  • Small Message(Event Player, Custom String("Ctrl + Melee to slow down time (1 use only)"));
  • }
  • }
  • rule("Slow Motion Use (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.hasSlowMotion == True;
  • Is Button Held(Event Player, Melee) == True;
  • Is Button Held(Event Player, Crouch) == True;
  • Global.SlowMotion == False;
  • Is Button Held(Event Player, Jump) == False;
  • }
  • actions
  • {
  • Event Player.hasSlowMotion = False;
  • Big Message(All Players(All Teams), Custom String("Someone is messing with time!"));
  • Global.SlowMotion = True;
  • Set Slow Motion(30);
  • Wait(8, Ignore Condition);
  • Set Slow Motion(100);
  • Global.SlowMotion = False;
  • }
  • }
  • rule("Cinema Shop Effects (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Purple, Vector(14.782, 2, -4.642), 0.500, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Watch a movie $15"), Vector(14.782, 2.250, -4.642), 1,
  • Clip Against Surfaces, Visible To Position and String, Purple, Default Visibility);
  • }
  • }
  • rule("Watch Movie Buy (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(14.782, 2.248, -4.642)) <= 1.600;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Money >= 15;
  • }
  • actions
  • {
  • Event Player.Money -= 15;
  • Global.Bought_Movie = True;
  • Small Message(Event Player, Custom String("Enjoy the movie"));
  • Wait(1, Ignore Condition);
  • Set Status(Event Player, Null, Phased Out, 40);
  • Set Status(Event Player, Null, Rooted, 40);
  • "World View"
  • Teleport(Event Player, Vector(-16.404, 350, -30.794));
  • Big Message(Event Player, Custom String("Job Simulator The Movie"));
  • Wait(10, Ignore Condition);
  • "Research Lab View"
  • Teleport(Event Player, Vector(-2.492, 15.232, 23.805));
  • Big Message(Event Player, Custom String("Here is the research lab, where the scientists slaves away"));
  • Wait(5, Ignore Condition);
  • "Top Building View"
  • Teleport(Event Player, Vector(-3.816, 15.075, 17.514));
  • Big Message(Event Player, Custom String("To your left, you'll be able to see the Doctor's office and the Cinema on your right."));
  • Wait(5, Ignore Condition);
  • "Town Square View"
  • Teleport(Event Player, Vector(-3.239, 15.857, -23.956));
  • Big Message(Event Player, Custom String("The town square, you'll be able to apply as an officer under the clock tower."));
  • Wait(5, Ignore Condition);
  • "Plaza View"
  • Teleport(Event Player, Vector(-48.537, 10.482, -36.516));
  • Big Message(Event Player, Custom String("In the plaza, you'll find jobs such as mechanic and bartender."));
  • Wait(5, Ignore Condition);
  • "Subway View"
  • Teleport(Event Player, Vector(-105, -3.053, -68));
  • Big Message(Event Player, Custom String(
  • "In the plaza, you'll find most criminals and mafias hanging out.... Waiting for their next target"));
  • Wait(5, Ignore Condition);
  • "Toy Factory View"
  • Teleport(Event Player, Vector(-116.276, 7.458, 4.818));
  • Big Message(Event Player, Custom String(
  • "You'll find some of Santa's Workers here in the toy factory. You can also buy some toys to mess with people."));
  • Wait(5, Ignore Condition);
  • "Back to spawn"
  • Teleport(Event Player, Vector(-16.404, 1.126, -30.794));
  • Big Message(Event Player, Custom String("Come back again soon!"));
  • }
  • }
  • rule("While at Work (Bartender)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Bartender_At_Work == True;
  • }
  • actions
  • {
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("While at Work (Mechanic)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Mechanic_At_Work == True;
  • }
  • actions
  • {
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("While at Work (Toy Factory Worker)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Toy_Factory_Worker == True;
  • }
  • actions
  • {
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("While at Work (Cinema Attendant)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Cinema_Attendant == True;
  • }
  • actions
  • {
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("While at Work (Researcher)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Researcher_At_Work == True;
  • }
  • actions
  • {
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 180;
  • End;
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Fire Officer")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Players_Killed >= 1;
  • Event Player.Officer == True;
  • }
  • actions
  • {
  • Event Player.hasJob = False;
  • Event Player.Officer = False;
  • Big Message(Event Player, Custom String("You've been fired for killing a player!"));
  • Destroy In-World Text(Last Text ID);
  • Play Effect(Event Player, Ring Explosion Sound, White, Event Player, 100);
  • }
  • }
  • rule("Fire Doctor")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Players_Killed >= 1;
  • Event Player.Doctor == True;
  • }
  • actions
  • {
  • Event Player.hasJob = False;
  • Event Player.Doctor = False;
  • Event Player.Doctor_Is_Healing = False;
  • Big Message(Event Player, Custom String("You've been fired for killing a player!"));
  • Destroy In-World Text(Last Text ID);
  • Play Effect(Event Player, Ring Explosion Sound, White, Event Player, 100);
  • }
  • }
  • rule("Fire Bartender")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Players_Killed >= 1;
  • Event Player.Bartender == True;
  • }
  • actions
  • {
  • Event Player.hasJob = False;
  • Event Player.Bartender = False;
  • Big Message(Event Player, Custom String("You've been fired for killing a player!"));
  • Destroy In-World Text(Last Text ID);
  • Play Effect(Event Player, Debuff Impact Sound, Orange, Event Player, 100);
  • }
  • }
  • rule("Commision Bartender Bloody Mary")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_BloodyMary == True;
  • Event Player.Bartender_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_BloodyMary = False;
  • Event Player.Money += 4.500;
  • }
  • }
  • rule("Commision Bartender Martini")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_Martini == True;
  • Event Player.Bartender_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_Martini = False;
  • Event Player.Money += 4.500;
  • }
  • }
  • rule("Commision Toy Factory Worker Stun")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_StunGun == True;
  • Event Player.Toy_Factory_Worker_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_StunGun = False;
  • Event Player.Money += 2.500;
  • }
  • }
  • rule("Commision Toy Factory Worker Freeze")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_PortableFreezer == True;
  • Event Player.Toy_Factory_Worker_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_PortableFreezer = False;
  • Event Player.Money += 2.500;
  • }
  • }
  • rule("Commision Mechanic Speed")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_SpeedUpgrade == True;
  • Event Player.Mechanic == True;
  • }
  • actions
  • {
  • Global.Bought_SpeedUpgrade = False;
  • Event Player.Money += 2.500;
  • }
  • }
  • rule("Commision Mechanic Jump")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_JumpUpgrade == True;
  • Event Player.Mechanic_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_JumpUpgrade = False;
  • Event Player.Money += 2.500;
  • }
  • }
  • rule("Commision Cinema Attendant")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.Bought_Movie == True;
  • Event Player.Cinema_Attendant_At_Work == True;
  • }
  • actions
  • {
  • Global.Bought_Movie = False;
  • Event Player.Money += 5;
  • }
  • }
  • rule("Subtract Kill Count Effect")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Cloud, Yellow, Vector(-108.700, -2.500, -38.720), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Subtract Kill Count by 1 for $100"), Vector(-108.700, -2.250, -38.719),
  • 1, Clip Against Surfaces, Visible To Position and String, Yellow, Default Visibility);
  • }
  • }
  • rule("Subtract Kill Count")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-108.700, -2.500, -38.719)) <= 1.250;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Players_Killed >= 1;
  • Event Player.Money >= 100;
  • }
  • actions
  • {
  • Event Player.Money -= 100;
  • Event Player.Players_Killed -= 1;
  • If(Event Player.Players_Killed == 0);
  • Event Player.isCriminal = False;
  • }
  • }
  • rule("Tutorial")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Ring, Lime Green, Vector(-18.764, 0, -39.723), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Teleport to Tutorial"), Vector(-18.764, 1.340, -39.723), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Light Shaft, Lime Green, Vector(-35.429, 39, -77.352), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Teleport to Spawn"), Vector(-35.429, 40, -77.352), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Job Simulator (Kings Row) Tutorial: "), Vector(-23.905, 41, -56.937),
  • 1.500, Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Most interactions requires you to use the interact key"), Vector(
  • -23.905, 40.750, -56.937), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("You cannot accept more than one job at a time"), Vector(-23.905,
  • 40.500, -56.937), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("You will only earn money/commision while working"), Vector(-23.905,
  • 40.250, -56.937), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Report any bugs to me and I'll be sure to fix it"), Vector(-23.905, 40,
  • -56.937), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Barista"), Vector(-31.232, 41, -96.244), 1.500, Clip Against Surfaces,
  • Visible To Position and String, Purple, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Crouch + Jump + Interact to work"), Vector(-31.232, 40.750,
  • -96.244), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $6/day + $2.5 per drink sold"), Vector(-31.232, 40.500,
  • -96.244), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Mechanic"), Vector(-26.040, 41, -95.558), 1.500, Clip Against Surfaces,
  • Visible To Position and String, Lime Green, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Crouce + Jump + Interact to work"), Vector(-26.040, 40.750,
  • -95.558), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $8/day + $2.5/Upgrade sold"), Vector(-26.040, 40.500, -95.558),
  • 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Toy Factory Worker"), Vector(-20.855, 41, -94.679), 1.500,
  • Clip Against Surfaces, Visible To Position and String, Aqua, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Crouch + Jump + Interact to work"), Vector(-20.855, 40.750,
  • -94.679), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $6.5/day + $2.5/toy sold"), Vector(-20.855, 40.500, -94.679),
  • 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Cinema Attendant"), Vector(-14.702, 41, -93.859), 1.500,
  • Clip Against Surfaces, Visible To Position and String, Yellow, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Crouch + Jump + Interact to work"), Vector(-14.702, 40.750,
  • -93.859), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $6/day + $5 per ticket sold"), Vector(-14.702, 40.500,
  • -93.859), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Doctor"), Vector(-9.698, 41, -92.788), 1.500, Clip Against Surfaces,
  • Visible To Position and String, Sky Blue, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Look at player and hold control to heal"), Vector(-9.698,
  • 40.750, -92.788), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $12/(2) days + $0.1/10hp healed"), Vector(-9.698, 40.500,
  • -92.788), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Researcher"), Vector(-4.251, 41, -91.757), 1.500,
  • Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Crouch + Jump + Interact to work"), Vector(-4.251, 40.750,
  • -91.757), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $35/(3) days"), Vector(-4.251, 40.500, -91.757), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Officer"), Vector(-3.104, 41, -85.791), 1.500, Clip Against Surfaces,
  • Visible To Position and String, Blue, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Look at player + Interact to catch criminal"), Vector(-3.104,
  • 40.750, -85.791), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $15/(3) days + $10/arrest"), Vector(-3.104, 40.500, -85.791),
  • 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Mafia"), Vector(-4.039, 41, -79.688), 1.500, Clip Against Surfaces,
  • Visible To Position and String, Red, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Controls: Look at target + Interact to mug"), Vector(-4.039, 40.750,
  • -79.688), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Salary: $25 / task completed"), Vector(-4.039, 40.500, -79.688), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("! Extra Information !"), Vector(-30.665, 41, -57.619), 1.500,
  • Clip Against Surfaces, Visible To Position and String, Turquoise, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("When mugged, you cannot move for 30 seconds"), Vector(-30.665, 40.750,
  • -57.619), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("When caught by a police, you will be jailed for 45 seconds"), Vector(
  • -30.665, 40.500, -57.619), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Some jobs requires you to have no players killed"), Vector(-30.665,
  • 40.250, -57.619), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Serving time in prison will reset player kill count"), Vector(-30.665,
  • 40, -57.619), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Teleport to Tutorial")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-18.764, 0, -39.723)) <= 1;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.inTutorial == False;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-21.200, 40.538, -71.283));
  • Wait(0.250, Ignore Condition);
  • Event Player.inTutorial = True;
  • }
  • }
  • rule("Teleport to Spawn")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-35.770, 40.538, -77.323)) <= 1.500;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.inTutorial == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-19.925, 1.233, -33));
  • Event Player.inTutorial = False;
  • Wait(0.250, Ignore Condition);
  • Set Damage Dealt(Event Player, 100);
  • Set Ability 1 Enabled(Event Player, True);
  • Set Ability 2 Enabled(Event Player, True);
  • Set Damage Received(Event Player, 100);
  • }
  • }
  • rule("Out of Bounds - Tutorial")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-21.200, 40.438, -71.283)) >= 28;
  • Event Player.inTutorial == True;
  • }
  • actions
  • {
  • Event Player.inTutorial = False;
  • Teleport(Event Player, Vector(-19.890, 1.232, -33.497));
  • Set Damage Dealt(Event Player, 100);
  • Set Ability 1 Enabled(Event Player, True);
  • Set Ability 2 Enabled(Event Player, True);
  • Set Damage Received(Event Player, 100);
  • }
  • }
  • rule("In Bounds - Tutorial")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-21.200, 40.438, -71.283)) <= 28;
  • Event Player.inTutorial == True;
  • }
  • actions
  • {
  • Set Damage Dealt(Event Player, 0);
  • Set Ability 1 Enabled(Event Player, False);
  • Set Ability 2 Enabled(Event Player, False);
  • Set Damage Received(Event Player, 0);
  • }
  • }
  • rule("Descriptions")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create In-World Text(All Players(All Teams), Custom String(
  • "As a mafia, you're NOT suppose to kill your targets. Use the interact key to mug the targeted player."), Vector(-114.878,
  • -3.152, -54.134), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Bartender"
  • Create In-World Text(All Players(All Teams), Custom String("To Start Work: (Crouch + Jump + Interact)"), Vector(-77.246, 2.746,
  • -40.511), 1, Clip Against Surfaces, Visible To Position and String, Turquoise, Default Visibility);
  • "Mechanic"
  • Create In-World Text(All Players(All Teams), Custom String("Start working by holding on (Crouch + Jump + Interact)"), Vector(
  • -56.173, 1.248, 6.611), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Toy Factory Worker"
  • Create In-World Text(All Players(All Teams), Custom String("Start working by holding on (Crouch + Jump + Interact)"), Vector(
  • -153.196, -1.606, 24.988), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Cinema Attendant"
  • Create In-World Text(All Players(All Teams), Custom String("Start working by holding on (Crouch + Jump + Interact)"), Vector(
  • 11.625, 2.249, 0.095), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Researcher"
  • Create In-World Text(All Players(All Teams), Custom String("Start working by holding on (Crouch + Jump + Interact)"), Vector(4.167,
  • 4.226, 57.295), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Press Crouch near a player to heal them"), Vector(-19.743, 1.516,
  • 3.403), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Press Interact near a criminal to arrest them"), Vector(-21.297, 2.250,
  • -56.647), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("Prison"), Vector(-117.145, -3.152, -33.894), 1, Clip Against Surfaces,
  • Visible To Position and String, Lime Green, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("(Crouch + Interact) To use toy on another player."), Vector(-125.713,
  • -0.019, 24.012), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create In-World Text(All Players(All Teams), Custom String("New target selected every 2 days"), Vector(-100.968, -1.500, -58.438),
  • 1, Clip Against Surfaces, Visible To Position and String, Lime Green, Default Visibility);
  • }
  • }
  • rule("Credits: MrSharkiee & Mercy")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create In-World Text(All Players(All Teams), Custom String("Job Sim (KR) Originally Made By: MrSharkiee - Modified By: Mercy"),
  • Vector(-18.755, 2, -38.921), 1, Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • }
  • }
  • disabled rule("Teleport")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Host Player, Interact) == True;
  • Is Button Held(Event Player, Crouch) == True;
  • }
  • actions
  • {
  • disabled Event Player.Researcher_At_Work = Event Player;
  • Teleport(Event Player, Event Player + Facing Direction Of(Event Player) * 5);
  • disabled Set Facing(Event Player, Event Player.Researcher_At_Work, To World);
  • }
  • }
  • disabled rule("Bot Test")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Crouching(Event Player) == True;
  • Is Button Held(Event Player, Primary Fire) == True;
  • }
  • actions
  • {
  • Create Dummy Bot(Hero(Ana), All Teams, 2, Vector(-10.510, 2.173, -53.477), Vector(-103.945, 12.440, -34.809));
  • Start Holding Button(Players On Hero(Hero(Ana), All Teams), Primary Fire);
  • Create Dummy Bot(Hero(Baptiste), All Teams, 3, Vector(-12.605, 2.173, -53.844), Vector(-103.945, 12.440, -34.809));
  • }
  • }
  • rule("Host Resurrection")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Host Player == Is Button Held(Event Player, Melee);
  • Host Player == Is Button Held(Event Player, Interact);
  • Host Player == Is Dead(Host Player);
  • }
  • actions
  • {
  • Resurrect(Host Player);
  • Create Effect(All Players(All Teams), Sparkles, Turquoise, Host Player, 4.500, Visible To Position and Radius);
  • Wait(2.200, Ignore Condition);
  • Destroy Effect(Last Created Entity);
  • }
  • }
  • rule("Host -- Dev Mode (Activate)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Reload) == True;
  • Event Player.IsModerator == True;
  • }
  • actions
  • {
  • Skip If(Has Status(Event Player, Phased Out), 4);
  • Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 0.666, Visible To Position and Radius);
  • Set Status(Event Player, Null, Phased Out, 9999);
  • disabled Skip If(!Has Status(Event Player, Invincible), 2);
  • disabled Clear Status(Event Player, Invincible);
  • }
  • }
  • rule("Host -- Dev Mode (Deactivate)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Host Player, Primary Fire) == True;
  • Is Button Held(Host Player, Secondary Fire) == True;
  • Is Button Held(Host Player, Interact) == True;
  • }
  • actions
  • {
  • Clear Status(Host Player, Phased Out);
  • Destroy Effect(Last Created Entity);
  • }
  • }
  • rule("Teleport to Host Room [Effects]")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Ring, Turquoise, Vector(-3.808, 1.786, -25.278), 2, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Host Room Teleportation Pad"), Vector(-3.808, 1.786, -25.278), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Teleport From Host Room [Function]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-55.868, 1.508, 23.044)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.IsModerator == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-3.494, 1.786, -25.300));
  • Small Message(Event Player, Custom String("Exiting Host Room"));
  • }
  • }
  • rule("Teleport Pad In Host Room (Exit) [Effects]")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Ring, Turquoise, Vector(-56.420, 1.482, 22.992), 1.300, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Host Room Teleportation Pad"), Vector(-56.420, 1.482, 22.992), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Host Room Teleportation Enter [Fuction]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-3.494, 1.786, -25.300)) <= 2;
  • Event Player.IsModerator == True;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-56.420, 1.482, 22.992));
  • Small Message(Event Player, Custom String("Entering Host Room"));
  • }
  • }
  • disabled rule("Special Permissions (Toggleable By Host) (Player Slot 11)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Players In Slot(11, All Teams).IsModerator == False;
  • Global.SlotPermissionDenied == False;
  • }
  • actions
  • {
  • disabled Event Player.IsModerator = 48;
  • Big Message(Players In Slot(11, All Teams), Custom String("Moderator Status: Pending Approval Of Host"));
  • Big Message(Host Player, Custom String("Moderator Status Pending Your Approval -- Visit Host Room To Accept Or Deny"));
  • disabled Wait(180, Abort When False);
  • disabled Loop If Condition Is True;
  • }
  • }
  • disabled rule("Auto Assign False Status")
  • {
  • event
  • {
  • Player Joined Match;
  • All;
  • All;
  • }
  • actions
  • {
  • disabled Skip If(Event Player.IsModerator, 2);
  • disabled Event Player.IsModerator = False;
  • }
  • }
  • disabled rule("Host Player Permissions Status")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player == Host Player;
  • Event Player.IsModerator == False;
  • }
  • actions
  • {
  • Event Player.IsModerator = True;
  • disabled Create In-World Text(All Players(All Teams), Custom String("~ ~ Host ~ ~"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Blue, Default Visibility);
  • Wait(29, Abort When False);
  • Loop;
  • }
  • }
  • disabled rule("Deny Permission Request")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • disabled Event Player == Host Player;
  • Distance Between(Event Player, Vector(-42.381, 1.685, 29.716)) <= 2;
  • Is Button Held(Event Player, Interact) == True;
  • }
  • actions
  • {
  • disabled Players In Slot(11, All Teams).IsModerator = Null;
  • Global.SlotPermissionDenied = True;
  • }
  • }
  • rule("Allow Permission Request")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Distance Between(Host Player, Vector(-39.410, 1.415, 34.064)) <= 2;
  • Is Button Held(Host Player, Interact) == True;
  • }
  • actions
  • {
  • Disallow Button(Host Player, Interact);
  • Wait(0.420, Ignore Condition);
  • Allow Button(Host Player, Interact);
  • Players In Slot(11, All Teams).IsModerator = True;
  • Big Message(Players In Slot(11, All Teams), Custom String("Moderator Permission Granted"));
  • Big Message(Host Player, Custom String("Permission Given"));
  • disabled End;
  • }
  • }
  • rule("Permission Allowed Effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Blue, Vector(-39.410, 1.415, 34.064), 2, Visible To Position and Radius);
  • }
  • }
  • disabled rule("Permission Denied Effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Red, Vector(-42.381, 1.685, 29.716), 2, Visible To Position and Radius);
  • }
  • }
  • rule("Orb for ult increase")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Aqua, Vector(-51.130, 1.848, 36.638), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Extra Ult Charge"), Vector(-51.130, 1.848, 36.638), 1,
  • Clip Against Surfaces, Visible To Position and String, Orange, Default Visibility);
  • }
  • }
  • rule("buying orb for ult charge")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Interact) == True;
  • Distance Between(Event Player, Vector(-51.130, 1.848, 36.638)) <= 2.200;
  • }
  • actions
  • {
  • Set Ultimate Charge(Event Player, 99);
  • }
  • }
  • rule("buying orb for healing")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Interact) == True;
  • Distance Between(Event Player, Vector(-55.373, 1.795, 32.571)) <= 2.200;
  • }
  • actions
  • {
  • Set Max Health(Event Player, 1000);
  • Wait(0.300, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Orb for health increase")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Yellow, Vector(-55.373, 1.795, 32.571), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Extra Health"), Vector(-55.373, 1.795, 32.571), 1,
  • Clip Against Surfaces, Visible To Position and String, Purple, Default Visibility);
  • }
  • }
  • rule("Orb for money increase")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, Green, Vector(-46.190, 1.704, 38.443), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Extra Money"), Vector(-46.190, 1.704, 38.443), 1,
  • Clip Against Surfaces, Visible To Position and String, Lime Green, Default Visibility);
  • }
  • }
  • rule("buying orb for money")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Interact) == True;
  • Distance Between(Event Player, Vector(-46.190, 1.704, 38.443)) <= 2.200;
  • }
  • actions
  • {
  • Event Player.Money += 35;
  • Wait(0.800, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Orb for jail")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Sphere, White, Vector(-41.567, 1.679, 39.320), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Criminal? Not anymore :)"), Vector(-41.567, 1.679, 39.320), 1,
  • Clip Against Surfaces, Visible To Position and String, Purple, Default Visibility);
  • }
  • }
  • rule("buying orb for jail")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Interact) == True;
  • Distance Between(Event Player, Vector(-41.567, 1.679, 39.320)) <= 2.300;
  • }
  • actions
  • {
  • Event Player.isCriminal = False;
  • Event Player.Players_Killed = 0;
  • disabled Wait(0.300, Ignore Condition);
  • disabled Loop If Condition Is True;
  • }
  • }
  • disabled rule("Apply as Cashier")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-19.981, 2.699, -14.889)) <= 1.900;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • Event Player.hasJob == False;
  • Event Player.Players_Killed == 0;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Cashier 0'_'0"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Lime Green, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Cashier!"));
  • Event Player.Cashier = True;
  • }
  • }
  • disabled rule("Quit Cashier")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-19.448, 2.699, -17.972)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Cashier == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Cashier"));
  • Event Player.Cashier = False;
  • Event Player.Cashier_At_Work = False;
  • Teleport(Event Player, Vector(-12.354, 1.849, -15.247));
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Secondary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Set Damage Dealt(Event Player, 100);
  • Set Status(Event Player, Null, Invincible, 0);
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • disabled rule("Go to Work (Cashier)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Cashier;
  • Event Player.Cashier_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Event Player.Cashier_At_Work = True;
  • Teleport(Event Player, Vector(-17.492, 2.702, -11.228));
  • Big Message(Event Player, Custom String("You're now at work as a Cashier"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • disabled rule("Paycheck (Cashier)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Cashier == True;
  • Event Player.Cashier_At_Work == True;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 9;
  • Loop If Condition Is True;
  • }
  • }
  • disabled rule("While at Work (Cashier)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Cashier_At_Work == True;
  • }
  • actions
  • {
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • disabled rule("Stop Working (Cashier)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player.Cashier_At_Work == True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(-12.121, 1.849, -15.271));
  • Event Player.Cashier_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • disabled rule("Go to Work (Brewer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Crouch) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Jump) == True;
  • Event Player == Event Player.Brewer;
  • Event Player.Brewer_At_Work == False;
  • Event Player.isJailed != True;
  • }
  • actions
  • {
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Vector(-80.228, 7.701, -6.747));
  • Event Player.Brewer_At_Work = True;
  • Big Message(Event Player, Custom String("You're now at work as a Brewer"));
  • Disallow Button(Event Player, Primary Fire);
  • Disallow Button(Event Player, Ultimate);
  • Disallow Button(Event Player, Ability 1);
  • Disallow Button(Event Player, Ability 2);
  • Disallow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 9999);
  • Set Damage Dealt(Event Player, 0);
  • Create HUD Text(Event Player, Custom String("Paycheck In:"), String("Time"), Event Player.nextPaycheckTime, Right, 0, Orange,
  • White, White, Visible To and String, Default Visibility);
  • Event Player.nextPaycheckTime = 60;
  • }
  • }
  • disabled rule("Paycheck (Brewer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Brewer_At_Work == True;
  • Event Player.Brewer == True;
  • Distance Between(Event Player, Vector(-81.164, 8.487, -8.839)) <= 7;
  • }
  • actions
  • {
  • Wait(60, Ignore Condition);
  • Abort If Condition Is False;
  • Event Player.Money += 11;
  • Loop If Condition Is True;
  • }
  • }
  • disabled rule("Stop Working (Brewer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Brewer_At_Work == True;
  • Distance Between(Event Player, Vector(-81.164, 8.487, -8.839)) >= 7;
  • }
  • actions
  • {
  • Event Player.Brewer_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Allow Button(Event Player, Secondary Fire);
  • Set Status(Event Player, Null, Invincible, 0);
  • Set Damage Dealt(Event Player, 100);
  • Small Message(Event Player, Custom String("You stopped working at King's Row Brewery"));
  • Destroy HUD Text(Last Text ID);
  • }
  • }
  • disabled rule("While at Work (Brewer)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Brewer_At_Work == True;
  • }
  • actions
  • {
  • If(Event Player.nextPaycheckTime <= 0);
  • Event Player.nextPaycheckTime = 60;
  • End;
  • "Timer"
  • If(Event Player.nextPaycheckTime >= 1);
  • Abort If Condition Is False;
  • Skip If(Event Player.nextPaycheckTime == 0, 1);
  • Wait(1, Ignore Condition);
  • Event Player.nextPaycheckTime -= 1;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • disabled rule("Apply as Brewer")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-83.846, 7.701, -13.661)) <= 1.900;
  • Event Player.hasJob == False;
  • Is Button Held(Event Player, Interact) == True;
  • Facing Direction Of(Event Player) == True;
  • }
  • actions
  • {
  • Disallow Button(Event Player, Interact);
  • Wait(0.350, Ignore Condition);
  • Allow Button(Event Player, Interact);
  • Create In-World Text(All Players(All Teams), Custom String("Brewer ('̀-'́)"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Sky Blue, Default Visibility);
  • Event Player.hasJob = True;
  • Big Message(Event Player, Custom String("You are now working as a Brewer"));
  • Event Player.Brewer = True;
  • }
  • }
  • disabled rule("Quit Brewery")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Event Player, Vector(-77.142, 7.701, -12.474)) <= 1.900;
  • Event Player.hasJob == True;
  • Is Button Held(Event Player, Interact) == True;
  • Event Player.Brewer == True;
  • }
  • actions
  • {
  • Destroy In-World Text(Last Text ID);
  • Event Player.hasJob = False;
  • Big Message(Event Player, Custom String("You Quit Your Job as a Brewer"));
  • Event Player.Brewer = False;
  • Teleport(Event Player, Vector(-69.563, 7.195, -13.555));
  • Event Player.Brewer_At_Work = False;
  • Allow Button(Event Player, Primary Fire);
  • Allow Button(Event Player, Secondary Fire);
  • Allow Button(Event Player, Ability 1);
  • Allow Button(Event Player, Ability 2);
  • Allow Button(Event Player, Ultimate);
  • Set Damage Dealt(Event Player, 100);
  • Set Status(Event Player, Null, Invincible, 0);
  • }
  • }
  • disabled rule("Rule 148")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Bad Aura, Turquoise, Vector(11.373, 0.602, -61.869), 1, Visible To Position and Radius);
  • }
  • }
  • disabled rule("Rule 149")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Crouching(Event Player) == True;
  • Distance Between(Event Player, Vector(11.373, 0.702, -61.869)) <= 2;
  • Event Player.IsModerator == True;
  • }
  • actions
  • {
  • disabled Play Effect(All Players(All Teams), Ring Explosion, Turquoise, Event Player, 2);
  • Wait(0.450, Ignore Condition);
  • Teleport(Event Player, Vector(37.922, 0.592, -98.179));
  • }
  • }
  • disabled rule("Rule 150")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • disabled Create Effect(All Players(All Teams), Good Aura, Sky Blue, Vector(37.922, 0.592, -98.179), 0.500, Visible To Position and Radius);
  • disabled Create Effect(All Players(All Teams), Good Aura, Blue, Vector(37.922, 0.592, -98.179), 0.250, Visible To Position and Radius);
  • disabled Create Effect(All Players(All Teams), Good Aura, Turquoise, Vector(37.922, 0.592, -98.179), 1, Visible To Position and Radius);
  • }
  • }
  • disabled rule("Rule 149")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Crouching(Event Player) == True;
  • Distance Between(Event Player, Vector(37.922, 0.592, -98.179)) <= 2;
  • Event Player.IsModerator == True;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Ring Explosion, Turquoise, Event Player, 2);
  • Wait(0.450, Ignore Condition);
  • Teleport(Event Player, Vector(11.373, 0.702, -61.869));
  • }
  • }
  • disabled rule("Rule 152")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, Orange, Vector(28.853, 0.591, -88.244), 5, Visible To Position and Radius);
  • }
  • }
  • disabled rule("Rule 153")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Interact) == True;
  • Distance Between(Event Player, Vector(28.853, 0.591, -88.244)) <= 2.030;
  • }
  • actions
  • {
  • Create In-World Text(All Players(All Teams), Custom String("Moderator (ง'̀-'́)ง"), Event Player, 1, Clip Against Surfaces,
  • Visible To Position and String, Red, Default Visibility);
  • }
  • }
  • rule("Server Capacity Hud")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Host Player, Custom String("Script Capacity:"), Null, Server Load, Top, 0, Aqua, Aqua, Aqua, Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Alc - sober up")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.Alcohollevel >= 0.100;
  • }
  • actions
  • {
  • Event Player.Alcohollevel -= 0.100;
  • Wait(10, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
Join the Workshop.codes Discord