‪Black Ops 3 Source Code Explorer  0.1
‪An script explorer for Black Ops 3 by ZeRoY
_zm_equipment.csc
Go to the documentation of this file.
1 #using scripts\codescripts\struct;
2 
3 #using scripts\shared\clientfield_shared;
4 #using scripts\shared\system_shared;
5 
6 #insert scripts\shared\shared.gsh;
7 #insert scripts\shared\version.gsh;
8 
9 #insert scripts\zm\_zm_buildables.gsh;
10 #insert scripts\zm\_zm_utility.gsh;
11 
12 #namespace zm_equipment;
13 
14 ‪REGISTER_SYSTEM( "zm_equipment", &‪__init__, undefined )
15 
16 function ‪__init__()
17 {
18  level._equip_activated_callbacks = [];
19 
20  level.buildable_piece_count = ‪CLIENTFIELD_BUILDABLE_PIECE_COUNT;
21 
22  if(!‪IS_TRUE(level._no_equipment_activated_clientfield))
23  {
25  }
26 }
27 
29 {
30  level._equip_activated_callbacks[model] = func;
31 }
32 
33 function ‪equipment_activated_clientfield_cb( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump )
34 {
35  if(isdefined(self.model) && isdefined(level._equip_activated_callbacks[self.model]))
36  {
37  [[level._equip_activated_callbacks[self.model]]](localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump);
38  }
39 
40  if(!newVal)
41  {
42  if(isdefined(self._equipment_activated_fx))
43  {
44  for(i = 0; i < self._equipment_activated_fx.size; i ++)
45  {
46  for(j = 0; j < self._equipment_activated_fx[i].size; j ++)
47  {
48  DeleteFX(i, self._equipment_activated_fx[i][j]);
49  }
50  }
51 
52  self._equipment_activated_fx = undefined;
53  }
54  }
55 }
56 
57 function ‪play_fx_for_all_clients(fx, tag, storeHandles = false, forward = undefined)
58 {
59  numLocalPlayers = GetLocalPlayers().size;
60 
61  if(!isdefined(self._equipment_activated_fx))
62  {
63  self._equipment_activated_fx = [];
64 
65  for(i = 0; i < numLocalPlayers; i ++)
66  {
67  self._equipment_activated_fx[i] = [];
68  }
69  }
70 
71 
72  if(isdefined(tag))
73  {
74  for(i = 0; i < numLocalPlayers; i ++)
75  {
76  if(storeHandles)
77  {
78  self._equipment_activated_fx[i][self._equipment_activated_fx[i].size] = PlayFXOnTag( i, fx, self, tag);
79  }
80  else
81  {
82  self_for_client = GetEntByNum( i, self GetEntityNumber() );
83  if (IsDefined(self_for_client))
84  {
85  PlayFXOnTag( i, fx, self_for_client, tag);
86  }
87  }
88  }
89  }
90  else
91  {
92  for(i = 0; i < numLocalPlayers; i ++)
93  {
94  if(storeHandles)
95  {
96  if(isdefined(forward))
97  {
98  self._equipment_activated_fx[i][self._equipment_activated_fx[i].size] = PlayFX( i, fx, self.origin, forward);
99  }
100  else
101  {
102  self._equipment_activated_fx[i][self._equipment_activated_fx[i].size] = PlayFX( i, fx, self.origin);
103  }
104  }
105  else
106  {
107  if(isdefined(forward))
108  {
109  PlayFX( i, fx, self.origin, forward);
110  }
111  else
112  {
113  PlayFX( i, fx, self.origin);
114  }
115  }
116  }
117  }
118 }
119 
120 function ‪is_included( equipment )
121 {
122  if ( !isdefined( level._included_equipment ) )
123  {
124  return false;
125  }
126 
127  return IsDefined( level._included_equipment[equipment.rootWeapon] );
128 }
129 
130 
131 function ‪include( equipment_name )
132 {
133  if ( !isdefined( level._included_equipment ) )
134  {
135  level._included_equipment = [];
136  }
137 
138  equipment = GetWeapon( equipment_name );
139  level._included_equipment[equipment] = equipment;
140 }
‪add_equip_activated_callback_override
‪function add_equip_activated_callback_override(model, func)
Definition: _zm_equipment.csc:28
‪is_included
‪function is_included(equipment)
Definition: _zm_equipment.csc:120
‪CF_CALLBACK_ZERO_ON_NEW_ENT
‪#define CF_CALLBACK_ZERO_ON_NEW_ENT
Definition: version.gsh:103
‪VERSION_SHIP
‪#define VERSION_SHIP
Definition: version.gsh:36
‪play_fx_for_all_clients
‪function play_fx_for_all_clients(fx, tag, storeHandles=false, forward=undefined)
Definition: _zm_equipment.csc:57
‪equipment_activated_clientfield_cb
‪function equipment_activated_clientfield_cb(localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump)
Definition: _zm_equipment.csc:33
‪IS_TRUE
‪#define IS_TRUE(__a)
Definition: shared.gsh:251
‪CLIENTFIELD_BUILDABLE_PIECE_COUNT
‪#define CLIENTFIELD_BUILDABLE_PIECE_COUNT
Definition: _zm_buildables.gsh:58
‪__init__
‪function __init__()
Definition: _zm_equipment.csc:16
‪CF_HOST_ONLY
‪#define CF_HOST_ONLY
Definition: version.gsh:102
‪REGISTER_SYSTEM
‪#define REGISTER_SYSTEM(__sys, __func_init_preload, __reqs)
Definition: shared.gsh:204
‪include
‪function include(equipment_name)
Definition: _zm_equipment.csc:131
‪register
‪function register()
Definition: _ai_tank.gsc:126