mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-13 19:52:38 +03:00
2035 lines
119 KiB
Plaintext
2035 lines
119 KiB
Plaintext
/*%FSM<COMPILE "C:\Program Files (x86)\Steam\steamapps\common\Arma 3 Tools\FSMEditor\scriptedFSM.cfg, DayZ Player Monitor">*/
|
|
/*%FSM<HEAD>*/
|
|
/*
|
|
item0[] = {"init",0,250,-75.000000,-200.000000,25.000000,-150.000000,0.000000,"init"};
|
|
item1[] = {"isServer",4,218,50.000000,-200.000000,150.000000,-150.000000,0.000000,"isServer"};
|
|
item2[] = {"wait",2,250,50.000000,-125.000000,150.000000,-75.000000,0.000000,"wait"};
|
|
item3[] = {"Allow_Connection",4,218,50.000000,-50.000000,150.000000,0.000000,0.000000,"Allow" \n "Connection"};
|
|
item4[] = {"Loading",2,250,-75.000000,-50.000000,25.000000,0.000000,0.000000,"Loading"};
|
|
item5[] = {"Client",4,218,-75.000000,-125.000000,25.000000,-75.000000,0.000000,"Client"};
|
|
item6[] = {"player____null_player",4,218,-175.000000,100.000000,-75.000000,150.000000,0.000000,"player != null" \n "player == player"};
|
|
item7[] = {"Collect",2,250,-75.000000,150.000000,25.000000,200.000000,0.000000,"Collect"};
|
|
item8[] = {"Has_PlayerID",4,218,-175.000000,200.000000,-75.000000,250.000000,1.000000,"Has PlayerID"};
|
|
item9[] = {"no_PlayerID",4,218,125.000000,150.000000,225.000000,200.000000,2.000000,"no PlayerID"};
|
|
item10[] = {"ERROR__No_Player",2,250,325.000000,150.000000,425.000000,200.000000,0.000000,"ERROR:" \n "No PlayerID"};
|
|
item11[] = {"Request",2,250,-75.000000,350.000000,25.000000,400.000000,0.000000,"Request"};
|
|
item12[] = {"Response",4,218,-175.000000,400.000000,-75.000000,450.000000,0.000000,"Response"};
|
|
item13[] = {"Parse_Login",2,250,-66.532227,557.409241,33.467773,607.409241,0.000000,"Parse Login"};
|
|
item14[] = {"Hive_Bad",4,218,125.000000,550.000000,225.000000,600.000000,10.000000,"Hive" \n "Bad"};
|
|
item15[] = {"ERROR__Wrong_HIVE",2,250,325.000000,550.000000,425.000000,600.000000,0.000000,"ERROR:" \n "Wrong HIVE" \n "Version"};
|
|
item16[] = {"Character_Setup",4,218,-175.000000,600.000000,-75.000000,650.000000,0.000000,"Character" \n "Setup"};
|
|
item17[] = {"Phase_One",2,4346,-75.000000,650.000000,25.000000,700.000000,0.000000,"Phase One"};
|
|
item18[] = {"Response",4,218,-175.000000,700.000000,-75.000000,750.000000,0.000000,"Response"};
|
|
item19[] = {"Phase_Two",2,250,-75.000000,750.000000,25.000000,800.000000,0.000000,"Phase Two"};
|
|
item20[] = {"Dead_Player",4,218,125.000000,750.000000,225.000000,800.000000,0.000000,"Dead" \n "Player"};
|
|
item21[] = {"ERROR__Player_Already",2,250,325.000000,750.000000,425.000000,800.000000,0.000000,"ERROR:" \n "Player Already" \n "Dead"};
|
|
item22[] = {"Alive",4,218,-175.000000,800.000000,-75.000000,850.000000,0.000000,"Alive"};
|
|
item23[] = {"Position",2,250,-75.000000,850.000000,25.000000,900.000000,0.000000,"Position"};
|
|
item24[] = {"Version_Ok",4,218,-175.000000,900.000000,-75.000000,950.000000,0.000000,"Version" \n "Ok"};
|
|
item25[] = {"Load_In",2,250,-75.000000,1150.000000,25.000000,1200.000000,0.000000,"Load In"};
|
|
item26[] = {"Bad_Version",4,218,125.000000,850.000000,225.000000,900.000000,0.000000,"Bad" \n "Version"};
|
|
item27[] = {"ERROR__Bad_Versi",2,250,325.000000,850.000000,425.000000,900.000000,0.000000,"ERROR:" \n "Bad Version"};
|
|
item28[] = {"Display_Ready",4,218,-175.000000,1200.000000,-75.000000,1250.000000,0.000000,"Display" \n "Ready"};
|
|
item29[] = {"Preload_Display",2,250,-75.000000,1250.000000,25.000000,1300.000000,0.000000,"Preload" \n "Display"};
|
|
item30[] = {"Preload_Done",4,218,-175.000000,1300.000000,-75.000000,1350.000000,0.000000,"Preload" \n "Done"};
|
|
item31[] = {"Initialize",2,250,-75.000000,1350.000000,25.000000,1400.000000,0.000000,"Initialize"};
|
|
item32[] = {"Finish",1,250,-75.000000,1625.000000,25.000000,1675.000000,0.000000,"Finish"};
|
|
item33[] = {"no_Time_Date",4,218,125.000000,950.000000,225.000000,1000.000000,0.000000,"no Time/Date"};
|
|
item34[] = {"sleep",4,218,525.000000,150.000000,625.000000,200.000000,0.000000,"sleep"};
|
|
item35[] = {"sleep",4,218,525.000000,550.000000,625.000000,600.000000,0.000000,"sleep"};
|
|
item36[] = {"sleep",4,218,525.000000,750.000000,625.000000,800.000000,0.000000,"sleep"};
|
|
item37[] = {"sleep",4,218,525.000000,850.000000,625.000000,900.000000,0.000000,"sleep"};
|
|
item38[] = {"Enable_Sim",2,250,-75.000000,50.000000,25.000000,100.000000,0.000000,"Enable Sim"};
|
|
item39[] = {"Initialized",4,218,-175.000000,0.000000,-75.000000,50.000000,0.000000,"Initialized"};
|
|
item40[] = {"ERROR__Client_Files",2,250,325.000000,50.000000,425.000000,100.000000,0.000000,"ERROR:" \n "Client Files " \n "are missing missing"};
|
|
item41[] = {"sleep_",4,218,525.000000,50.000000,625.000000,100.000000,0.000000,"sleep" \n ""};
|
|
item42[] = {"Stream",2,250,-75.000000,1050.000000,25.000000,1100.000000,0.000000,"Stream"};
|
|
item43[] = {"Preloaded",4,218,-175.000000,1100.000000,-75.000000,1150.000000,0.000000,"Preloaded"};
|
|
item44[] = {"retry",4,218,25.000000,350.000000,100.000000,375.000000,0.000000,"retry"};
|
|
item45[] = {"retry_",4,218,25.000000,375.000000,100.000000,400.000000,0.000000,"" \n "retry" \n ""};
|
|
item46[] = {"Retry",2,250,100.000000,350.000000,200.000000,400.000000,0.000000,"Retry"};
|
|
item47[] = {"auth_failed",4,218,225.000000,350.000000,300.000000,400.000000,0.000000,"auth failed"};
|
|
item48[] = {"get_ready_to_clo",2,250,325.000000,350.000000,425.000000,400.000000,0.000000,"get ready to close"};
|
|
item49[] = {"sleep_",4,218,525.000000,350.000000,625.000000,400.000000,0.000000,"sleep" \n ""};
|
|
item50[] = {"Disconnect",2,250,775.000000,450.000000,875.000000,500.000000,0.000000,"Disconnect"};
|
|
item51[] = {"Got_time_date",4,218,-175.000000,1000.000000,-75.000000,1050.000000,0.000000,"Got time/date"};
|
|
item52[] = {"Date_or_Time_Send",2,250,-75.000000,950.000000,25.000000,1000.000000,0.000000,"Date or Time" \n "Send request"};
|
|
item53[] = {"True",8,218,-75.000000,1425.000000,25.000000,1475.000000,0.000000,"True"};
|
|
item54[] = {"Server_Loading",2,250,-75.000000,250.000000,25.000000,300.000000,0.000000,"Server Loading"};
|
|
item55[] = {"Too_Long",4,218,125.000000,250.000000,225.000000,300.000000,0.000000,"Too" \n "Long"};
|
|
item56[] = {"Server_Ready",4,218,-175.000000,300.000000,-75.000000,350.000000,0.000000,"Server Ready"};
|
|
item57[] = {"New_Character_57",4,218,-265.625061,511.895081,-165.625061,561.895081,5.000000,"New" \n "Character" \n "57"};
|
|
item58[] = {"Gender_Selection",2,250,-416.028381,547.882996,-316.028381,597.882996,0.000000,"Gender Selection" \n "Dialog" \n "58"};
|
|
item59[] = {"Gender__Selected",4,218,-781.502197,569.707764,-681.502197,619.707764,0.000000,"Gender " \n "Selected" \n "59"};
|
|
item60[] = {"Character_Type_6",2,250,-910.736084,548.941589,-810.736084,598.941589,0.000000,"Character" \n "Type" \n "60"};
|
|
item61[] = {"Region_Selection",2,250,-878.676575,824.200928,-778.676575,874.200928,0.000000,"Region Selection" \n "Dialog" \n "61"};
|
|
item62[] = {"Region_Selected",4,218,-503.676575,799.200928,-403.676575,849.200928,0.000000,"Region" \n "Selected" \n "62"};
|
|
item63[] = {"Region_Process_6",2,250,-378.676575,824.200928,-278.676575,874.200928,0.000000,"Region Process" \n "63"};
|
|
item64[] = {"",7,210,-955.710327,751.386963,-947.710388,759.386963,0.000000,""};
|
|
item65[] = {"Spawn_Process_65",2,250,-493.892822,730.386963,-393.892792,780.386963,0.000000,"Spawn Process" \n "65"};
|
|
item66[] = {"Selection_Enabled",4,218,-995.124756,890.905029,-895.124756,940.905029,0.000000,"Selection" \n "Enabled" \n "66"};
|
|
item67[] = {"Selection_Disabled",4,218,-870.268494,730.386963,-770.268494,780.386963,0.000000,"Selection" \n "Disabled" \n "67"};
|
|
item68[] = {"",7,210,-954.000061,571.000000,-946.000000,579.000000,0.000000,""};
|
|
item69[] = {"",7,210,-955.710266,826.386963,-947.710327,834.386963,0.000000,""};
|
|
item70[] = {"",7,210,-178.999969,746.000000,-171.000031,754.000000,0.000000,""};
|
|
item71[] = {"",7,210,-178.999969,671.000000,-171.000031,679.000000,0.000000,""};
|
|
item72[] = {"ERROR__Date_Time",2,250,325.000000,950.000000,425.000000,1000.000000,0.000000,"ERROR:" \n "Date/Time" \n "not synced!"};
|
|
item73[] = {"sleep",4,218,525.000000,950.000000,625.000000,1000.000000,0.000000,"sleep"};
|
|
item74[] = {"get_ready_to_clo_1",2,250,325.000000,250.000000,425.000000,300.000000,0.000000,"get ready to close"};
|
|
item75[] = {"sleep_",4,218,525.000000,250.000000,625.000000,300.000000,0.000000,"sleep" \n ""};
|
|
item76[] = {"pbo_s__are_missi",4,218,125.000000,50.000000,225.000000,100.000000,2.000000,"pbo's " \n "are missing"};
|
|
item77[] = {"",7,210,821.000000,571.000000,829.000000,579.000000,0.000000,""};
|
|
item78[] = {"",7,210,821.000000,771.000000,829.000000,779.000000,0.000000,""};
|
|
item79[] = {"",7,210,821.000000,971.000000,829.000000,979.000000,0.000000,""};
|
|
item80[] = {"",7,210,821.000000,871.000000,829.000000,879.000000,0.000000,""};
|
|
item81[] = {"",7,210,821.000000,71.000000,829.000000,79.000000,0.000000,""};
|
|
item82[] = {"",7,210,821.000000,171.000000,829.000000,179.000000,0.000000,""};
|
|
item83[] = {"",7,210,821.000000,271.000000,829.000000,279.000000,0.000000,""};
|
|
item84[] = {"Gender_Closed_84",4,218,-533.619141,502.772095,-433.619141,552.772095,0.000000,"Gender" \n "Closed" \n "84"};
|
|
item85[] = {"reopen_Region_85",4,218,-878.676575,899.200928,-778.676575,949.200928,0.000000,"reopen" \n "Region" \n "85"};
|
|
item86[] = {"Default_Male_215",4,218,-780.443726,509.122925,-680.443726,559.122925,0.000000,"Default" \n "Male" \n "215"};
|
|
item87[] = {"Default_Region_2",4,218,-503.676575,849.200928,-403.676575,899.200928,0.000000,"Default" \n "Region" \n "217"};
|
|
item88[] = {"",7,210,-129.000000,671.000000,-121.000000,679.000000,0.000000,""};
|
|
item89[] = {"Gender_Opened_22",4,218,-535.736084,568.649292,-435.736084,618.649292,0.000000,"Gender" \n "Opened" \n "220"};
|
|
item90[] = {"Waiting_for_Gender",2,250,-648.034363,545.766174,-548.034363,595.766174,0.000000,"Waiting for" \n "Gender Selection" \n "221"};
|
|
item91[] = {"Region_Opened_22",4,218,-753.676575,799.200928,-653.676575,849.200928,0.000000,"Region" \n "Opened" \n "223"};
|
|
item92[] = {"Waiting_for__Region",2,250,-628.676575,824.200928,-528.676575,874.200928,0.000000,"Waiting for " \n "Region Selection" \n "224"};
|
|
item93[] = {"Reopen__Gender_2",4,218,-325.000000,475.000000,-225.000000,525.000000,0.000000,"Reopen" \n " Gender" \n "225"};
|
|
item94[] = {"Region__Closed_2",4,218,-753.676575,849.200928,-653.676575,899.200928,0.000000,"Region " \n "Closed" \n "227"};
|
|
item95[] = {"Client_Not_Ready",4,218,-225.000000,450.000000,-125.000000,500.000000,0.000000,"Client Not Ready"};
|
|
item96[] = {"Update_player",2,250,-425.000000,375.000000,-325.000000,425.000000,0.000000,"Update player"};
|
|
item97[] = {"sleep",4,218,-550.000000,375.000000,-450.000000,425.000000,0.000000,"sleep"};
|
|
item98[] = {"",7,210,821.000000,371.000000,829.000000,379.000000,0.000000,""};
|
|
item99[] = {"Ghost_System",2,250,-75.000000,450.000000,25.000000,500.000000,0.000000,"Ghost System"};
|
|
item100[] = {"Client_Ready",4,218,-177.116943,496.824585,-77.116943,546.824585,0.000000,"Client Ready"};
|
|
item101[] = {"Reset",2,250,-425.000000,325.000000,-325.000000,375.000000,0.000000,"Reset"};
|
|
item102[] = {"Sleep",4,218,-550.000000,325.000000,-450.000000,375.000000,0.000000,"Sleep"};
|
|
item103[] = {"",7,210,-279.000000,371.000000,-271.000000,379.000000,0.000000,""};
|
|
item104[] = {"retry_Login",4,218,-250.000000,350.000000,-150.000000,400.000000,0.000000,"retry Login"};
|
|
item105[] = {"",7,210,-379.000031,471.000000,-371.000000,479.000000,0.000000,""};
|
|
item106[] = {"Finish_1",2,250,-75.000000,1500.000000,25.000000,1550.000000,0.000000,"Finish"};
|
|
item107[] = {"dayz_preloadFini",4,218,50.000000,1550.000000,150.000000,1600.000000,0.000000,"dayz_preloadFinished"};
|
|
item108[] = {"New_INFECTED_Character",4,218,-271.606934,571.673645,-171.606934,621.673645,5.000000,"New" \n "INFECTED Character" \n "258"};
|
|
item109[] = {"Player_Zombie__S",2,250,-611.348511,641.870300,-521.348145,691.870300,0.000000,"Player Zombie" \n " Selection"};
|
|
item110[] = {"",7,210,-955.744385,664.969482,-947.744385,672.969482,0.000000,""};
|
|
link0[] = {0,1};
|
|
link1[] = {0,5};
|
|
link2[] = {1,2};
|
|
link3[] = {2,3};
|
|
link4[] = {3,4};
|
|
link5[] = {4,39};
|
|
link6[] = {5,4};
|
|
link7[] = {6,7};
|
|
link8[] = {7,8};
|
|
link9[] = {7,9};
|
|
link10[] = {8,54};
|
|
link11[] = {9,10};
|
|
link12[] = {10,34};
|
|
link13[] = {11,12};
|
|
link14[] = {11,45};
|
|
link15[] = {12,99};
|
|
link16[] = {13,14};
|
|
link17[] = {13,16};
|
|
link18[] = {13,57};
|
|
link19[] = {13,108};
|
|
link20[] = {14,15};
|
|
link21[] = {15,35};
|
|
link22[] = {16,17};
|
|
link23[] = {17,18};
|
|
link24[] = {18,19};
|
|
link25[] = {19,20};
|
|
link26[] = {19,22};
|
|
link27[] = {20,21};
|
|
link28[] = {21,36};
|
|
link29[] = {22,23};
|
|
link30[] = {23,24};
|
|
link31[] = {23,26};
|
|
link32[] = {24,52};
|
|
link33[] = {25,28};
|
|
link34[] = {26,27};
|
|
link35[] = {27,37};
|
|
link36[] = {28,29};
|
|
link37[] = {29,30};
|
|
link38[] = {30,31};
|
|
link39[] = {31,53};
|
|
link40[] = {33,72};
|
|
link41[] = {34,82};
|
|
link42[] = {35,77};
|
|
link43[] = {36,78};
|
|
link44[] = {37,80};
|
|
link45[] = {38,6};
|
|
link46[] = {38,76};
|
|
link47[] = {39,38};
|
|
link48[] = {40,41};
|
|
link49[] = {41,81};
|
|
link50[] = {42,43};
|
|
link51[] = {43,25};
|
|
link52[] = {44,11};
|
|
link53[] = {45,46};
|
|
link54[] = {46,44};
|
|
link55[] = {46,47};
|
|
link56[] = {47,48};
|
|
link57[] = {48,49};
|
|
link58[] = {49,98};
|
|
link59[] = {51,42};
|
|
link60[] = {52,33};
|
|
link61[] = {52,51};
|
|
link62[] = {53,106};
|
|
link63[] = {54,55};
|
|
link64[] = {54,56};
|
|
link65[] = {55,74};
|
|
link66[] = {56,11};
|
|
link67[] = {57,58};
|
|
link68[] = {58,89};
|
|
link69[] = {58,93};
|
|
link70[] = {59,60};
|
|
link71[] = {60,68};
|
|
link72[] = {61,85};
|
|
link73[] = {61,91};
|
|
link74[] = {62,63};
|
|
link75[] = {63,70};
|
|
link76[] = {64,67};
|
|
link77[] = {64,69};
|
|
link78[] = {65,71};
|
|
link79[] = {66,61};
|
|
link80[] = {67,65};
|
|
link81[] = {68,110};
|
|
link82[] = {69,66};
|
|
link83[] = {70,71};
|
|
link84[] = {71,88};
|
|
link85[] = {72,73};
|
|
link86[] = {73,79};
|
|
link87[] = {74,75};
|
|
link88[] = {75,83};
|
|
link89[] = {76,40};
|
|
link90[] = {77,50};
|
|
link91[] = {78,77};
|
|
link92[] = {79,80};
|
|
link93[] = {80,78};
|
|
link94[] = {81,82};
|
|
link95[] = {82,83};
|
|
link96[] = {83,98};
|
|
link97[] = {84,58};
|
|
link98[] = {85,61};
|
|
link99[] = {86,60};
|
|
link100[] = {87,63};
|
|
link101[] = {88,16};
|
|
link102[] = {89,90};
|
|
link103[] = {90,59};
|
|
link104[] = {90,84};
|
|
link105[] = {90,86};
|
|
link106[] = {91,92};
|
|
link107[] = {92,62};
|
|
link108[] = {92,87};
|
|
link109[] = {92,94};
|
|
link110[] = {93,58};
|
|
link111[] = {94,61};
|
|
link112[] = {95,105};
|
|
link113[] = {96,97};
|
|
link114[] = {96,103};
|
|
link115[] = {97,101};
|
|
link116[] = {98,50};
|
|
link117[] = {99,95};
|
|
link118[] = {99,100};
|
|
link119[] = {100,13};
|
|
link120[] = {101,102};
|
|
link121[] = {101,103};
|
|
link122[] = {102,96};
|
|
link123[] = {103,104};
|
|
link124[] = {104,11};
|
|
link125[] = {105,96};
|
|
link126[] = {106,107};
|
|
link127[] = {107,32};
|
|
link128[] = {108,109};
|
|
link129[] = {109,110};
|
|
link130[] = {110,64};
|
|
globals[] = {0.000000,0,0,0,0,640,480,3,262,6316128,1,-398.479370,434.610596,1408.302368,243.848480,890,1244,1};
|
|
window[] = {2,-1,-1,-1,-1,604,78,1098,78,3,908};
|
|
*//*%FSM</HEAD>*/
|
|
class FSM
|
|
{
|
|
fsmName = "DayZ Player Monitor";
|
|
class States
|
|
{
|
|
/*%FSM<STATE "init">*/
|
|
class init
|
|
{
|
|
name = "init";
|
|
itemno = 0;
|
|
init = /*%FSM<STATEINIT""">*/"dayz_versionNo = getText(configFile >> ""CfgMods"" >> ""DayZ"" >> ""version"");" \n
|
|
"_AuthAttempt = 0;" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'STR_AUTHENTICATING';" \n
|
|
"Dayz_loginCompleted = nil;" \n
|
|
"PVCDZ_plr_Login = [];" \n
|
|
"_timeStart = diag_tickTime;" \n
|
|
"_readytoAuth = false;" \n
|
|
"_startCheck = 0;" \n
|
|
"_debug = 0;" \n
|
|
"_schedulerStarted=false;" \n
|
|
"_spawnSelection = 9;" \n
|
|
"" \n
|
|
"_timeNemGender = 0;" \n
|
|
"_timeNemRegion = 0;" \n
|
|
"" \n
|
|
"" \n
|
|
"if (_debug == 1) then {" \n
|
|
"diag_log (""DAYZ: CLIENT IS RUNNING DAYZ_CODE "" + str(dayz_versionNo));" \n
|
|
"};" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Client">*/
|
|
class Client
|
|
{
|
|
itemno = 5;
|
|
priority = 0.000000;
|
|
to="Loading";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!isServer"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "isServer">*/
|
|
class isServer
|
|
{
|
|
itemno = 1;
|
|
priority = 0.000000;
|
|
to="wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"isServer"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "wait">*/
|
|
class wait
|
|
{
|
|
name = "wait";
|
|
itemno = 2;
|
|
init = /*%FSM<STATEINIT""">*/""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Allow_Connection">*/
|
|
class Allow_Connection
|
|
{
|
|
itemno = 3;
|
|
priority = 0.000000;
|
|
to="Loading";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"allowConnection"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Loading">*/
|
|
class Loading
|
|
{
|
|
name = "Loading";
|
|
itemno = 4;
|
|
init = /*%FSM<STATEINIT""">*/"dayz_loadScreenMsg = localize 'str_player_loading'; " \n
|
|
"" \n
|
|
"if (_debug == 1) then {diag_log [diag_tickTime,'Loading'];};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Initialized">*/
|
|
class Initialized
|
|
{
|
|
itemno = 39;
|
|
priority = 0.000000;
|
|
to="Enable_Sim";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!isnil ""BIS_MPF_InitDone"""/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Collect">*/
|
|
class Collect
|
|
{
|
|
name = "Collect";
|
|
itemno = 7;
|
|
init = /*%FSM<STATEINIT""">*/"" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_waiting_creation'; " \n
|
|
"" \n
|
|
"_playerUID = getPlayerUID player;" \n
|
|
"progressLoadingScreen 0.6;" \n
|
|
"if (_debug == 1) then {diag_log [diag_tickTime,'Collect'];};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "no_PlayerID">*/
|
|
class no_PlayerID
|
|
{
|
|
itemno = 9;
|
|
priority = 2.000000;
|
|
to="ERROR__No_Player";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_playerUID == """""/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Has_PlayerID">*/
|
|
class Has_PlayerID
|
|
{
|
|
itemno = 8;
|
|
priority = 1.000000;
|
|
to="Server_Loading";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!(isNil ""_playerUID"")"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__No_Player">*/
|
|
class ERROR__No_Player
|
|
{
|
|
name = "ERROR__No_Player";
|
|
itemno = 10;
|
|
init = /*%FSM<STATEINIT""">*/"selectNoPlayer;" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_no_playerid';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 34;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 10"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Request">*/
|
|
class Request
|
|
{
|
|
name = "Request";
|
|
itemno = 11;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Request'];};" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_request';" \n
|
|
"" \n
|
|
"_msg = [];" \n
|
|
"progressLoadingScreen 0.65;" \n
|
|
"PVDZ_plr_Login1 = [_playerUID,player];" \n
|
|
"publicVariableServer ""PVDZ_plr_Login1"";" \n
|
|
"diag_log ['Sent to server: PVDZ_plr_Login1', PVDZ_plr_Login1]; " \n
|
|
"PVDZ_send = [player,""dayzSetDate"",[player]];" \n
|
|
"publicVariableServer ""PVDZ_send"";" \n
|
|
"diag_log ['Sent to server: PVDZ_send', PVDZ_send]; " \n
|
|
"_myTime = diag_tickTime;" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "retry_">*/
|
|
class retry_
|
|
{
|
|
itemno = 45;
|
|
priority = 0.000000;
|
|
to="Retry";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 10"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Response">*/
|
|
class Response
|
|
{
|
|
itemno = 12;
|
|
priority = 0.000000;
|
|
to="Ghost_System";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"count (PVCDZ_plr_Login) > 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_msg = PVCDZ_plr_Login;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Parse_Login">*/
|
|
class Parse_Login
|
|
{
|
|
name = "Parse_Login";
|
|
itemno = 13;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Parse_Login'];};" \n
|
|
"progressLoadingScreen 0.8;" \n
|
|
"_charID = _msg select 0;" \n
|
|
"_inventory = _msg select 1;" \n
|
|
"_backpack = _msg select 2;" \n
|
|
"_survival = _msg select 3;" \n
|
|
"_isNew = _msg select 4;" \n
|
|
"//_state = _msg select 5;" \n
|
|
"_version = _msg select 5;" \n
|
|
"_model = _msg select 6;" \n
|
|
"_patch = {};" \n
|
|
"" \n
|
|
"_isHiveOk = false;" \n
|
|
"_newPlayer = false;" \n
|
|
"_isInfected = false;" \n
|
|
"_characterCoins = 0;" \n
|
|
"_globalCoins = 0;" \n
|
|
"_bankCoins = 0;" \n
|
|
"" \n
|
|
"if (count _msg > 7) then {" \n
|
|
" _isHiveOk = _msg select 7;" \n
|
|
" _newPlayer = _msg select 8;" \n
|
|
" _isInfected = _msg select 9;" \n
|
|
" _characterCoins = _msg select 11;" \n
|
|
" _globalCoins = _msg select 12;" \n
|
|
" _bankCoins = _msg select 13;" \n
|
|
" diag_log (""PLAYER RESULT: "" + str(_isHiveOk));" \n
|
|
"};" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_creating_character'; " \n
|
|
"if (_isHiveOk) then { if (!_schedulerStarted) then { _schedulerStarted=true; execVM '\z\addons\dayz_code\system\scheduler\sched_init.sqf'; }; };" \n
|
|
"if (_debug == 1) then {" \n
|
|
"diag_log (""PLOGIN: authenticated with : "" + str(_msg));" \n
|
|
" diag_log [""player_monitor:Parse_Login _isHiveOk,_isNew,isnil preload, preload:"",_isHiveOk,_isNew,!isNil 'dayz_preloadFinished',dayz_preloadFinished];" \n
|
|
"};" \n
|
|
"" \n
|
|
"//Not Equal Failure" \n
|
|
"" \n
|
|
"if (isNil ""_model"") then {" \n
|
|
" _model = ""Survivor2_DZ"";" \n
|
|
" diag_log (""PLOGIN: Model was nil, loading as survivor"");" \n
|
|
"};" \n
|
|
"" \n
|
|
"if (_model == """") then {" \n
|
|
" _model = ""Survivor2_DZ"";" \n
|
|
" diag_log (""PLOGIN: Model was empty, loading as survivor"");" \n
|
|
"};" \n
|
|
"" \n
|
|
"if (_model == ""Survivor1_DZ"") then {" \n
|
|
" _model = ""Survivor2_DZ"";" \n
|
|
"};" \n
|
|
"_isHack = false;" \n
|
|
"if (_model == ""hacker"") then {" \n
|
|
" _isHack = true;" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Hive_Bad">*/
|
|
class Hive_Bad
|
|
{
|
|
itemno = 14;
|
|
priority = 10.000000;
|
|
to="ERROR__Wrong_HIVE";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_isHiveOk"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "New_Character_57">*/
|
|
class New_Character_57
|
|
{
|
|
itemno = 57;
|
|
priority = 5.000000;
|
|
to="Gender_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(_isNew and (_isInfected == 0) and !isNil 'dayz_preloadFinished') and {(dayz_preloadFinished)}"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "New_INFECTED_Character">*/
|
|
class New_INFECTED_Character
|
|
{
|
|
itemno = 108;
|
|
priority = 5.000000;
|
|
to="Player_Zombie__S";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(_isNew and (_isInfected == 1) and !isNil 'dayz_preloadFinished') and {(dayz_preloadFinished)}"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Character_Setup">*/
|
|
class Character_Setup
|
|
{
|
|
itemno = 16;
|
|
priority = 0.000000;
|
|
to="Phase_One";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_isNew"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeNemRegion = nil;" \n
|
|
"_timeNemGender = nil;" \n
|
|
""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__Wrong_HIVE">*/
|
|
class ERROR__Wrong_HIVE
|
|
{
|
|
name = "ERROR__Wrong_HIVE";
|
|
itemno = 15;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'ERROR__Wrong_HIVE'];};" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_wrong_hive';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 35;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 10"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Phase_One">*/
|
|
class Phase_One
|
|
{
|
|
name = "Phase_One";
|
|
itemno = 17;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Phase_One'];};" \n
|
|
"if ((!isNil ""DZE_defaultSkin"") && _isNew && (_isInfected == 0)) then {" \n
|
|
" if (dayz_selectGender == ""Survivor2_DZ"") then {" \n
|
|
" _rand = (DZE_defaultSkin select 0) call BIS_fnc_selectRandom;" \n
|
|
" _model = getText (configFile >> ""CfgMagazines"" >> ""Skins"" >> _rand >> ""playerModel""); //MALE" \n
|
|
" if (_model == """") then {" \n
|
|
" _model = _rand;" \n
|
|
" };" \n
|
|
" } else {" \n
|
|
" _rand = (DZE_defaultSkin select 1) call BIS_fnc_selectRandom;" \n
|
|
" _model = getText (configFile >> ""CfgMagazines"" >> ""Skins"" >> _rand >> ""playerModel""); //FEMALE" \n
|
|
" if (_model == """") then {" \n
|
|
" _model = _rand;" \n
|
|
" };" \n
|
|
" };" \n
|
|
"};" \n
|
|
"" \n
|
|
"_model call player_switchModel;" \n
|
|
"" \n
|
|
"player allowDamage false;" \n
|
|
"_lastAte = _survival select 1;" \n
|
|
"_lastDrank = _survival select 2;" \n
|
|
"" \n
|
|
"_usedFood = 0;" \n
|
|
"_usedWater = 0;" \n
|
|
"" \n
|
|
"_inventory call player_gearSet;" \n
|
|
"" \n
|
|
"//Assess in backpack" \n
|
|
"if (count _backpack > 0) then {" \n
|
|
" //Populate" \n
|
|
" _backpackType = _backpack select 0;" \n
|
|
" _backpackWpn = _backpack select 1;" \n
|
|
" _backpackMagTypes = [];" \n
|
|
" _backpackMagQty = [];" \n
|
|
" if (count _backpackWpn > 0) then {" \n
|
|
" _backpackMagTypes = (_backpack select 2) select 0;" \n
|
|
" _backpackMagQty = (_backpack select 2) select 1;" \n
|
|
" };" \n
|
|
" _countr = 0;" \n
|
|
" _backpackWater = 0;" \n
|
|
"" \n
|
|
" //Add backpack" \n
|
|
" if (_backpackType != """") then {" \n
|
|
" _isOK = isClass(configFile >> ""CfgVehicles"" >>_backpackType);" \n
|
|
" if (_isOK) then {" \n
|
|
" player addBackpack _backpackType; " \n
|
|
" dayz_myBackpack = unitBackpack player;" \n
|
|
" " \n
|
|
" //Fill backpack contents" \n
|
|
" //Weapons" \n
|
|
" _backpackWpnTypes = [];" \n
|
|
" _backpackWpnQtys = [];" \n
|
|
" if (count _backpackWpn > 0) then {" \n
|
|
" _backpackWpnTypes = _backpackWpn select 0;" \n
|
|
" _backpackWpnQtys = _backpackWpn select 1;" \n
|
|
" };" \n
|
|
" _countr = 0;" \n
|
|
" {" \n
|
|
" if(_x in (DZE_REPLACE_WEAPONS select 0)) then {" \n
|
|
" _x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);" \n
|
|
" };" \n
|
|
" dayz_myBackpack addWeaponCargoGlobal [_x,(_backpackWpnQtys select _countr)];" \n
|
|
" _countr = _countr + 1;" \n
|
|
" } forEach _backpackWpnTypes;" \n
|
|
" " \n
|
|
" //Magazines" \n
|
|
" _countr = 0;" \n
|
|
" {" \n
|
|
" if (_x == ""BoltSteel"") then { _x = ""1Rnd_Arrow_Wood"" }; // Convert BoltSteel to WoodenArrow" \n
|
|
" if (dayz_classicBloodBagSystem) then {" \n
|
|
" if (_x in dayz_typedBags) then {_x = ""ItemBloodbag""};" \n
|
|
" } else {" \n
|
|
" if (_x == ""ItemBloodbag"") then { _x = ""bloodBagONEG"" }; // Convert ItemBloodbag into universal blood type/rh bag" \n
|
|
" };" \n
|
|
" dayz_myBackpack addMagazineCargoGlobal [_x,(_backpackMagQty select _countr)];" \n
|
|
" _countr = _countr + 1;" \n
|
|
" } forEach _backpackMagTypes;" \n
|
|
" " \n
|
|
" dayz_myBackpackMags = getMagazineCargo dayz_myBackpack;" \n
|
|
" dayz_myBackpackWpns = getWeaponCargo dayz_myBackpack;" \n
|
|
" } else {" \n
|
|
" dayz_myBackpack = objNull;" \n
|
|
" dayz_myBackpackMags = [];" \n
|
|
" dayz_myBackpackWpns = [];" \n
|
|
" };" \n
|
|
" } else {" \n
|
|
" dayz_myBackpack = objNull;" \n
|
|
" dayz_myBackpackMags = [];" \n
|
|
" dayz_myBackpackWpns = [];" \n
|
|
" };" \n
|
|
"} else {" \n
|
|
" dayz_myBackpack = objNull;" \n
|
|
" dayz_myBackpackMags = [];" \n
|
|
" dayz_myBackpackWpns = [];" \n
|
|
"};" \n
|
|
"gear_done = true;" \n
|
|
"PVCDZ_plr_Login2 = [];" \n
|
|
"PVDZ_plr_Login2 = [_charID,player,_playerUID,_spawnSelection,_inventory];" \n
|
|
"publicVariableServer ""PVDZ_plr_Login2"";" \n
|
|
"diag_log ['Sent to server: PVDZ_plr_Login2', PVDZ_plr_Login2]; " \n
|
|
"dayz_loadScreenMsg = localize 'str_player_requesting_character';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Response">*/
|
|
class Response
|
|
{
|
|
itemno = 18;
|
|
priority = 0.000000;
|
|
to="Phase_Two";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"count (PVCDZ_plr_Login2) > 0"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_msg = player getVariable[""worldspace"",[]];"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Phase_Two">*/
|
|
class Phase_Two
|
|
{
|
|
name = "Phase_Two";
|
|
itemno = 19;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Phase_Two'];};dayz_loadScreenMsg = localize 'str_login_characterData'; " \n
|
|
"" \n
|
|
"_worldspace = PVCDZ_plr_Login2 select 0;" \n
|
|
"_state = PVCDZ_plr_Login2 select 1;" \n
|
|
"" \n
|
|
"player setVariable [""Achievements"",[],false];" \n
|
|
"" \n
|
|
"_setDir = _worldspace select 0;" \n
|
|
"_setPos = _worldspace select 1;" \n
|
|
"" \n
|
|
"if (isNil ""freshSpawn"") then {" \n
|
|
" freshSpawn = 0;" \n
|
|
"};" \n
|
|
"" \n
|
|
"{" \n
|
|
" if (player getVariable[""hit_""+_x,false]) then { " \n
|
|
" [player,_x,_x] spawn fnc_usec_damageBleed; " \n
|
|
" PVDZ_hlt_Bleed = [player,_x,_x];" \n
|
|
" publicVariable ""PVDZ_hlt_Bleed""; // draw blood stream on character, on all gameclients" \n
|
|
" };" \n
|
|
"} forEach USEC_typeOfWounds;" \n
|
|
"//Legs and Arm fractures" \n
|
|
"_legs = player getVariable [""hit_legs"",0];" \n
|
|
"_arms = player getVariable [""hit_hands"",0];" \n
|
|
"" \n
|
|
"if (_legs > 1) then {" \n
|
|
" player setHit[""legs"",1];" \n
|
|
" r_fracture_legs = true;" \n
|
|
"};" \n
|
|
"if (_arms > 1) then {" \n
|
|
" player setHit[""hands"",1];" \n
|
|
" r_fracture_arms = true;" \n
|
|
"};" \n
|
|
"" \n
|
|
"//Record current weapon state" \n
|
|
"dayz_myWeapons = weapons player; //Array of last checked weapons" \n
|
|
"dayz_myItems = items player; //Array of last checked items" \n
|
|
"dayz_myMagazines = magazines player;" \n
|
|
"" \n
|
|
"dayz_playerUID = _playerUID;" \n
|
|
"" \n
|
|
"if ((_isNew) OR (count _inventory == 0)) then {" \n
|
|
" //player is new, add initial loadout" \n
|
|
" if !(player isKindOf ""PZombie_VB"") then {" \n
|
|
" _config = (configFile >> ""CfgSurvival"" >> ""Inventory"" >> ""Default"");" \n
|
|
" _totalrndmags = getNumber (_config >> ""RandomMagazines"");" \n
|
|
" _rndmags = getArray (_config >> ""RandomPossibilitieMagazines"");" \n
|
|
" _countmags = 0; " \n
|
|
" _gmags = getArray (_config >> ""GuaranteedMagazines"");" \n
|
|
" _wpns = getArray (_config >> ""weapons"");" \n
|
|
" _bcpk = getText (_config >> ""backpack"");" \n
|
|
" _bcpkWpn = getText (_config >> ""backpackWeapon"");" \n
|
|
" if(!isNil ""DefaultMagazines"") then {" \n
|
|
" _gmags = DefaultMagazines;" \n
|
|
" };" \n
|
|
" if(!isNil ""DefaultWeapons"") then {" \n
|
|
" _wpns = DefaultWeapons;" \n
|
|
" };" \n
|
|
" if(!isNil ""DefaultBackpack"") then {" \n
|
|
" _bcpk = DefaultBackpack;" \n
|
|
" };" \n
|
|
" if(!isNil ""DefaultBackpackItems"") then {" \n
|
|
" _bcpkWpn = DefaultBackpackItems;" \n
|
|
" };" \n
|
|
" " \n
|
|
" //Add inventory" \n
|
|
" {" \n
|
|
" _isOK = isClass(configFile >> ""CfgMagazines"" >> _x);" \n
|
|
" if (_isOK) then {" \n
|
|
" player addMagazine _x;" \n
|
|
" _countmags = _countmags +1;" \n
|
|
" };" \n
|
|
" } count _gmags;" \n
|
|
"" \n
|
|
" while {_countmags < _totalrndmags} do {" \n
|
|
" _rndmag = _rndmags call BIS_fnc_selectRandom;" \n
|
|
" _isOK = isClass(configFile >> ""CfgMagazines"" >> _rndmag);" \n
|
|
" if (_isOK) then {" \n
|
|
" player addMagazine _rndmag;" \n
|
|
" _countmags = _countmags +1;" \n
|
|
" };" \n
|
|
" };" \n
|
|
"" \n
|
|
" {" \n
|
|
" _isOK = isClass(configFile >> ""CfgWeapons"" >> _x);" \n
|
|
" if (_isOK) then {" \n
|
|
" player addWeapon _x;" \n
|
|
" };" \n
|
|
" } count _wpns;" \n
|
|
" " \n
|
|
" if (_bcpk != """") then {" \n
|
|
" player addBackpack _bcpk; " \n
|
|
" dayz_myBackpack = unitBackpack player;" \n
|
|
"" \n
|
|
" if ((typeName _bcpkWpn) == ""ARRAY"") then {" \n
|
|
" {" \n
|
|
" if (isClass(configFile >> ""CfgWeapons"" >> _x)) then {" \n
|
|
" dayz_myBackpack addWeaponCargoGlobal [_x,1];" \n
|
|
" } else {" \n
|
|
" dayz_myBackpack addMagazineCargoGlobal [_x, 1];" \n
|
|
" };" \n
|
|
" } count _bcpkWpn;" \n
|
|
" } else {" \n
|
|
" if (_bcpkWpn != """") then {" \n
|
|
" dayz_myBackpack addWeaponCargoGlobal [_bcpkWpn, 1];" \n
|
|
" };" \n
|
|
" };" \n
|
|
" };" \n
|
|
" };" \n
|
|
"};" \n
|
|
"" \n
|
|
"//Work out survival time" \n
|
|
"_totalMins = _survival select 0;" \n
|
|
"_days = floor (_totalMins / 1440);" \n
|
|
"_totalMins = (_totalMins - (_days * 1440));" \n
|
|
"_hours = floor (_totalMins / 60);" \n
|
|
"_mins = (_totalMins - (_hours * 60));" \n
|
|
"" \n
|
|
"//player variables" \n
|
|
"dayz_characterID = _charID;" \n
|
|
"dayz_hasFire = objNull; //records players Fireplace object" \n
|
|
"dayz_myCursorTarget = objNull;" \n
|
|
"dayz_myPosition = getPosATL player; //Last recorded position" \n
|
|
"dayz_lastMeal = (_lastAte * 60);" \n
|
|
"dayz_lastDrink = (_lastDrank * 60);" \n
|
|
"dayz_zombiesLocal = 0; //Used to record how many local zombies being tracked" \n
|
|
"dayz_Survived = _days; //total alive dayz" \n
|
|
"" \n
|
|
"//load in medical details" \n
|
|
"r_player_dead = player getVariable[""USEC_isDead"",false];" \n
|
|
"r_player_unconscious = player getVariable[""NORRN_unconscious"", false];" \n
|
|
"r_player_infected = player getVariable[""USEC_infected"",false];" \n
|
|
"r_player_injured = player getVariable[""USEC_injured"",false];" \n
|
|
"r_player_inpain = player getVariable[""USEC_inPain"",false];" \n
|
|
"r_player_cardiac = player getVariable[""USEC_isCardiac"",false];" \n
|
|
"r_player_lowblood = player getVariable[""USEC_lowBlood"",false];" \n
|
|
"r_player_blood = player getVariable[""USEC_BloodQty"",r_player_bloodTotal];" \n
|
|
"r_player_timeout = player getVariable[""unconsciousTime"",0];" \n
|
|
"" \n
|
|
"//Hunger/Thirst" \n
|
|
"_messing = player getVariable[""messing"",[0,0,0]];" \n
|
|
"dayz_hunger = _messing select 0;" \n
|
|
"dayz_thirst = _messing select 1;" \n
|
|
"dayz_nutrition = _messing select 2;" \n
|
|
"" \n
|
|
"//player setVariable [""humanity"",-3000, true];"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Alive">*/
|
|
class Alive
|
|
{
|
|
itemno = 22;
|
|
priority = 0.000000;
|
|
to="Position";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!r_player_dead/* and !_isNew*/"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Dead_Player">*/
|
|
class Dead_Player
|
|
{
|
|
itemno = 20;
|
|
priority = 0.000000;
|
|
to="ERROR__Player_Already";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"r_player_dead"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__Player_Already">*/
|
|
class ERROR__Player_Already
|
|
{
|
|
name = "ERROR__Player_Already";
|
|
itemno = 21;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'ERROR__Player_Already'];};" \n
|
|
"selectNoPlayer;" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_login_alreadyDead';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 36;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 10"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Position">*/
|
|
class Position
|
|
{
|
|
name = "Position";
|
|
itemno = 23;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Position'];};" \n
|
|
"progressLoadingScreen 0.85;" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Bad_Version">*/
|
|
class Bad_Version
|
|
{
|
|
itemno = 26;
|
|
priority = 0.000000;
|
|
to="ERROR__Bad_Versi";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_version != dayz_versionNo"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Version_Ok">*/
|
|
class Version_Ok
|
|
{
|
|
itemno = 24;
|
|
priority = 0.000000;
|
|
to="Date_or_Time_Send";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_version == dayz_versionNo"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Load_In">*/
|
|
class Load_In
|
|
{
|
|
name = "Load_In";
|
|
itemno = 25;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Load_In'];};" \n
|
|
"progressLoadingScreen 0.95;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_setup_completed';" \n
|
|
"_torev4l=nearestObjects [_setPos, Dayz_plants + DayZ_GearedObjects + [""AllVehicles"",""WeaponHolder""], 50];" \n
|
|
"{ _null = [_x,0] spawn object_roadFlare; } count (allMissionObjects ""RoadFlare"");" \n
|
|
"{ _null = [_x,1] spawn object_roadFlare; } count (allMissionObjects ""ChemLight"");" \n
|
|
"{" \n
|
|
" _fadeFire = _x getVariable['fadeFire', true];" \n
|
|
" if (!_fadeFire) then {" \n
|
|
" nul = [_x,2,0,false,false] spawn BIS_Effects_Burn;" \n
|
|
" };" \n
|
|
"} count allMissionObjects ""SpawnableWreck"";" \n
|
|
"{deleteVehicle _x} count (_setPos nearEntities [""zZombie_Base"",30]);" \n
|
|
"player setDir _setDir;" \n
|
|
"" \n
|
|
"if (dayz_paraSpawn && freshSpawn == 2) then {" \n
|
|
" player setPosATL [_setPos select 0,_setPos select 1,DZE_HaloSpawnHeight];" \n
|
|
"} else {" \n
|
|
" player setPosATL _setPos;" \n
|
|
" if (surfaceIsWater respawn_west_original) then {player call fn_exitSwim;};" \n
|
|
"};" \n
|
|
"" \n
|
|
"player setVelocity [0,0,0.5];" \n
|
|
"{player reveal _x} count _torev4l;" \n
|
|
"dayz_myPosition = _setPos;" \n
|
|
"player setVariable ['BIS_noCoreConversations', true];" \n
|
|
"dayz_clientPreload = true;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Display_Ready">*/
|
|
class Display_Ready
|
|
{
|
|
itemno = 28;
|
|
priority = 0.000000;
|
|
to="Preload_Display";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(!dayz_townGenerator or {call sched_townGenerator_ready})"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__Bad_Versi">*/
|
|
class ERROR__Bad_Versi
|
|
{
|
|
name = "ERROR__Bad_Versi";
|
|
itemno = 27;
|
|
init = /*%FSM<STATEINIT""">*/"selectNoPlayer;" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_outdated';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 37;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 5"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Preload_Display">*/
|
|
class Preload_Display
|
|
{
|
|
name = "Preload_Display";
|
|
itemno = 29;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Preload_Display'];};" \n
|
|
"" \n
|
|
"dayz_lastCheckBit = 0;" \n
|
|
"" \n
|
|
"player disableConversation true;" \n
|
|
"" \n
|
|
"eh_player_killed = player addeventhandler [""FiredNear"",{_this call player_weaponFiredNear;} ];" \n
|
|
"" \n
|
|
"//_state = player getVariable[""state"",[]];" \n
|
|
"_currentWpn = """";" \n
|
|
"_currentAnim = """";" \n
|
|
"if ((!isNil ""_state"") AND {(count _state > 1)}) then {" \n
|
|
" //Reload players state" \n
|
|
" _currentWpn = _state select 0;" \n
|
|
" _currentAnim = _state select 1;" \n
|
|
" //Reload players state" \n
|
|
" if (count _state > 2) then {" \n
|
|
" dayz_temperatur = _state select 2;" \n
|
|
" };" \n
|
|
"} else {" \n
|
|
" _currentWpn = ""Makarov"";" \n
|
|
" _currentAnim = ""aidlpercmstpsraswpstdnon_player_idlesteady02"";" \n
|
|
"};" \n
|
|
"" \n
|
|
"reload player;" \n
|
|
"" \n
|
|
"if (_currentAnim != """" && !dayz_paraSpawn) then {" \n
|
|
" [objNull, player, rSwitchMove,_currentAnim] call RE;" \n
|
|
"};" \n
|
|
"" \n
|
|
"if (_currentWpn != """") then {" \n
|
|
" player selectWeapon _currentWpn;" \n
|
|
"} else {" \n
|
|
" //Establish default weapon" \n
|
|
" if (count weapons player > 0) then" \n
|
|
" {" \n
|
|
" private['_type', '_muzzles'];" \n
|
|
"" \n
|
|
" _type = ((weapons player) select 0);" \n
|
|
" // check for multiple muzzles (eg: GL)" \n
|
|
" _muzzles = getArray(configFile >> ""cfgWeapons"" >> _type >> ""muzzles"");" \n
|
|
"" \n
|
|
" if (count _muzzles > 1) then {" \n
|
|
" player selectWeapon (_muzzles select 0);" \n
|
|
" } else {" \n
|
|
" player selectWeapon _type;" \n
|
|
" };" \n
|
|
" };" \n
|
|
"};" \n
|
|
"" \n
|
|
"" \n
|
|
"//Player control loop" \n
|
|
"dayz_monitor1 = [] spawn {" \n
|
|
" while {1 == 1} do { " \n
|
|
" //uiSleep (if (call player_zombieCheck) then {dayz_monitorPeriod/3} else {dayz_monitorPeriod});" \n
|
|
" call player_zombieCheck;" \n
|
|
" uiSleep 1;" \n
|
|
" };" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Preload_Done">*/
|
|
class Preload_Done
|
|
{
|
|
itemno = 30;
|
|
priority = 0.000000;
|
|
to="Initialize";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"preloadCamera getPosATL player"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Initialize">*/
|
|
class Initialize
|
|
{
|
|
name = "Initialize";
|
|
itemno = 31;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Initialize'];};" \n
|
|
"" \n
|
|
"//Medical" \n
|
|
"dayz_medicalH = [] execVM ""\z\addons\dayz_code\medical\init_medical.sqf""; //Medical Monitor Script (client only)" \n
|
|
"[player] call fnc_usec_damageHandle;" \n
|
|
"" \n
|
|
"if (r_player_unconscious) then {" \n
|
|
" player playActionNow ""Die"";" \n
|
|
" [player,r_player_timeout] call fnc_usec_damageUnconscious;" \n
|
|
"};" \n
|
|
"" \n
|
|
"//Add core tools" \n
|
|
"player addWeapon ""Loot"";" \n
|
|
"if ((currentWeapon player == """")) then { player action [""SWITCHWEAPON"", player,player,1]; };" \n
|
|
"//load in medical details" \n
|
|
"r_player_dead = player getVariable[""USEC_isDead"",false];" \n
|
|
"r_player_unconscious = player getVariable[""NORRN_unconscious"", false];" \n
|
|
"r_player_infected = player getVariable[""USEC_infected"",false];" \n
|
|
"r_player_injured = player getVariable[""USEC_injured"",false];" \n
|
|
"r_player_inpain = player getVariable[""USEC_inPain"",false];" \n
|
|
"r_player_cardiac = player getVariable[""USEC_isCardiac"",false];" \n
|
|
"r_player_lowblood = player getVariable[""USEC_lowBlood"",false];" \n
|
|
"r_player_blood = player getVariable[""USEC_BloodQty"",r_player_bloodTotal];" \n
|
|
"r_player_bloodtype = player getVariable [""blood_type"", false];" \n
|
|
"r_player_rh = player getVariable [""rh_factor"", false];" \n
|
|
"" \n
|
|
"if (Z_SingleCurrency) then {" \n
|
|
" player setVariable [Z_MoneyVariable, _characterCoins, true];" \n
|
|
" player setVariable [Z_globalVariable, _globalCoins, true];" \n
|
|
" player setVariable [Z_BankVariable, _bankCoins, true];" \n
|
|
"};" \n
|
|
"dayz_musicH = [] spawn player_music;" \n
|
|
"dayz_slowCheck = [] spawn player_spawn_2;" \n
|
|
"Dayz_logonTime = daytime;" \n
|
|
"Dayz_logonDate = dayz_Survived;" \n
|
|
"_position = getPosATL player;" \n
|
|
"_radius = 200;" \n
|
|
"//Current amounts" \n
|
|
"dayz_spawnZombies = {alive _x AND local _x} count (_position nearEntities [""zZombie_Base"",_radius]);" \n
|
|
"dayz_CurrentNearByZombies = {alive _x} count (_position nearEntities [""zZombie_Base"",_radius]);" \n
|
|
"" \n
|
|
"{ _x call fnc_veh_ResetEH; } forEach vehicles;" \n
|
|
"player allowDamage true;" \n
|
|
"player enableSimulation true;" \n
|
|
"if (dayz_paraSpawn && freshSpawn == 2) then {[player,DZE_HaloSpawnHeight] spawn BIS_fnc_halo;}; //Start after enableSimulation"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "True">*/
|
|
class True
|
|
{
|
|
itemno = 53;
|
|
priority = 0.000000;
|
|
to="Finish_1";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Finish">*/
|
|
class Finish
|
|
{
|
|
name = "Finish";
|
|
itemno = 32;
|
|
init = /*%FSM<STATEINIT""">*/"diag_log 'player_forceSave called from fsm';" \n
|
|
"//call player_forceSave;" \n
|
|
"" \n
|
|
"//Check for bad controls at login" \n
|
|
"false spawn ui_updateControls;" \n
|
|
"" \n
|
|
"publicVariableServer ""PVDZ_plr_LoginRecord"";"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Enable_Sim">*/
|
|
class Enable_Sim
|
|
{
|
|
name = "Enable_Sim";
|
|
itemno = 38;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Enable_Sim'];};" \n
|
|
"" \n
|
|
"_myAssets = getText(configFile >> ""CfgPatches"" >> ""dayz_communityassets"" >> ""dayzVersion"");" \n
|
|
"_mySfx = getNumber(configFile >> ""CfgPatches"" >> ""dayz_sfx"" >> ""dayzVersion"");" \n
|
|
"_myAnim = getNumber(configFile >> ""CfgPatches"" >> ""dayz_anim"" >> ""dayzVersion"");" \n
|
|
"_myEpoch = getText(configFile >> ""CfgPatches"" >> ""dayz_epoch"" >> ""dayzVersion"");" \n
|
|
"_myEpochB = getText(configFile >> ""CfgPatches"" >> ""dayz_epoch_b"" >> ""dayzVersion"");" \n
|
|
"" \n
|
|
"/*" \n
|
|
"_myCCrossbow = getNumber(configFile >> ""CfgPatches"" >> ""community_crossbow"" >> ""dayzVersion"");" \n
|
|
"_myDayz = getNumber(configFile >> ""CfgPatches"" >> ""dayz"" >> ""dayzVersion"");" \n
|
|
"_myBuildings = getNumber(configFile >> ""CfgPatches"" >> ""dayz_buildings"" >> ""dayzVersion"");" \n
|
|
"_myCWeapons = getNumber(configFile >> ""CfgPatches"" >> ""dayz_communityweapons"" >> ""dayzVersion"");" \n
|
|
"_myEquip = getNumber(configFile >> ""CfgPatches"" >> ""dayz_equip"" >> ""dayzVersion"");" \n
|
|
"_mySFX = getNumber(configFile >> ""CfgPatches"" >> ""dayz_sfx"" >> ""dayzVersion"");" \n
|
|
"_myVechicles = getNumber(configFile >> ""CfgPatches"" >> ""dayz_vehicles"" >> ""dayzVersion"");" \n
|
|
"_myWeapons = getNumber(configFile >> ""CfgPatches"" >> ""dayz_weapons"" >> ""dayzVersion"");" \n
|
|
"*/" \n
|
|
"" \n
|
|
"if (_debug == 1) then {" \n
|
|
" diag_log format[""DayZ Version: DayZ_Anim: %1 DayZ_SFX: %2 DayZ_Assets: %3"",_myAnim, _mySfx,_myAssets];" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "pbo_s__are_missi">*/
|
|
class pbo_s__are_missi
|
|
{
|
|
itemno = 76;
|
|
priority = 2.000000;
|
|
to="ERROR__Client_Files";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(_myAnim != 1.8) || (_mySfx != 1.8) || (_myAssets != ""1.8.0.1"") || (_myEpoch != ""1.0.4.2"") || (_myEpochB != ""1.0.6"")"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "player____null_player">*/
|
|
class player____null_player
|
|
{
|
|
itemno = 6;
|
|
priority = 0.000000;
|
|
to="Collect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(!isNull player) and (player == player)"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__Client_Files">*/
|
|
class ERROR__Client_Files
|
|
{
|
|
name = "ERROR__Client_Files";
|
|
itemno = 40;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'ERROR__Client_Files'];};selectNoPlayer;" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_outdated';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep_">*/
|
|
class sleep_
|
|
{
|
|
itemno = 41;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 10"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Stream">*/
|
|
class Stream
|
|
{
|
|
name = "Stream";
|
|
itemno = 42;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Stream'];};" \n
|
|
"dayz_loadScreenMsg = localize 'str_login_spawningLocalObjects';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Preloaded">*/
|
|
class Preloaded
|
|
{
|
|
itemno = 43;
|
|
priority = 0.000000;
|
|
to="Load_In";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"((!dayz_townGenerator or (!isNil 'dayz_plantSpawner_done' && {dayz_plantSpawner_done == 2})) && (!isNil 'BIS_fnc_init'))"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Retry">*/
|
|
class Retry
|
|
{
|
|
name = "Retry";
|
|
itemno = 46;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Retry'];};" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_retrying';" \n
|
|
"" \n
|
|
"_AuthAttempt = _AuthAttempt +1;" \n
|
|
"" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"" \n
|
|
"if (_debug == 1) then {" \n
|
|
" diag_log (""PLOGIN: Retrying Authentication... ("" + _playerUID + "")"");" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "auth_failed">*/
|
|
class auth_failed
|
|
{
|
|
itemno = 47;
|
|
priority = 0.000000;
|
|
to="get_ready_to_clo";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_AuthAttempt > 5"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "retry">*/
|
|
class retry
|
|
{
|
|
itemno = 44;
|
|
priority = 0.000000;
|
|
to="Request";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 5"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "get_ready_to_clo">*/
|
|
class get_ready_to_clo
|
|
{
|
|
name = "get_ready_to_clo";
|
|
itemno = 48;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'get_ready_to_clo'];};dayz_loadScreenMsg = localize 'str_player_authentication_failed';" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
"if (_debug == 1) then {" \n
|
|
" diag_log (""PLOGIN: Authentication Failed ("" + _playerUID + "")"");" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep_">*/
|
|
class sleep_
|
|
{
|
|
itemno = 49;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 2"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Disconnect">*/
|
|
class Disconnect
|
|
{
|
|
name = "Disconnect";
|
|
itemno = 50;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Disconnect'];};" \n
|
|
"" \n
|
|
" player enableSimulation false;" \n
|
|
"" \n
|
|
"if (_debug == 1) then {" \n
|
|
" diag_log (""End Mission"");" \n
|
|
"};" \n
|
|
"" \n
|
|
"failMission ""LOSER"";" \n
|
|
"endMission ""END1"";" \n
|
|
"" \n
|
|
"" \n
|
|
"dayz_authed = true;" \n
|
|
"dayz_clientPreload = true;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Date_or_Time_Send">*/
|
|
class Date_or_Time_Send
|
|
{
|
|
name = "Date_or_Time_Send";
|
|
itemno = 52;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Date_or_Time_Send'];};" \n
|
|
"_myTime = diag_tickTime;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Got_time_date">*/
|
|
class Got_time_date
|
|
{
|
|
itemno = 51;
|
|
priority = 0.000000;
|
|
to="Stream";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!isNil ""dayzSetDate"""/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"diag_log ['Date & time received:', dayzSetDate];" \n
|
|
"setDate dayzSetDate;" \n
|
|
"diag_log ['Local date on this client:', date];"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "no_Time_Date">*/
|
|
class no_Time_Date
|
|
{
|
|
itemno = 33;
|
|
priority = 0.000000;
|
|
to="ERROR__Date_Time";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"diag_tickTime - _myTime > 15"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Server_Loading">*/
|
|
class Server_Loading
|
|
{
|
|
name = "Server_Loading";
|
|
itemno = 54;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Server_Loading'];};_myTime = diag_tickTime;" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_waiting_start';" \n
|
|
"" \n
|
|
"if (_debug == 1) then {" \n
|
|
" diag_log (""Server Loading"");" \n
|
|
" diag_log (""PLOGIN: Waiting for server to start authentication"");" \n
|
|
"};"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Server_Ready">*/
|
|
class Server_Ready
|
|
{
|
|
itemno = 56;
|
|
priority = 0.000000;
|
|
to="Request";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!isNil ""sm_done"""/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Too_Long">*/
|
|
class Too_Long
|
|
{
|
|
itemno = 55;
|
|
priority = 0.000000;
|
|
to="get_ready_to_clo_1";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 120"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Gender_Selection">*/
|
|
class Gender_Selection
|
|
{
|
|
name = "Gender_Selection";
|
|
itemno = 58;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Gender_Selection'];};" \n
|
|
"endLoadingScreen;" \n
|
|
"freshSpawn = 2;" \n
|
|
"" \n
|
|
"_gender = createDialog 'RscDisplayGenderSelect';" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'STR_UI_GENDER_TITLE';" \n
|
|
"_timeNem=diag_tickTime;" \n
|
|
"_model = 'Survivor2_DZ';" \n
|
|
"dayz_preloadFinished=nil;//do not remove this"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Reopen__Gender_2">*/
|
|
class Reopen__Gender_2
|
|
{
|
|
itemno = 93;
|
|
priority = 0.000000;
|
|
to="Gender_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_gender"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"closeDialog 0;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Gender_Opened_22">*/
|
|
class Gender_Opened_22
|
|
{
|
|
itemno = 89;
|
|
priority = 0.000000;
|
|
to="Waiting_for_Gender";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_gender"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Character_Type_6">*/
|
|
class Character_Type_6
|
|
{
|
|
name = "Character_Type_6";
|
|
itemno = 60;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Character_Type_6'];};" \n
|
|
"" \n
|
|
"_model = dayz_selectGender;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Selection_Enabled">*/
|
|
class Selection_Enabled
|
|
{
|
|
itemno = 66;
|
|
priority = 0.000000;
|
|
to="Region_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_spawnselection == 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Selection_Disabled">*/
|
|
class Selection_Disabled
|
|
{
|
|
itemno = 67;
|
|
priority = 0.000000;
|
|
to="Spawn_Process_65";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_spawnselection == 0"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_spawnSelection=9;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Region_Selection">*/
|
|
class Region_Selection
|
|
{
|
|
name = "Region_Selection";
|
|
itemno = 61;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Region_Selection'];};" \n
|
|
"endLoadingScreen;" \n
|
|
"" \n
|
|
"_timeNem=diag_tickTime;" \n
|
|
"_region = createDialog ""RscDisplaySpawnSelecter"";" \n
|
|
"" \n
|
|
"dayz_loadScreenMsg = localize 'str_login_spawnLocation';" \n
|
|
"_timeNem=diag_tickTime;_spawnSelection = 9;" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Region_Opened_22">*/
|
|
class Region_Opened_22
|
|
{
|
|
itemno = 91;
|
|
priority = 0.000000;
|
|
to="Waiting_for__Region";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_region"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "reopen_Region_85">*/
|
|
class reopen_Region_85
|
|
{
|
|
itemno = 85;
|
|
priority = 0.000000;
|
|
to="Region_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_region"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"closeDialog 0;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Region_Process_6">*/
|
|
class Region_Process_6
|
|
{
|
|
name = "Region_Process_6";
|
|
itemno = 63;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Region_Process_6, region selected:',_spawnSelection];};" \n
|
|
"_isNew = false;" \n
|
|
"_spawnSelection = dayz_selectRegion;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Character_Setup">*/
|
|
class Character_Setup
|
|
{
|
|
itemno = 16;
|
|
priority = 0.000000;
|
|
to="Phase_One";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_isNew"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeNemRegion = nil;" \n
|
|
"_timeNemGender = nil;" \n
|
|
""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Spawn_Process_65">*/
|
|
class Spawn_Process_65
|
|
{
|
|
name = "Spawn_Process_65";
|
|
itemno = 65;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Spawn_Process_65'];};" \n
|
|
"_isNew = false;" \n
|
|
"dayz_selectRegion = 9;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Character_Setup">*/
|
|
class Character_Setup
|
|
{
|
|
itemno = 16;
|
|
priority = 0.000000;
|
|
to="Phase_One";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!_isNew"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeNemRegion = nil;" \n
|
|
"_timeNemGender = nil;" \n
|
|
""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "ERROR__Date_Time">*/
|
|
class ERROR__Date_Time
|
|
{
|
|
name = "ERROR__Date_Time";
|
|
itemno = 72;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'ERROR__Date_Time'];};_myTime = diag_tickTime;" \n
|
|
"" \n
|
|
"diag_log format[""Date and time not synced""];" \n
|
|
"dayz_loadScreenMsg = localize 'str_player_desync';" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 73;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 5"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "get_ready_to_clo_1">*/
|
|
class get_ready_to_clo_1
|
|
{
|
|
name = "get_ready_to_clo_1";
|
|
itemno = 74;
|
|
init = /*%FSM<STATEINIT""">*/"diag_log ""Server authentication time out! Disconnect and try again!"";" \n
|
|
"dayz_loadScreenMsg = localize 'str_login_authentTimeout';" \n
|
|
"_myTime = diag_tickTime;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "sleep_">*/
|
|
class sleep_
|
|
{
|
|
itemno = 75;
|
|
priority = 0.000000;
|
|
to="Disconnect";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 2"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Waiting_for_Gender">*/
|
|
class Waiting_for_Gender
|
|
{
|
|
name = "Waiting_for_Gender";
|
|
itemno = 90;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Waiting_for_Gender'];};" \n
|
|
"" \n
|
|
"_timeNemGender = diag_tickTime;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Gender_Closed_84">*/
|
|
class Gender_Closed_84
|
|
{
|
|
itemno = 84;
|
|
priority = 0.000000;
|
|
to="Gender_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_DisplayGenderSelect and !dialog"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Default_Male_215">*/
|
|
class Default_Male_215
|
|
{
|
|
itemno = 86;
|
|
priority = 0.000000;
|
|
to="Character_Type_6";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _timeNemGender) > 60)"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"dayz_selectGender = ""Survivor2_DZ"";"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Gender__Selected">*/
|
|
class Gender__Selected
|
|
{
|
|
itemno = 59;
|
|
priority = 0.000000;
|
|
to="Character_Type_6";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!dayz_DisplayGenderSelect"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_model = uiNameSpace getVariable 'dayz_selectGender';" \n
|
|
"" \n
|
|
"closeDialog 0;" \n
|
|
"" \n
|
|
"//startLoadingScreen ['','RscDisplayLoadCustom'];"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Waiting_for__Region">*/
|
|
class Waiting_for__Region
|
|
{
|
|
name = "Waiting_for__Region";
|
|
itemno = 92;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Waiting_for__Region'];};" \n
|
|
"" \n
|
|
"_timeNemRegion = diag_tickTime;" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Default_Region_2">*/
|
|
class Default_Region_2
|
|
{
|
|
itemno = 87;
|
|
priority = 0.000000;
|
|
to="Region_Process_6";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"((diag_tickTime - _timeNemRegion) > 60)"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"dayz_selectRegion = 9;" \n
|
|
"" \n
|
|
"closeDialog 0;" \n
|
|
"" \n
|
|
"//startLoadingScreen ['','RscDisplayLoadCustom'];"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Region__Closed_2">*/
|
|
class Region__Closed_2
|
|
{
|
|
itemno = 94;
|
|
priority = 0.000000;
|
|
to="Region_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_DisplaySpawnSelecter and !dialog"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Region_Selected">*/
|
|
class Region_Selected
|
|
{
|
|
itemno = 62;
|
|
priority = 0.000000;
|
|
to="Region_Process_6";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!dayz_DisplaySpawnSelecter"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_spawnSelection=uiNameSpace getVariable 'dayz_selectRegion';" \n
|
|
"closeDialog 0;" \n
|
|
"//startLoadingScreen ['','RscDisplayLoadCustom'];"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Update_player">*/
|
|
class Update_player
|
|
{
|
|
name = "Update_player";
|
|
itemno = 96;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Update_player'];};" \n
|
|
"dayz_loadScreenMsg = format[ localize 'str_player_ghost', _timeOut];" \n
|
|
"" \n
|
|
"_myTime = diag_tickTime;" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "retry_Login">*/
|
|
class retry_Login
|
|
{
|
|
itemno = 104;
|
|
priority = 0.000000;
|
|
to="Request";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_timeOut < 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "sleep">*/
|
|
class sleep
|
|
{
|
|
itemno = 97;
|
|
priority = 0.000000;
|
|
to="Reset";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeOut = _timeOut - 1;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Ghost_System">*/
|
|
class Ghost_System
|
|
{
|
|
name = "Ghost_System";
|
|
itemno = 99;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Ghost_System'];};dayz_loadScreenMsg = localize 'str_login_ghostedPlayer';" \n
|
|
"" \n
|
|
""/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Client_Ready">*/
|
|
class Client_Ready
|
|
{
|
|
itemno = 100;
|
|
priority = 0.000000;
|
|
to="Parse_Login";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"//isNil ""PVCDZ_plr_Ghost""" \n
|
|
"" \n
|
|
"!(isNil ""PVCDZ_plr_PlayerAccepted"")"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"PVCDZ_plr_PlayerAccepted = nil;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Client_Not_Ready">*/
|
|
class Client_Not_Ready
|
|
{
|
|
itemno = 95;
|
|
priority = 0.000000;
|
|
to="Update_player";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!(isNil ""PVCDZ_plr_Ghost"")"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeOut = (round (PVCDZ_plr_Ghost select 0));" \n
|
|
"PVCDZ_plr_Ghost = nil;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Reset">*/
|
|
class Reset
|
|
{
|
|
name = "Reset";
|
|
itemno = 101;
|
|
init = /*%FSM<STATEINIT""">*/"" \n
|
|
"dayz_loadScreenMsg = format [localize 'str_player_ghost', _timeOut];" \n
|
|
"" \n
|
|
"_myTime = diag_tickTime;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "retry_Login">*/
|
|
class retry_Login
|
|
{
|
|
itemno = 104;
|
|
priority = 0.000000;
|
|
to="Request";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"_timeOut < 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Sleep">*/
|
|
class Sleep
|
|
{
|
|
itemno = 102;
|
|
priority = 0.000000;
|
|
to="Update_player";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_tickTime - _myTime) > 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_timeOut = _timeOut - 1;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Finish_1">*/
|
|
class Finish_1
|
|
{
|
|
name = "Finish_1";
|
|
itemno = 106;
|
|
init = /*%FSM<STATEINIT""">*/"if (_debug == 1) then {diag_log [diag_tickTime,'Finish'];};" \n
|
|
"" \n
|
|
"dayz_playerName = if (alive player) then {name player} else {'unknown'};" \n
|
|
"PVDZ_plr_LoginRecord = [_playerUID,_charID,0,toArray dayz_playerName];" \n
|
|
"" \n
|
|
"" \n
|
|
"progressLoadingScreen 1;" \n
|
|
"" \n
|
|
"diag_log format ['Sent to server PVDZ_plr_LoginRecord: [%1, %2, %3, %4]',_playerUID,_charID,0,dayz_playerName]; " \n
|
|
"" \n
|
|
"_world = toUpper(worldName); //toUpper(getText (configFile >> ""CfgWorlds"" >> (worldName) >> ""description""));" \n
|
|
"_nearestCity = nearestLocations [getPos player, [""NameCityCapital"",""NameCity"",""NameVillage"",""NameLocal""],1000];" \n
|
|
"" \n
|
|
"Dayz_logonTown = ""Wilderness"";" \n
|
|
"if (count _nearestCity > 0) then {Dayz_logonTown = text (_nearestCity select 0)};" \n
|
|
"" \n
|
|
"[_world,Dayz_logonTown,format[localize ""str_player_06"",dayz_Survived]] spawn {uiSleep 5; _this spawn BIS_fnc_infoText;};" \n
|
|
"" \n
|
|
"dayz_myPosition = getPosATL player;" \n
|
|
"Dayz_loginCompleted = true;" \n
|
|
"" \n
|
|
"//Other Counters" \n
|
|
" dayz_currentGlobalAnimals = count entities ""CAAnimalBase"";" \n
|
|
" dayz_currentGlobalZombies = count entities ""zZombie_Base"";" \n
|
|
"" \n
|
|
"{" \n
|
|
" call compile preprocessFileLineNumbers (""\z\addons\dayz_code\system\mission\chernarus\infectiousWaterholes\""+_x+"".sqf""); " \n
|
|
"} count infectedWaterHoles;" \n
|
|
" " \n
|
|
"diag_log (infectedWaterHoles);"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "dayz_preloadFini">*/
|
|
class dayz_preloadFini
|
|
{
|
|
itemno = 107;
|
|
priority = 0.000000;
|
|
to="Finish";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"!isNil 'dayz_preloadFinished' && {dayz_preloadFinished}"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
/*%FSM<STATE "Player_Zombie__S">*/
|
|
class Player_Zombie__S
|
|
{
|
|
name = "Player_Zombie__S";
|
|
itemno = 109;
|
|
init = /*%FSM<STATEINIT""">*/"_zssupported = [""pz_policeman"",""pz_suit1"",""pz_suit2"",""pz_worker1"",""pz_worker2"",""pz_worker3"",""pz_doctor"",""pz_teacher"",""pz_hunter"",""pz_villager1"",""pz_villager2"",""pz_villager3"",""pz_priest""];" \n
|
|
"_model = (_zssupported select floor(random(count _zssupported)));" \n
|
|
"freshSpawn = 1;" \n
|
|
"dayz_preloadFinished=nil;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Selection_Enabled">*/
|
|
class Selection_Enabled
|
|
{
|
|
itemno = 66;
|
|
priority = 0.000000;
|
|
to="Region_Selection";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_spawnselection == 1"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Selection_Disabled">*/
|
|
class Selection_Disabled
|
|
{
|
|
itemno = 67;
|
|
priority = 0.000000;
|
|
to="Spawn_Process_65";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"dayz_spawnselection == 0"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_spawnSelection=9;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
};
|
|
initState="init";
|
|
finalStates[] =
|
|
{
|
|
"Finish",
|
|
};
|
|
};
|
|
/*%FSM</COMPILE>*/ |