DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
PPERequesterBank.c
См. документацию.
1
4class PPERequesterBank extends Managed
5{
7 private static bool m_Initialized = false;
8
9 static int m_lastID = -1;
10
11 static const int INVALID = -1;
12 static const int REQ_INVENTORYBLUR = RegisterRequester(PPERequester_InventoryBlur);
13 static const int REQ_CONTROLLERDISCONNECT = RegisterRequester(PPERequester_ControllerDisconnectBlur);
14 static const int REQ_GLASSESSPORTBLACK = RegisterRequester(PPERequester_GlassesSportBlack);
15 static const int REQ_GLASSESSPORTBLUE = RegisterRequester(PPERequester_GlassesSportBlue);
16 static const int REQ_GLASSESSPORTGREEN = RegisterRequester(PPERequester_GlassesSportGreen);
17 static const int REQ_GLASSESSPORTORANGE = RegisterRequester(PPERequester_GlassesSportOrange);
18 static const int REQ_GLASSESAVIATOR = RegisterRequester(PPERequester_GlassesAviator);
19 static const int REQ_GLASSESDESIGNER = RegisterRequester(PPERequester_GlassesDesignerBlack);
20 static const int REQ_GLASSESTACTICAL = RegisterRequester(PPERequester_TacticalGoggles);
21 static const int REQ_MOTOHELMETBLACK = RegisterRequester(PPERequester_MotoHelmetBlack);
22 static const int REQ_GLASSESWELDING = RegisterRequester(PPERequester_WeldingMask);
23 static const int REQ_CAMERANV = RegisterRequester(PPERequester_CameraNV);
24 static const int REQ_CAMERAADS = RegisterRequester(PPERequester_CameraADS);
25 static const int REQ_BLOODLOSS = RegisterRequester(PPERequester_BloodLoss);
26 static const int REQ_DEATHEFFECTS = RegisterRequester(PPERequester_DeathDarkening);
27 static const int REQ_UNCONEFFECTS = RegisterRequester(PPERequester_UnconEffects);
28 static const int REQ_TUNELVISSION = RegisterRequester(PPERequester_TunnelVisionEffects);
29 static const int REQ_BURLAPSACK = RegisterRequester(PPERequester_BurlapSackEffects);
30 static const int REQ_INTROCHROMABB = RegisterRequester(PPERequester_IntroChromAbb);
31 static const int REQ_FEVEREFFECTS = RegisterRequester(PPERequester_FeverEffects);
32 static const int REQ_FLASHBANGEFFECTS = RegisterRequester(PPERequester_FlashbangEffects);
33 static const int REQ_SHOCKHITEFFECTS = RegisterRequester(PPERequester_ShockHitReaction);
34 static const int REQ_HEALTHHITEFFECTS = RegisterRequester(PPERequester_HealthHitReaction);
35 static const int REQ_MENUEFFECTS = RegisterRequester(PPERequester_MenuEffects);
36 static const int REQ_CONTROLLERBLUR = RegisterRequester(PPERequester_ControlsBlur);
37 static const int REQ_SERVERBROWSEREFFECTS = RegisterRequester(PPERequester_ServerBrowserBlur);
38 static const int REQ_TUTORIALEFFECTS = RegisterRequester(PPERequester_TutorialMenu);
39 static const int REQ_CONTAMINATEDAREA = RegisterRequester(PPERequester_ContaminatedAreaTint);
40 static const int REQ_SPOOKYAREA = RegisterRequester(PPERequester_SpookyAreaTint);
41 static const int REQ_PAINBLUR = RegisterRequester(PPERequester_PainBlur);
42 static const int REQ_UNDERGROUND = RegisterRequester(PPERUndergroundAcco);
43 static const int REQ_DROWNING = RegisterRequester(PPERequester_Drowning);
44 //static const int REQ_HMP_LVL3 = RegisterRequester(PPERequester_HeavyMetalPoisoning_3);
45 static const int REQ_HMP_GHOST = RegisterRequester(PPERequester_HMPGhosts);
46 static const int REQ_LATENCYBLUR = RegisterRequester(PPERequester_LatencyBlur);
47 static const int REQ_FEEDBACKBLUR = RegisterRequester(PPERequester_FeedbackBlur);
50
51 private static ref PPERequesterRegistrations m_Registrations; //more registrations to be placed here
52
53 static void Init()
54 {
56
57 if (!m_Instances)
59
60 m_Initialized = true;
61 }
62
63 static void Cleanup()
64 {
65 if (m_Initialized)
66 {
67 delete m_Registrations;
68 m_Instances.Clear();
69 }
70 }
71
78 static PPERequesterBase GetRequester(typename type)
79 {
80 if (!type)
81 {
82 Error("Requested type is NULL!");
83 return null;
84 }
85
88 for (int i = 0; i < m_Instances.Count(); i++)
89 {
90 temp = m_Instances.GetElement(i);
91 if (temp.Type() == type)
92 {
93 Class.CastTo(ret,temp);
94 break;
95 }
96 }
97
98 if (!ret)
99 {
100 Debug.Log("'" + type.ToString() + "' not found in bank! Register first in 'RegisterRequester' method.");
101 }
102 return ret;
103 }
104
112 {
113 PPERequesterBase ret = m_Instances.Get(index);
114
115 if (!ret)
116 {
117 Debug.Log("Requester idx '" + index + "' not found in bank! Register first in 'RegisterRequester' method.");
118 }
119 return ret;
120 }
121
128 static int GetRequesterID(typename type)
129 {
130 int ret = -1;
131 PPERequesterBase temp;
132
133 for (int i = 0; i < m_Instances.Count(); i++)
134 {
135 temp = m_Instances.GetElement(i);
136 if (temp.Type() == type)
137 {
138 ret = m_Instances.GetKey(i);
139 }
140 }
141
142 if ( ret == -1 )
143 {
144 Debug.Log("Requester instance of the '" + type.ToString() + "' type not found in bank! Register first in 'RegisterRequester' method.");
145 }
146 return ret;
147 }
148
154 static typename GetRequesterTypename(int index)
155 {
156 typename ret;
157 PPERequesterBase temp = m_Instances.Get(index);
158 if ( !temp )
159 {
160 Debug.Log("No requester exists under idx '" + index + "' in bank! Register first in 'RegisterRequester' method.");
161 }
162 else
163 {
164 ret = temp.Type();
165 }
166
167 return ret;
168 }
169
174 static int RegisterRequester(typename type)
175 {
176 if (!m_Instances)
178
179 if ( GetRequester(type) != null )
180 {
181 //Error("Trying to register an already existing requester type: " + type);
182 Debug.Log("Trying to register an already existing requester type: " + type);
183 return -1;
184 }
185
186 m_lastID++;
187
189 req = PPERequesterBase.Cast(type.Spawn());
191 m_Instances.Set(m_lastID,req);
192
193 return m_lastID;
194 }
195
198 {
199 if (!m_Initialized) //initial registrations are fair game
200 {
201 return true;
202 }
203
204 PPERequesterBase temp;
205 for (int i = 0; i < m_Instances.Count(); i++)
206 {
207 temp = m_Instances.GetElement(i);
208 if (temp == req)
209 {
210 return true;
211 }
212 }
213
214 //Error("Requester instance " + req + " not valid! Please use registered instances from PPERequesterBank.");
215 Debug.Log("Requester instance '" + req + "' not valid! Please use registered instances from PPERequesterBank.");
216 return false;
217 }
218
220 static bool IsRequesterRunning(typename type)
221 {
222 PPERequesterBase req = GetRequester(type);
223 if (req)
224 {
225 return req.IsRequesterRunning();
226 }
227 else
228 {
229 Debug.Log("'" + type.ToString() + "' not found in bank! Register first in 'RegisterRequester' method.");
230 }
231
232 return false;
233 }
234
236 static bool IsRequesterRunning(int index)
237 {
238 PPERequesterBase req = GetRequester(index);
239 if (req)
240 {
241 return req.IsRequesterRunning();
242 }
243 else
244 {
245 Debug.Log("Requester idx '" + index + "' not found in bank! Register first in 'RegisterRequester' method.");
246 }
247
248 return false;
249 }
250
251 /*static void DumpInstances()
252 {
253 Print("DumpInstances");
254 for (int i = 0; i < m_Instances.Count(); i++)
255 {
256 Print(m_Instances.GetKey(i));
257 Print(m_Instances.GetElement(i));
258 }
259 }*/
260}
261
264{
268 }
272 //PPERequesterBank.RegisterRequester(TestReq);
276/*modded class PPERequesterRegistrations extends Managed
278 override protected void RegisterAdditionalRequesters()
280 PPERequesterBank.RegisterRequester(TestReq2);
282}*/
void RegisterAdditionalRequesters()
Определения PPERequesterBank.c:270
class PPERequesterBank extends Managed PPERequesterRegistrations()
Mod this, if you wish to register custom requesters inside 'RegisterAdditionalRequesters' override.
Определения PPERequesterBank.c:265
PPERUndergroundAcco GetRequester()
Определения UndergroundHandlerClient.c:56
Super root of all classes in Enforce script.
Определения EnScript.c:11
static void Log(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
Prints debug message with normal prio.
Определения 3_Game/DayZ/tools/Debug.c:183
Определения 3_Game/DayZ/tools/Debug.c:2
static const int REQ_GLASSESWELDING
Определения PPERequesterBank.c:22
static const int REQ_SANDSTORMEFFECT
Определения PPERequesterBank.c:49
static const int REQ_FEEDBACKBLUR
Определения PPERequesterBank.c:47
static const int REQ_SERVERBROWSEREFFECTS
Определения PPERequesterBank.c:37
static const int REQ_GLASSESSPORTBLACK
Определения PPERequesterBank.c:14
static const int REQ_GLASSESSPORTORANGE
Определения PPERequesterBank.c:17
static bool IsRequesterRunning(typename type)
Check if specific requester is active (started) based on type name.
Определения PPERequesterBank.c:220
static const int REQ_TUTORIALEFFECTS
Определения PPERequesterBank.c:38
static const int REQ_MENUEFFECTS
Определения PPERequesterBank.c:35
static const int REQ_FLASHBANGEFFECTS
Определения PPERequesterBank.c:32
static const int REQ_GLASSESAVIATOR
Определения PPERequesterBank.c:18
static const int REQ_GLASSESSPORTGREEN
Определения PPERequesterBank.c:16
static const int REQ_DEATHEFFECTS
Определения PPERequesterBank.c:26
static void Init()
Определения PPERequesterBank.c:53
static const int REQ_SPOOKYAREA
Определения PPERequesterBank.c:40
static const int INVALID
Определения PPERequesterBank.c:11
static GetRequesterTypename(int index)
Returns a typename from a requester ID.
Определения PPERequesterBank.c:154
static const int REQ_INTROCHROMABB
Определения PPERequesterBank.c:30
static const int REQ_HMP_GHOST
Определения PPERequesterBank.c:45
static const int REQ_DROWNING
Определения PPERequesterBank.c:43
static ref PPERequesterRegistrations m_Registrations
Определения PPERequesterBank.c:51
static const int REQ_LATENCYBLUR
Определения PPERequesterBank.c:46
static const int REQ_CAMERAADS
Определения PPERequesterBank.c:24
static const int REQ_CONTAMINATEDAREA
Определения PPERequesterBank.c:39
static PPERequesterBase GetRequester(int index)
Returns an instance (singleton) of a requester based on index.
Определения PPERequesterBank.c:111
static const int REQ_SQUINT
Определения PPERequesterBank.c:48
static const int REQ_INVENTORYBLUR
Определения PPERequesterBank.c:12
static const int REQ_UNCONEFFECTS
Определения PPERequesterBank.c:27
static int GetRequesterID(typename type)
Returns an ID of a requester type.
Определения PPERequesterBank.c:128
static bool IsRequesterRunning(int index)
Check if specific requester is active (started) based on requester ID (index)
Определения PPERequesterBank.c:236
static bool m_Initialized
Определения PPERequesterBank.c:7
static const int REQ_MOTOHELMETBLACK
Определения PPERequesterBank.c:21
static const int REQ_PAINBLUR
Определения PPERequesterBank.c:41
static ref map< int, ref PPERequesterBase > m_Instances
Определения PPERequesterBank.c:6
static const int REQ_FEVEREFFECTS
Определения PPERequesterBank.c:31
static const int REQ_BURLAPSACK
Определения PPERequesterBank.c:29
static const int REQ_CONTROLLERBLUR
Определения PPERequesterBank.c:36
static const int REQ_CAMERANV
Определения PPERequesterBank.c:23
static const int REQ_UNDERGROUND
Определения PPERequesterBank.c:42
static int m_lastID
Определения PPERequesterBank.c:9
static void Cleanup()
Определения PPERequesterBank.c:63
static PPERequesterBase GetRequester(typename type)
Returns an instance (singleton) of a requester based on typename.
Определения PPERequesterBank.c:78
static const int REQ_HEALTHHITEFFECTS
Определения PPERequesterBank.c:34
static const int REQ_GLASSESDESIGNER
Определения PPERequesterBank.c:19
static int RegisterRequester(typename type)
Registers new requester type.
Определения PPERequesterBank.c:174
static const int REQ_CONTROLLERDISCONNECT
Определения PPERequesterBank.c:13
static const int REQ_TUNELVISSION
Определения PPERequesterBank.c:28
static const int REQ_SHOCKHITEFFECTS
Определения PPERequesterBank.c:33
static const int REQ_BLOODLOSS
Определения PPERequesterBank.c:25
static const int REQ_GLASSESSPORTBLUE
Определения PPERequesterBank.c:15
static const int REQ_GLASSESTACTICAL
Определения PPERequesterBank.c:20
static bool VerifyRequester(PPERequesterBase req)
Verifies the instance.
Определения PPERequesterBank.c:197
TODO doc.
Определения EnScript.c:118
bool IsRequesterRunning()
Определения PPERequestPlatformsBase.c:53
void SetRequesterIDX(int idx)
automatically assigned by PPERequesterBank
Определения PPERequestPlatformsBase.c:59
Определения Transport.c:70
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.