DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ GetControlMappingInfo()

array< ref JsonControlMappingInfo > UIScriptedMenu::GetControlMappingInfo ( )
inlineprotected

См. определение в файле TutorialsMenu.c строка 315

316 {
317 array<ref JsonControlMappingInfo> control_mapping_info = new array<ref JsonControlMappingInfo>;
318 string file_path = PATH_MOUSEKEY; //remains set for PC vatiant
319 string profile_name = "";
320 GetGame().GetInput().GetProfileName(GetGame().GetInput().GetCurrentProfile(),profile_name);
321
322#ifdef PLATFORM_CONSOLE
323 if (!GetGame().GetInput().IsEnabledMouseAndKeyboardEvenOnServer())
324 {
325 if (profile_name == "#STR_UAPRESET_0")
326 {
327 #ifdef PLATFORM_XBOX
328 file_path = PATH_X1_OLD;
329 #else
330 file_path = PATH_PS_OLD;
331 #endif
332 }
333 else if (profile_name == "#STR_UAPRESET_1")
334 {
335 #ifdef PLATFORM_XBOX
336 file_path = PATH_X1_NEW;
337 #else
338 file_path = PATH_PS_NEW;
339 #endif
340 }
341 else
342 {
343 ErrorEx("Invalid file path!");
344 file_path = "";
345 }
346 }
347#endif
348 FileHandle file_handle = OpenFile(file_path, FileMode.READ);
349 JsonSerializer js = new JsonSerializer();
350
351 string js_error = "";
352 string line_content = "";
353 string content = "";
354 if (file_handle)
355 {
356 while (FGets(file_handle, line_content) >= 0)
357 {
358 content += line_content;
359 }
360 CloseFile(file_handle);
361
362 if (js.ReadFromString(control_mapping_info, content, js_error))
363 {
364 return control_mapping_info;
365 }
366 else
367 {
368 ErrorEx("JSON ERROR => [TutorialsMenu]: " + js_error);
369 }
370 }
371 else
372 {
373 ErrorEx("FILEHANDLE ERROR => [TutorialsMenu]: " + js_error);
374 }
375
376 return control_mapping_info;
377 }
proto native Input GetInput()
proto int GetProfileName(int profile_index, out string name)
gets profile by index
proto bool ReadFromString(void variable_in, string jsonString, out string error)
Json string deserialization to script variable.
const string PATH_PS_OLD
Определения TutorialsMenu.c:6
const string PATH_MOUSEKEY
Определения TutorialsMenu.c:3
const string PATH_X1_NEW
Определения TutorialsMenu.c:5
const string PATH_PS_NEW
Определения TutorialsMenu.c:7
const string PATH_X1_OLD
Определения TutorialsMenu.c:4
proto native CGame GetGame()
enum ShapeType ErrorEx
FileMode
Определения EnSystem.c:383
proto void CloseFile(FileHandle file)
Close the File.
proto int FGets(FileHandle file, string var)
Get line from file, every next call of this function returns next line.
proto FileHandle OpenFile(string name, FileMode mode)
Opens File.
int[] FileHandle
Определения EnSystem.c:390

Перекрестные ссылки CloseFile(), ErrorEx, FGets(), GetGame(), CGame::GetInput(), Input::GetProfileName(), OpenFile(), PATH_MOUSEKEY, PATH_PS_NEW, PATH_PS_OLD, PATH_X1_NEW, PATH_X1_OLD и JsonSerializer::ReadFromString().

Используется в DrawConnectingLines() и DrawConnectingLines().