DayZ Scripts
v1.21.156300 ยท Jun 20, 2023
 
Loading...
Searching...
No Matches
SceneData.c
Go to the documentation of this file.
2{
3 protected string m_NameScene;
4 protected string m_NameMission;
5 protected float m_InitTime;
6 protected int m_DateInitYear;
7 protected int m_DateInitMonth;
8 protected int m_DateInitDay;
9 protected int m_DateInitHour;
10 protected int m_DateInitMinute;
11 protected float m_WeaterInitOvercast;
12 protected float m_WeaterInitRain;
13 protected float m_WeaterInitFog;
14 protected float m_WeaterInitWindForce;
15
19
20 //========================================
21 // Constructor -> SceneData
22 //========================================
23 void SceneData()
24 {
28 }
29
30 //========================================
31 // GetSceneObjects
32 //========================================
34 {
35 return m_Objects;
36 }
37
38 //========================================
39 // GetScenePlayers
40 //========================================
42 {
43 return m_Players;
44 }
45
46 //========================================
47 // GetSceneObjectsAll
48 //========================================
50 {
53
54 m_AllObjs.Clear();
55
56 foreach (auto p: scene_players)
57 {
58 m_AllObjs.Insert(p);
59 }
60
61 foreach (auto o: scene_object)
62 {
63 m_AllObjs.Insert(o);
64 }
65
66
67
68 return m_AllObjs;
69 }
70
71 //========================================
72 // GetNameScene
73 //========================================
74 string GetNameScene()
75 {
76 return m_NameScene;
77 }
78
79 //========================================
80 // SetNameScene
81 //========================================
82 void SetNameScene(string name)
83 {
85 }
86
87 //========================================
88 // GetNameMission
89 //========================================
91 {
92 return m_NameMission;
93 }
94
95 //========================================
96 // SetNameMission
97 //========================================
98 void SetNameMission(string name)
99 {
101 }
102
103 //========================================
104 // GetInitTime
105 //========================================
107 {
108 return m_InitTime;
109 }
110
111 //========================================
112 // SetInitTime
113 //========================================
114 void SetInitTime(float time)
115 {
116 m_InitTime = time;
117 }
118
119
120 //========================================
121 // GetInitYear
122 //========================================
124 {
125 return m_DateInitYear;
126 }
127
128 //========================================
129 // SetInitYear
130 //========================================
131 void SetInitYear(int value)
132 {
133 m_DateInitYear = value;
135 }
136
137 //========================================
138 // GetInitMonth
139 //========================================
141 {
142 return m_DateInitMonth;
143 }
144
145 //========================================
146 // SetInitMonth
147 //========================================
148 void SetInitMonth(int value)
149 {
150 m_DateInitMonth = value;
152 }
153
154 //========================================
155 // GetInitDay
156 //========================================
158 {
159 return m_DateInitDay;
160 }
161
162 //========================================
163 // SetInitDay
164 //========================================
165 void SetInitDay(int value)
166 {
167 m_DateInitDay = value;
169 }
170
171 //========================================
172 // GetInitHour
173 //========================================
175 {
176 return m_DateInitHour;
177 }
178
179 //========================================
180 // SetInitHour
181 //========================================
182 void SetInitHour(int value)
183 {
184 m_DateInitHour = value;
186 }
187
188 //========================================
189 // GetInitMinute
190 //========================================
192 {
193 return m_DateInitMinute;
194 }
195
196 //========================================
197 // SetInitMinute
198 //========================================
199 void SetInitMinute(int value)
200 {
201 m_DateInitMinute = value;
203 }
204
205 //========================================
206 // GetInitOvercast
207 //========================================
209 {
211 }
212
213 //========================================
214 // SetInitOvercast
215 //========================================
216 void SetInitOvercast(float value)
217 {
218 m_WeaterInitOvercast = value;
219 GetGame().GetWeather().GetOvercast().Set( value, 0, 1000 );
220 }
221
222 //========================================
223 // GetInitRain
224 //========================================
226 {
227 return m_WeaterInitRain;
228 }
229
230 //========================================
231 // SetInitRain
232 //========================================
233 void SetInitRain(float value)
234 {
235 m_WeaterInitRain = value;
236 GetGame().GetWeather().GetRain().Set( value, 0, 1000 );
237 }
238
239 //========================================
240 // GetInitFog
241 //========================================
243 {
244 return m_WeaterInitFog;
245 }
246
247 //========================================
248 // SetInitFog
249 //========================================
250 void SetInitFog(float value)
251 {
252 m_WeaterInitFog = value;
253 GetGame().GetWeather().GetFog().Set( value, 0, 1000 );
254 }
255
256 //========================================
257 // GetInitWindForce
258 //========================================
260 {
262 }
263
264 //========================================
265 // SetInitWindForce
266 //========================================
267 void SetInitWindForce(float value)
268 {
269 // The following method SetWindSpeed does not support smaller values than 0.1!
270 if (value > 0.1)
271 {
272 m_WeaterInitWindForce = value;
273 }
274 else
275 {
277 }
278
280 }
281
282 //========================================
283 // CreateSceneObject
284 //========================================
286 {
287 SceneObject sc_obj = new SceneObject();
288 sc_obj.Init(obj_name, pos);
289
290 if ( sc_obj != NULL )
291 {
292 m_Objects.Insert(sc_obj);
293
294 return sc_obj;
295 }
296
297 return NULL;
298 }
299
300 //========================================
301 // CreateScenePlayer
302 //========================================
303 ScenePlayer CreateScenePlayer()
304 {
305 ScenePlayer sc_ply = new ScenePlayer();
306 sc_ply.Init(STRING_EMPTY, Vector(0,0,0));
307
308 m_Players.Insert(sc_ply);
309//PrintString("CreateScenePlayer Add => "+ m_Players.Count().ToString() );
310 return sc_ply;
311 }
312
313 //========================================
314 // Clear
315 //========================================
316 void Clear()
317 {
318 m_Objects.Clear();
319 m_Players.Clear();
320 m_AllObjs.Clear();
321 }
322
323 //========================================
324 // AddObject
325 //========================================
327 {
328 SceneObject sc_obj = new SceneObject();
329 sc_obj.Init("player", e.GetPosition());
330
331 sc_obj.LinkEntityAI( e );
332
333 if ( sc_obj.IsPlayer() )
334 {
335 m_Players.Insert( ScenePlayer.Cast( sc_obj ) );
336 }
337 else
338 {
339 m_Objects.Insert( sc_obj );
340 }
341
342 return sc_obj;
343 }
344
345 //========================================
346 // GetSceneObjectByEntityAI
347 //========================================
349 {
350 for ( int i = 0; i < m_Players.Count(); ++i )
351 {
352 EntityAI ply = m_Players.Get(i).GetObject();
353
354 if ( ply != NULL && ply == e )
355 {
356 return m_Players.Get(i);
357 }
358 }
359
360 for ( int j = 0; j < m_Objects.Count(); ++j )
361 {
362 EntityAI obj = m_Objects.Get(j).GetObject();
363
364 if ( obj != NULL && obj == e )
365 {
366 return m_Objects.Get(j);
367 }
368 }
369
370 return NULL;
371 }
372
373 //========================================
374 // DeleteSceneObject
375 //========================================
377 {
378 int index_p = m_Players.Find( ScenePlayer.Cast( scene_object ) );
379
380 if ( index_p != -1 )
381 {
382 m_Players.Remove(index_p);
383 }
384
385
386 int index_o = m_Objects.Find(scene_object);
387
388 if ( index_o != -1 )
389 {
390 m_Objects.Remove(index_o);
391 }
392 }
393}
string name
proto native World GetWorld()
proto native Weather GetWeather()
Returns weather controller object.
int GetInitMinute()
Definition SceneData.c:191
void SetInitWindForce(float value)
Definition SceneData.c:267
protected float m_WeaterInitWindForce
Definition SceneData.c:14
string GetNameMission()
Definition SceneData.c:90
protected float m_WeaterInitRain
Definition SceneData.c:12
protected ref array< ref SceneObject > m_Objects
Definition SceneData.c:16
void SetInitMinute(int value)
Definition SceneData.c:199
void SetInitFog(float value)
Definition SceneData.c:250
float GetInitFog()
Definition SceneData.c:242
void SceneData()
Definition SceneData.c:23
array< ref SceneObject > GetSceneObjects()
Definition SceneData.c:33
protected int m_DateInitMonth
Definition SceneData.c:7
int GetInitDay()
Definition SceneData.c:157
protected ref array< ref SceneObject > m_AllObjs
Definition SceneData.c:18
protected float m_WeaterInitOvercast
Definition SceneData.c:11
array< ref ScenePlayer > GetScenePlayers()
Definition SceneData.c:41
int GetInitHour()
Definition SceneData.c:174
protected ref array< ref ScenePlayer > m_Players
Definition SceneData.c:17
SceneObject CreateSceneObject(string obj_name, vector pos)
Definition SceneData.c:285
void DeleteSceneObject(SceneObject scene_object)
Definition SceneData.c:376
protected string m_NameMission
Definition SceneData.c:4
void SetInitMonth(int value)
Definition SceneData.c:148
void SetInitHour(int value)
Definition SceneData.c:182
void SetInitTime(float time)
Definition SceneData.c:114
float GetInitRain()
Definition SceneData.c:225
void SetInitRain(float value)
Definition SceneData.c:233
float GetInitTime()
Definition SceneData.c:106
void SetInitDay(int value)
Definition SceneData.c:165
string GetNameScene()
Definition SceneData.c:74
void SetNameScene(string name)
Definition SceneData.c:82
protected float m_InitTime
Definition SceneData.c:5
array< ref SceneObject > GetSceneObjectsAll()
Definition SceneData.c:49
void Clear()
Definition SceneData.c:316
protected string m_NameScene
Definition SceneData.c:3
SceneObject AddObject(EntityAI e)
Definition SceneData.c:326
protected int m_DateInitYear
Definition SceneData.c:6
float GetInitOvercast()
Definition SceneData.c:208
protected int m_DateInitMinute
Definition SceneData.c:10
void SetInitOvercast(float value)
Definition SceneData.c:216
int GetInitMonth()
Definition SceneData.c:140
protected float m_WeaterInitFog
Definition SceneData.c:13
protected int m_DateInitHour
Definition SceneData.c:9
int GetInitYear()
Definition SceneData.c:123
ScenePlayer CreateScenePlayer()
Definition SceneData.c:303
void SetNameMission(string name)
Definition SceneData.c:98
SceneObject GetSceneObjectByEntityAI(EntityAI e)
Definition SceneData.c:348
protected int m_DateInitDay
Definition SceneData.c:8
void SetInitYear(int value)
Definition SceneData.c:131
float GetInitWindForce()
Definition SceneData.c:259
bool IsPlayer()
Definition SceneObject.c:75
void LinkEntityAI(EntityAI e)
SceneObject Init(string obj_name, vector pos)
Definition SceneObject.c:20
proto native void SetWindSpeed(float speed)
Sets the actual wind speed in metre per second.
proto native Overcast GetOvercast()
Returns an overcast phenomenon object.
proto native Rain GetRain()
Returns a rain phenomenon object.
proto native Fog GetFog()
Returns a fog phenomenon object.
proto native void Set(float forecast, float time=0, float minDuration=0)
Sets the forecast.
proto native void SetDate(int year, int month, int day, int hour, int minute)
Sets actual ingame world time.
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto native CGame GetGame()
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
const string STRING_EMPTY
Definition constants.c:54