DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
DayZIntroSceneXbox.c
См. документацию.
2{
3 protected bool m_IsCharFemale;
5
13
16 protected Weather m_Weather;
17 protected Object m_Clutter;
20 protected ref TIntArray m_Date = new TIntArray;
21
23
27
32
33 //==================================
34 // DayZIntroSceneXbox
35 //==================================
37 {
38 m_MenuData = g_Game.GetMenuData();
39
40 m_LastPlayedCharacterID = m_MenuData.GetLastPlayedCharacter();
41 m_CharacterPos = "0 0 0";
42 m_CharacterDir = "0 0 0";
43
44 //g_Game.m_PlayerName = "Survivor"; //default
45 if ( m_MenuData.GetCharactersCount() == 0 )
46 {
48 }
49
50 if ( m_LastPlayedCharacterID > -1 )
51 {
52 m_MenuData.GetCharacterName(m_LastPlayedCharacterID, g_Game.GetPlayerGameName());
53 }
54
55 // Camera Setup
56 vector camera_position;
57 camera_position[0] = 1323.0; // X
58 camera_position[1] = 1.0; // Y
59 camera_position[2] = 1590.37; // Z
60 float camera_rotation_h = 100;
61 float camera_rotation_v = -3;
62 float camera_fov = 0.85;
63 float camera_focus_distance = 0.0;
64 float camera_focus_streght = 0.0;
65
66 // Character
67 float character_distance = 2.25;
68
69 // Camera Setup
70 m_SceneCamera = CameraCreate(camera_position, camera_rotation_h, camera_rotation_v, camera_fov, camera_focus_distance, camera_focus_streght);
71 m_SceneCamera.SetActive(true);
72
73 PPEffects.Init(); //Deprecated, left in for legacy purposes only
74
75 // Character Setup
76 vector cam_dir = m_SceneCamera.GetDirection();
77 m_CharacterPos = camera_position + ( cam_dir * character_distance );
79 m_CharacterDir = (camera_position - m_CharacterPos);
80
81 float overcast = 0.42;
82 float rain = 0.0;
83 float fog = 0.0;
84
85 m_Weather = g_Game.GetWeather();
86 m_Weather.GetOvercast().SetLimits(overcast, overcast);
87 m_Weather.GetRain().SetLimits(rain, rain);
88 m_Weather.GetFog().SetLimits(fog, fog);
89
90 m_Weather.GetOvercast().Set(overcast, 0, 0);
91 m_Weather.GetRain().Set(rain, 0, 0);
92 m_Weather.GetFog().Set(fog, 0, 0);
93
95 m_Character.LoadCharacterData(m_CharacterPos, m_CharacterDir);
96
97 m_TimerParticle.Run(0.1, this, "SetupParticles", null, false);
98 //m_TimerDate.Run(2.0, this, "SetupDate", null, false);
99 m_TimerUpdate.Run(0.5, this, "SetupCharacter", null, true);
100
101 vector clut_pos = SnapToGround( m_CharacterPos + "-1 0 0" );
102 m_Clutter = GetGame().CreateObject( "ClutterCutter2x2", clut_pos, true );
103
104 // Xbox check update
106
107 g_Game.SetHudBrightness(g_Game.GetHUDBrightnessSetting());
108
110 }
111
113 {
114 if ( m_TimerUpdate )
115 {
116 m_TimerUpdate.Stop();
117 delete m_TimerUpdate;
118 m_TimerUpdate = null;
119 }
120
121 if ( m_TimerParticle )
122 {
123 m_TimerParticle.Stop();
124 delete m_TimerParticle;
125 m_TimerParticle = null;
126 }
127
128
129 if ( m_TimerDate )
130 {
131 m_TimerDate.Stop();
132 delete m_TimerDate;
133 m_TimerDate = null;
134 }
135
137
139
140 if ( m_MenuData )
141 {
142 m_MenuData.ClearCharacters();
143 }
144
148
150 }
151
152 protected void SetInitPostprocesses()
153 {
154 PPERequester_MenuEffects requester;
155 Class.CastTo(requester,PPERequesterBank.GetRequester(PPERequester_MenuEffects));
156
157 requester.SetVignetteIntensity(0.3);
158 PPERequesterBank.GetRequester(PPERequester_IntroChromAbb).Start();
159 }
160
161 //==============================================
162 // GetIntroSceneCharacter
163 //==============================================
168
169 //==================================
170 // SetupCharacter
171 //==================================
173 {
174 if ( m_Character.GetCharacterObj() )
175 {
176 vector v = m_Character.GetCharacterObj().GetOrientation();
177 v[0] = -75;
178 m_Character.GetCharacterObj().SetOrientation(v);
179 }
180 }
181
182 //==================================
183 // SetupParticles
184 //==================================
186 {
188 //SEffectManager.PlayInWorld(m_FXParticleCarSmoke, "1330.36 2.11628 1594.31");
189 //SEffectManager.PlayInWorld(m_FXParticleCarSmoke, "1333.88 1.51392 1594.88");
190 SEffectManager.PlayInWorld(m_FXParticleCarSmoke, "1331.52 2.34052 1593.55");
191
192 vector pos = m_SceneCamera.GetPosition() + m_SceneCamera.GetDirection() * 1.5;
193 vector dir = m_SceneCamera.GetDirection();
194 float temp = dir[0];
195 dir[0] = dir[2];
196 dir[2] = -temp;
197
198 vector pos_right = pos + (dir * 1.5);
199 vector pos_left = pos + (-dir * 1.5);
200
203
206 }
207
208 //==================================
209 // SetupDate
210 //==================================
212 {
213 //g_Game.GetWorld().SetDate(m_Date.Get(0), m_Date.Get(1), m_Date.Get(2), m_Date.Get(3), m_Date.Get(4));
214 //g_Game.GetWorld().SetDate(2020, 10, 15, 18, 20);
215 }
216
217 //==================================
218 // CheckXboxClientUpdateLoopStart
219 //==================================
221 {
222 if ( CheckXboxClientUpdate() )
223 {
224 m_TimerClientUpdate.Run(30, this, "CheckXboxClientUpdate", null, true);
225 }
226 }
227
228 //==================================
229 // CheckXboxClientUpdateLoopStop
230 //==================================
232 {
234 {
235 m_TimerClientUpdate.Stop();
236 delete m_TimerClientUpdate;
237 m_TimerClientUpdate = null;
238 }
239 }
240
241 //==================================
242 // CheckXboxClientUpdate
243 //==================================
245 {
247 }
248
249 //==================================
250 // CameraCreate
251 //==================================
252 protected Camera CameraCreate(vector cam_pos, float cam_rot_h, float cam_rot_v, float cam_fov, float cam_focus_dist, float cam_focus_strg)
253 {
254 Camera cam = Camera.Cast( g_Game.CreateObject("staticcamera", SnapToGround(cam_pos), true));
255 cam.SetOrientation( Vector( cam_rot_h, cam_rot_v, 0) );
256 cam.SetFOV( cam_fov );
257 cam.SetFocus(cam_focus_dist, cam_focus_strg);
258
259 return cam;
260 }
261
262 //==================================
263 // GetCamera
264 //==================================
266 {
267 return m_SceneCamera;
268 }
269
270 //==================================
271 // ResetIntroCamera
272 //==================================
274 {
275
276 }
277
278 //==================================
279 // SetCharacterFemale
280 //==================================
281 void SetCharacterFemale(bool fem)
282 {
283 m_IsCharFemale = fem;
284 }
285
286 //==================================
287 // IsCharacterFemale
288 //==================================
290 {
291 return m_IsCharFemale;
292 }
293
294 //==================================
295 // CreateRandomCharacter
296 //==================================
298 {
299 string character_name;
300 string params[2];
301
303
304 if (m_IsCharFemale)
305 {
306 character_name = m_CharPersonalityFemaleList.GetRandomElement();
307 }
308 else
309 {
310 character_name = m_CharPersonalityMaleList.GetRandomElement();
311 }
312
314 }
315
317 {
318 string name;
319 BiosUserManager user_manager = GetGame().GetUserManager();
320 if( user_manager )
321 {
322 BiosUser user = user_manager.GetSelectedUser();
323 if( user )
324 {
325 g_Game.SetPlayerGameName( user.GetName() );
326 return;
327 }
328 }
330 }
331
333 {
334 if (m_Character.GetCharacterObj())
335 {
336 m_Character.GetCharacterObj().SetPosition(m_CharacterPos);
337 m_Character.GetCharacterObj().SetDirection(m_CharacterDir.Normalized() );
338 }
339 }
340
341 void SaveCharName( string name )
342 {
343 GetDayZGame().InitCharacterMenuDataInfo(m_MenuData.GetCharactersCount());
344
345 //if (!GetDayZGame().IsNewCharacter() && m_LastPlayedCharacterID > -1)
346 //{
347 m_MenuData.SetCharacterName(m_LastPlayedCharacterID, name);
348 //}
349 if (m_Character.IsDefaultCharacter())
350 {
352 }
353 m_MenuData.SaveCharactersLocal();
354 }
355
356 // ------------------------------------------------------------
358 {
359 float pos_x = pos[0];
360 float pos_z = pos[2];
361 float pos_y = GetGame().SurfaceY(pos_x, pos_z);
362 vector tmp_pos = Vector(pos_x, pos_y, pos_z);
363 tmp_pos[1] = tmp_pos[1] + pos[1];
364
365 return tmp_pos;
366 }
367};
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
DayZGame g_Game
Определения DayZGame.c:3868
DayZGame GetDayZGame()
Определения DayZGame.c:3870
PPERequesterCategory
Определения PPEConstants.c:29
proto native owned string GetName()
Определения BiosUserManager.c:9
proto native BiosUser GetSelectedUser()
Returns the currently selected user.
proto native float SurfaceY(float x, float z)
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1187
proto native Object CreateObject(string type, vector pos, bool create_local=false, bool init_ai=false, bool create_physics=true)
Creates object of certain type.
proto native BiosUserManager GetUserManager()
MenuDefaultCharacterData GetMenuDefaultCharacterData(bool fill_data=true)
Определения Game.c:1493
proto native void ObjectDelete(Object obj)
Определения Camera.c:85
Super root of all classes in Enforce script.
Определения EnScript.c:11
bool IsCharacterFemale()
Определения DayZIntroSceneXbox.c:289
vector SnapToGround(vector pos)
Определения DayZIntroSceneXbox.c:357
ref TStringArray m_CharShirtList
Определения DayZIntroSceneXbox.c:9
Camera m_SceneCamera
Определения DayZIntroSceneXbox.c:15
ref Timer m_TimerParticle
Определения DayZIntroSceneXbox.c:29
Camera CameraCreate(vector cam_pos, float cam_rot_h, float cam_rot_v, float cam_fov, float cam_focus_dist, float cam_focus_strg)
Определения DayZIntroSceneXbox.c:252
ref TStringArray m_CharPersonalityFemaleList
Определения DayZIntroSceneXbox.c:8
ref TStringArray m_CharShoesList
Определения DayZIntroSceneXbox.c:11
ref MenuEvaporation m_FXParticleStreamLeft
Определения DayZIntroSceneXbox.c:25
MenuData m_MenuData
Определения DayZIntroSceneXbox.c:22
void CreateRandomCharacter()
Определения DayZIntroSceneXbox.c:297
ref TStringArray m_CharPantsList
Определения DayZIntroSceneXbox.c:10
void SetupParticles()
Определения DayZIntroSceneXbox.c:185
ref TStringArray m_genderList
Определения DayZIntroSceneXbox.c:6
void ~DayZIntroSceneXbox()
Определения DayZIntroSceneXbox.c:112
ref MenuEvaporation m_FXParticleStreamRight
Определения DayZIntroSceneXbox.c:26
void SetupCharacter()
Определения DayZIntroSceneXbox.c:172
Weather m_Weather
Определения DayZIntroSceneXbox.c:16
void CheckXboxClientUpdateLoopStart()
Определения DayZIntroSceneXbox.c:220
ref Timer m_TimerDate
Определения DayZIntroSceneXbox.c:30
bool m_IsCharFemale
Определения DayZIntroSceneXbox.c:3
ref IntroSceneCharacter m_Character
Определения DayZIntroSceneXbox.c:14
bool CheckXboxClientUpdate()
Определения DayZIntroSceneXbox.c:244
void SetInitPostprocesses()
Определения DayZIntroSceneXbox.c:152
void UpdateCharacterPos()
Определения DayZIntroSceneXbox.c:332
void UpdateSelectedUserName()
Определения DayZIntroSceneXbox.c:316
vector m_CharacterPos
Определения DayZIntroSceneXbox.c:18
void SetupDate()
Определения DayZIntroSceneXbox.c:211
void SaveCharName(string name)
Определения DayZIntroSceneXbox.c:341
ref TStringArray m_CharPersonalityMaleList
Определения DayZIntroSceneXbox.c:7
ref Timer m_TimerClientUpdate
Определения DayZIntroSceneXbox.c:31
void DayZIntroSceneXbox()
Определения DayZIntroSceneXbox.c:36
ref TIntArray m_Date
Определения DayZIntroSceneXbox.c:20
Camera GetCamera()
Определения DayZIntroSceneXbox.c:265
int m_LastPlayedCharacterID
Определения DayZIntroSceneXbox.c:4
vector m_CharacterDir
Определения DayZIntroSceneXbox.c:19
IntroSceneCharacter GetIntroCharacter()
Определения DayZIntroSceneXbox.c:164
void CheckXboxClientUpdateLoopStop()
Определения DayZIntroSceneXbox.c:231
void ResetIntroCamera()
Определения DayZIntroSceneXbox.c:273
ref Timer m_TimerUpdate
Определения DayZIntroSceneXbox.c:28
ref TStringArray m_AllCharacters
Определения DayZIntroSceneXbox.c:12
Object m_Clutter
Определения DayZIntroSceneXbox.c:17
void SetCharacterFemale(bool fem)
Определения DayZIntroSceneXbox.c:281
ref MenuCarEngineSmoke m_FXParticleCarSmoke
Определения DayZIntroSceneXbox.c:24
Определения constants.c:659
void IntroSceneCharacter()
Определения IntroSceneCharacter.c:19
TODO doc.
Определения EnScript.c:118
Определения EnMath.c:7
Определения gameplay.c:918
void SetCharacterName(string name)
Определения gameplay.c:1095
Определения MenuEvaporation.c:2
Определения ObjectTyped.c:2
static bool CheckUpdate()
Определения OnlineServices.c:723
Определения OnlineServices.c:2
static PPEManager GetPPEManager()
Returns the manager instance singleton.
Определения PPEManager.c:27
Static component of PPE manager, used to hold the instance.
Определения PPEManager.c:3
static void Init()
Определения PPEffects.c:52
Deprecated; 'PPEManager' used instead.
Определения PPEffects.c:3
static int PlayInWorld(notnull Effect eff, vector pos)
Play an Effect.
Определения EffectManager.c:47
static void DestroyEffect(Effect effect)
Unregisters, stops and frees the Effect.
Определения EffectManager.c:271
Manager class for managing Effect (EffectParticle, EffectSound)
Определения EffectManager.c:6
proto void Call(func fn, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
Определения DayZPlayerImplement.c:63
Определения Weather.c:165
Определения EnConvert.c:106
proto native CGame GetGame()
const string DEFAULT_CHARACTER_NAME
Определения constants.c:980
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
array< string > TStringArray
Определения EnScript.c:685
array< int > TIntArray
Определения EnScript.c:687
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static proto int RandomInt(int min, int max)
Returns a random int number between and min [inclusive] and max [exclusive].
const int CALL_CATEGORY_GAMEPLAY
Определения tools.c:10
const int CALL_CATEGORY_GUI
Определения tools.c:9