‪Black Ops 3 Source Code Explorer  0.1
‪An script explorer for Black Ops 3 by ZeRoY
zm_giant_teleporter.csc
Go to the documentation of this file.
1 //
2 // file: zm_factory_teleporter.csc
3 // description: clientside post-teleport effects
4 // scripter: seibert
5 //
6 
7 #using scripts\codescripts\struct;
8 
9 #using scripts\shared\system_shared;
10 #using scripts\shared\util_shared;
11 #using scripts\shared\visionset_mgr_shared;
12 
13 #insert scripts\shared\shared.gsh;
14 #insert scripts\shared\version.gsh;
15 
16 
17 ‪REGISTER_SYSTEM( "zm_giant_teleporter", &‪__init__, undefined )
18 
19 function ‪__init__()
20 {
21  ‪visionset_mgr::register_overlay_info_style_postfx_bundle( "zm_factory_teleport", ‪VERSION_SHIP, 1, "pstfx_zm_der_teleport" );
22 
23  level thread ‪setup_teleport_aftereffects();
24  level thread ‪wait_for_black_box();
25  level thread ‪wait_for_teleport_aftereffect();
26 }
27 
29 {
31 
32  level.teleport_ae_funcs = [];
33  if( getlocalplayers().size == 1 )
34  {
35  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_fov;
36  }
37  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_shellshock;
38  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_shellshock_electric;
39  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_bw_vision;
40  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_red_vision;
41  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_flashy_vision;
42  level.teleport_ae_funcs[level.teleport_ae_funcs.size] = &‪teleport_aftereffect_flare_vision;
43 }
44 
46 {
47  secondClientNum = -1;
48  while( true )
49  {
50  level waittill( "black_box_start", localClientNum );
51  assert( isDefined( localClientNum ) );
52  savedVis = GetVisionSetNaked( localClientNum );
53  VisionSetNaked( localClientNum, "default", 0 );
54  while( secondClientNum != localClientNum )
55  {
56  level waittill( "black_box_end", secondClientNum );
57  }
58  VisionSetNaked( localClientNum, savedVis, 0 );
59  }
60 }
61 
63 {
64  while( true )
65  {
66  level waittill( "tae", localClientNum );
67  if( GetDvarString( "factoryAftereffectOverride" ) == "-1" )
68  {
69  self thread [[ level.teleport_ae_funcs[RandomInt(level.teleport_ae_funcs.size)] ]]( localClientNum );
70  }
71  else
72  {
73  self thread [[ level.teleport_ae_funcs[int(GetDvarString( "factoryAftereffectOverride" ))] ]]( localClientNum );
74  }
75  }
76 }
77 
78 function ‪teleport_aftereffect_shellshock( localClientNum )
79 {
80  wait( 0.05 );
81 }
82 
84 {
85  wait( 0.05 );
86 }
87 
88 function ‪teleport_aftereffect_fov( localClientNum )
89 {
90 
91 
92  start_fov = 30;
93  end_fov = GetDvarfloat( "cg_fov_default" );
94  duration = 0.5;
95 
96  for( i = 0; i < duration; i += 0.017 )
97  {
98  fov = start_fov + (end_fov - start_fov)*(i/duration);
99  //SetClientDvar( "cg_fov", fov );
100  waitrealtime( 0.017 );
101  }
102 }
103 
104 function ‪teleport_aftereffect_bw_vision( localClientNum )
105 {
106 
107  savedVis = GetVisionSetNaked( localClientNum );
108  VisionSetNaked( localClientNum, "cheat_bw_invert_contrast", 0.4 );
109  wait( 1.25 );
110  VisionSetNaked( localClientNum, savedVis, 1 );
111 }
112 
113 function ‪teleport_aftereffect_red_vision( localClientNum )
114 {
115 
116  savedVis = GetVisionSetNaked( localClientNum );
117  VisionSetNaked( localClientNum, "zombie_turned", 0.4 );
118  wait( 1.25 );
119  VisionSetNaked( localClientNum, savedVis, 1 );
120 }
121 
122 function ‪teleport_aftereffect_flashy_vision( localClientNum )
123 {
124 
125  savedVis = GetVisionSetNaked( localClientNum );
126  VisionSetNaked( localClientNum, "cheat_bw_invert_contrast", 0.1 );
127  wait( 0.4 );
128  VisionSetNaked( localClientNum, "cheat_bw_contrast", 0.1 );
129  wait( 0.4 );
130 // VisionSetNaked( localClientNum, "cheat_invert_contrast", 0.1 );
131  wait( 0.4 );
132 // VisionSetNaked( localClientNum, "cheat_contrast", 0.1 );
133  wait( 0.4 );
134  VisionSetNaked( localClientNum, savedVis, 5 );
135 }
136 
137 function ‪teleport_aftereffect_flare_vision( localClientNum )
138 {
139 
140  savedVis = GetVisionSetNaked( localClientNum );
141  VisionSetNaked( localClientNum, "flare", 0.4 );
142  wait( 1.25 );
143  VisionSetNaked( localClientNum, savedVis, 1 );
144 }
‪waitforclient
‪function waitforclient(client)
Definition: util_shared.csc:60
‪teleport_aftereffect_fov
‪function teleport_aftereffect_fov(localClientNum)
Definition: zm_giant_teleporter.csc:88
‪teleport_aftereffect_flare_vision
‪function teleport_aftereffect_flare_vision(localClientNum)
Definition: zm_giant_teleporter.csc:137
‪wait_for_teleport_aftereffect
‪function wait_for_teleport_aftereffect()
Definition: zm_giant_teleporter.csc:62
‪teleport_aftereffect_bw_vision
‪function teleport_aftereffect_bw_vision(localClientNum)
Definition: zm_giant_teleporter.csc:104
‪VERSION_SHIP
‪#define VERSION_SHIP
Definition: version.gsh:36
‪teleport_aftereffect_flashy_vision
‪function teleport_aftereffect_flashy_vision(localClientNum)
Definition: zm_giant_teleporter.csc:122
‪wait_for_black_box
‪function wait_for_black_box()
Definition: zm_giant_teleporter.csc:45
‪teleport_aftereffect_red_vision
‪function teleport_aftereffect_red_vision(localClientNum)
Definition: zm_giant_teleporter.csc:113
‪teleport_aftereffect_shellshock
‪function teleport_aftereffect_shellshock(localClientNum)
Definition: zm_giant_teleporter.csc:78
‪setup_teleport_aftereffects
‪function setup_teleport_aftereffects()
Definition: zm_giant_teleporter.csc:28
‪REGISTER_SYSTEM
‪#define REGISTER_SYSTEM(__sys, __func_init_preload, __reqs)
Definition: shared.gsh:204
‪__init__
‪function __init__()
Definition: zm_giant_teleporter.csc:19
‪register_overlay_info_style_postfx_bundle
‪function register_overlay_info_style_postfx_bundle(name, version, lerp_step_count, bundle, duration)
Definition: visionset_mgr_shared.csc:175
‪teleport_aftereffect_shellshock_electric
‪function teleport_aftereffect_shellshock_electric(localClientNum)
Definition: zm_giant_teleporter.csc:83