Return to post
- settings
- {
- modes
- {
- Assault
- {
- Limit Roles: 2 Of Each Role Per Team
- }
- Control
- {
- Limit Roles: 2 Of Each Role Per Team
- }
- Escort
- {
- Limit Roles: 2 Of Each Role Per Team
- }
- Hybrid
- {
- Limit Roles: 2 Of Each Role Per Team
- }
- }
- }
- variables
- {
- player:
- 0: eye_pos_temp
- 1: Camera_Activated
- 2: temp_a1
- 3: temp_ac
- 4: temp_sf
- 5: temp_ult
- }
- rule("3DCam | By DarkShadow#24346")
- {
- event
- {
- Ongoing - Each Player;
- All;
- All;
- }
- actions
- {
- While(True);
- "toggle cam"
- If(Is Button Held(Event Player, Button(Interact)) == True);
- If(Event Player.Camera_Activated == True);
- Event Player.Camera_Activated = False;
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Eye Position(Event Player), 1, Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Wait(1, Ignore Condition);
- Stop Camera(Event Player);
- Disallow Button(Event Player, Button(Interact));
- Wait(0.250, Ignore Condition);
- Allow Button(Event Player, Button(Interact));
- Else If(Event Player.Camera_Activated != True);
- Event Player.Camera_Activated = True;
- Event Player.eye_pos_temp = Eye Position(Event Player);
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 3, -3), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 1,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Wait(1, Ignore Condition);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- Disallow Button(Event Player, Button(Interact));
- Wait(0.250, Ignore Condition);
- Allow Button(Event Player, Button(Interact));
- End;
- End;
- If(Event Player.Camera_Activated == True);
- If((Hero Of(Event Player) == Hero(Soldier: 76) || Hero Of(Event Player) == Hero(Reaper)) && Is Using Ability 1(Event Player)
- == True);
- Event Player.temp_a1 = True;
- Event Player.eye_pos_temp = Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3), Event Player,
- Rotation And Translation), All Players(All Teams), Event Player, True);
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 4, -6), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 2,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 4, -6),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- Else If(!Is Using Ability 1(Event Player) == True);
- If(Event Player.temp_a1 == True);
- Event Player.temp_a1 = False;
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 3, -3), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 1,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- End;
- End;
- If(Is Crouching(Event Player) == True);
- Event Player.temp_ac = True;
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 2, -2), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 2,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 2, -2),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- Else If(!Is Crouching(Event Player) == True);
- If(Event Player.temp_ac == True);
- Event Player.temp_ac = False;
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 3, -3), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 1,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- End;
- End;
- If((Hero Of(Event Player) == Hero(Ana) || Hero Of(Event Player) == Hero(Widowmaker)) && Is Firing Secondary(Event Player) == True);
- Event Player.temp_sf = True;
- Stop Camera(Event Player);
- Else;
- If(Event Player.temp_sf == True);
- Event Player.temp_sf = False;
- Event Player.Camera_Activated = False;
- Event Player.Camera_Activated = True;
- Event Player.eye_pos_temp = Eye Position(Event Player);
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 3, -3), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 1,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Wait(1, Ignore Condition);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- End;
- End;
- If((Hero Of(Event Player) == Hero(Doomfist) || Hero Of(Event Player) == Hero(Junkrat)) && Is Using Ultimate(Event Player) == True);
- Event Player.temp_ult = True;
- Stop Camera(Event Player);
- Else;
- If(Event Player.temp_ult == True);
- Event Player.temp_ult = False;
- Event Player.Camera_Activated = False;
- Event Player.Camera_Activated = True;
- Event Player.eye_pos_temp = Eye Position(Event Player);
- Chase Player Variable Over Time(Event Player, eye_pos_temp, Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(
- Vector(0, 3, -3), Event Player, Rotation And Translation), All Players(All Teams), Event Player, True), 1,
- Destination and Duration);
- Start Camera(Event Player, Event Player.eye_pos_temp, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player),
- Eye Position(Event Player) + Facing Direction Of(Event Player) * 100, All Players(All Teams), Event Player, True)), 0);
- Wait(1, Ignore Condition);
- Start Camera(Event Player, Update Every Frame(Ray Cast Hit Position(Eye Position(Event Player), World Vector Of(Vector(0, 3, -3),
- Event Player, Rotation And Translation), All Players(All Teams), Event Player, True)), Update Every Frame(
- Ray Cast Hit Position(Update Every Frame(Eye Position(Event Player)), Update Every Frame(Eye Position(Event Player)
- + Facing Direction Of(Event Player) * 1000), All Players(All Teams), Event Player, True)), 25);
- End;
- End;
- End;
- Wait(0.250, Ignore Condition);
- End;
- }
- }