Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*%FSM<COMPILE "D:\Programme\Bohemia Interactive\Tools\FSM Editor Personal Edition\scriptedFSM.cfg, DayZ Player Monitor">*/
- /*%FSM<HEAD>*/
- /*
- item0[] = {"init",0,250,-75.000000,-350.000000,25.000000,-300.000000,0.000000,"init"};
- item1[] = {"isServer",4,218,50.000000,-350.000000,150.000000,-300.000000,0.000000,"isServer"};
- item2[] = {"wait",2,250,50.000000,-275.000000,150.000000,-225.000000,0.000000,"wait"};
- item3[] = {"Allow_Conn",4,218,50.000000,-200.000000,150.000000,-150.000000,0.000000,"Allow" \n "Conn"};
- item4[] = {"Loading",2,250,-75.000000,-200.000000,25.000000,-150.000000,0.000000,"Loading"};
- item5[] = {"Client",4,218,-75.000000,-275.000000,25.000000,-225.000000,0.000000,"Client"};
- item6[] = {"player_not_null",4,218,-175.000000,-50.000000,-75.000000,0.000000,0.000000,"player" \n "not null"};
- item7[] = {"Prepare",2,250,-75.000000,0.000000,25.000000,50.000000,0.000000,"Prepare"};
- item8[] = {"player___player",4,218,50.000000,50.000000,150.000000,100.000000,0.000000,"player =" \n "player"};
- item9[] = {"Collect",2,250,-75.000000,100.000000,25.000000,150.000000,0.000000,"Collect"};
- item10[] = {"Has_PlayerID",4,218,-75.000000,175.000000,25.000000,225.000000,1.000000,"Has PlayerID"};
- item11[] = {"no_PlayerID",4,218,50.000000,150.000000,150.000000,200.000000,2.000000,"no PlayerID"};
- item12[] = {"ERROR__No_Player",2,250,175.000000,150.000000,275.000000,200.000000,0.000000,"ERROR:" \n "No PlayerID"};
- item13[] = {"Request",2,250,-75.000000,400.000000,25.000000,450.000000,0.000000,"Request"};
- item14[] = {"Response",4,218,-175.000000,450.000000,-75.000000,500.000000,0.000000,"Response"};
- item15[] = {"Parse_Login",2,250,-75.000000,500.000000,25.000000,550.000000,0.000000,"Parse Login"};
- item16[] = {"Hive_Bad",4,218,50.000000,500.000000,150.000000,550.000000,10.000000,"Hive" \n "Bad"};
- item17[] = {"ERROR__Wrong_HIVE",2,250,175.000000,500.000000,275.000000,550.000000,0.000000,"ERROR:" \n "Wrong HIVE" \n "Version"};
- item18[] = {"Hive_Ok",4,218,-175.000000,550.000000,-75.000000,600.000000,0.000000,"Hive" \n "Ok"};
- item19[] = {"Phase_One",2,250,-75.000000,600.000000,25.000000,650.000000,0.000000,"Phase One"};
- item20[] = {"Response",4,218,-175.000000,650.000000,-75.000000,700.000000,0.000000,"Response"};
- item21[] = {"Phase_Two",2,250,-75.000000,700.000000,25.000000,750.000000,0.000000,"Phase Two"};
- item22[] = {"Dead_Player",4,218,50.000000,700.000000,150.000000,750.000000,0.000000,"Dead" \n "Player"};
- item23[] = {"ERROR__Player_Already",2,250,175.000000,700.000000,275.000000,750.000000,0.000000,"ERROR:" \n "Player Already" \n "Dead"};
- item24[] = {"Alive",4,218,-175.000000,750.000000,-75.000000,800.000000,0.000000,"Alive"};
- item25[] = {"Position",2,250,-75.000000,800.000000,25.000000,850.000000,0.000000,"Position"};
- item26[] = {"Version_Ok",4,218,-175.000000,850.000000,-75.000000,900.000000,0.000000,"Version" \n "Ok"};
- item27[] = {"Load_In",2,250,-75.000000,1000.000000,25.000000,1050.000000,0.000000,"Load In"};
- item28[] = {"Bad_Version",4,218,50.000000,800.000000,150.000000,850.000000,0.000000,"Bad" \n "Version"};
- item29[] = {"ERROR__Bad_Versi",2,250,175.000000,800.000000,275.000000,850.000000,0.000000,"ERROR:" \n "Bad Version"};
- item30[] = {"Display_Ready",4,218,-175.000000,1050.000000,-75.000000,1100.000000,0.000000,"Display" \n "Ready"};
- item31[] = {"Preload_Display",2,250,-75.000000,1100.000000,25.000000,1150.000000,0.000000,"Preload" \n "Display"};
- item32[] = {"Preload_Done",4,218,-175.000000,1150.000000,-75.000000,1200.000000,0.000000,"Preload" \n "Done"};
- item33[] = {"Initialize",2,250,-75.000000,1200.000000,25.000000,1250.000000,0.000000,"Initialize"};
- item34[] = {"Finish",1,250,-75.000000,1300.000000,25.000000,1350.000000,0.000000,"Finish"};
- item35[] = {"True",8,218,25.000000,1250.000000,125.000000,1300.000000,0.000000,"True"};
- item36[] = {"Too_Long",4,218,300.000000,150.000000,400.000000,200.000000,0.000000,"Too" \n "Long"};
- item37[] = {"Too_Long",4,218,300.000000,500.000000,400.000000,550.000000,0.000000,"Too" \n "Long"};
- item38[] = {"Too_Long",4,218,300.000000,700.000000,400.000000,750.000000,0.000000,"Too" \n "Long"};
- item39[] = {"Too_Long",4,218,300.000000,800.000000,400.000000,850.000000,0.000000,"Too" \n "Long"};
- item40[] = {"Enable_Sim",2,250,-75.000000,-100.000000,25.000000,-50.000000,0.000000,"Enable Sim"};
- item41[] = {"Initialized",4,218,-175.000000,-150.000000,-75.000000,-100.000000,0.000000,"Initialized"};
- item42[] = {"New_Character",4,218,-325.000000,400.000000,-225.000000,450.000000,5.000000,"New" \n "Character"};
- item43[] = {"Gender_Selection",2,250,-575.000000,400.000000,-475.000000,450.000000,0.000000,"Gender Selection" \n "Dialog"};
- item44[] = {"Selected",4,218,-575.000000,475.000000,-475.000000,525.000000,0.000000,"Selected"};
- item45[] = {"Process",2,250,-575.000000,550.000000,-475.000000,600.000000,0.000000,"Process"};
- item46[] = {"no_PlayerID",4,218,50.000000,-100.000000,150.000000,-50.000000,2.000000,"no PlayerID"};
- item47[] = {"ERROR__No_Player_1",2,250,175.000000,-100.000000,275.000000,-50.000000,0.000000,"ERROR:" \n "No PlayerID"};
- item48[] = {"Too_Long",4,218,300.000000,-100.000000,400.000000,-50.000000,0.000000,"Too" \n "Long"};
- item49[] = {"Stream",2,250,-75.000000,900.000000,25.000000,950.000000,0.000000,"Stream"};
- item50[] = {"Preloaded",4,218,-175.000000,950.000000,-75.000000,1000.000000,0.000000,"Preloaded"};
- item51[] = {"Retry",4,218,25.000000,375.000000,125.000000,425.000000,0.000000,"Retry"};
- item52[] = {"retry_",4,218,25.000000,425.000000,125.000000,475.000000,0.000000,"retry" \n ""};
- item53[] = {"Retry",2,250,125.000000,400.000000,225.000000,450.000000,0.000000,"Retry"};
- item54[] = {"auth_failed",4,218,250.000000,400.000000,350.000000,450.000000,0.000000,"auth failed"};
- item55[] = {"get_ready_to_clo",2,250,400.000000,400.000000,500.000000,450.000000,0.000000,"get ready to close"};
- item56[] = {"sleep_",4,218,550.000000,400.000000,650.000000,450.000000,0.000000,"sleep" \n ""};
- item57[] = {"Disconnect",2,250,825.000000,400.000000,925.000000,450.000000,0.000000,"Disconnect"};
- item58[] = {"No_time_date",4,218,25.000000,1150.000000,125.000000,1200.000000,0.000000,"No time/date"};
- item59[] = {"ERROR__No_Date_or",2,250,175.000000,1150.000000,275.000000,1200.000000,0.000000,"ERROR:" \n "No Date or Time"};
- item60[] = {"Too_Long",4,218,300.000000,1150.000000,400.000000,1200.000000,0.000000,"Too" \n "Long"};
- item61[] = {"get_ready_to_clo_1",2,250,450.000000,800.000000,550.000000,850.000000,0.000000,"get ready to close"};
- item62[] = {"sleep_",4,218,600.000000,800.000000,700.000000,850.000000,0.000000,"sleep" \n ""};
- item63[] = {"Server_Loading",2,250,-75.000000,250.000000,25.000000,300.000000,0.000000,"Server Loading"};
- item64[] = {"Too_Long",4,218,50.000000,250.000000,150.000000,300.000000,0.000000,"Too" \n "Long"};
- item65[] = {"Server_Ready",4,218,-75.000000,325.000000,25.000000,375.000000,0.000000,"Server Ready"};
- item66[] = {"New_Infected_Cha",4,218,-325.000000,475.000000,-225.000000,525.000000,5.000000,"New" \n "Infected" \n "Character"};
- item67[] = {"Player_Zombie__S",2,250,-450.000000,475.000000,-350.000000,525.000000,0.000000,"Player Zombie" \n " Selection"};
- item68[] = {"",7,210,-204.000000,521.000000,-196.000000,529.000000,0.000000,""};
- item69[] = {"",7,210,-204.000000,496.000000,-196.000000,504.000000,0.000000,""};
- item70[] = {"",7,210,-204.000000,421.000000,-196.000000,429.000000,0.000000,""};
- item71[] = {"",7,210,-404.000000,571.000000,-396.000000,579.000000,0.000000,""};
- item72[] = {"",7,210,871.000000,1171.000000,879.000000,1179.000000,0.000000,""};
- item73[] = {"",7,210,871.000000,821.000000,879.000000,829.000000,0.000000,""};
- item74[] = {"",7,210,871.000000,721.000000,879.000000,729.000000,0.000000,""};
- item75[] = {"",7,210,871.000000,521.000000,879.000000,529.000000,0.000000,""};
- item76[] = {"",7,210,871.000000,170.999985,879.000000,179.000015,0.000000,""};
- item77[] = {"",7,210,871.000000,-79.000000,879.000000,-71.000000,0.000000,""};
- item78[] = {"",7,210,871.000000,271.000000,879.000000,279.000000,0.000000,""};
- link0[] = {0,1};
- link1[] = {0,5};
- link2[] = {1,2};
- link3[] = {2,3};
- link4[] = {3,4};
- link5[] = {4,41};
- link6[] = {5,4};
- link7[] = {6,7};
- link8[] = {7,8};
- link9[] = {8,9};
- link10[] = {9,10};
- link11[] = {9,11};
- link12[] = {10,63};
- link13[] = {11,12};
- link14[] = {12,36};
- link15[] = {13,14};
- link16[] = {13,52};
- link17[] = {14,15};
- link18[] = {15,16};
- link19[] = {15,18};
- link20[] = {15,68};
- link21[] = {16,17};
- link22[] = {17,37};
- link23[] = {18,19};
- link24[] = {19,20};
- link25[] = {20,21};
- link26[] = {21,22};
- link27[] = {21,24};
- link28[] = {22,23};
- link29[] = {23,38};
- link30[] = {24,25};
- link31[] = {25,26};
- link32[] = {25,28};
- link33[] = {26,49};
- link34[] = {27,30};
- link35[] = {28,29};
- link36[] = {29,39};
- link37[] = {30,31};
- link38[] = {31,32};
- link39[] = {32,33};
- link40[] = {33,35};
- link41[] = {33,58};
- link42[] = {35,34};
- link43[] = {36,76};
- link44[] = {37,75};
- link45[] = {38,74};
- link46[] = {39,61};
- link47[] = {40,6};
- link48[] = {40,46};
- link49[] = {41,40};
- link50[] = {42,43};
- link51[] = {43,44};
- link52[] = {44,45};
- link53[] = {45,71};
- link54[] = {46,47};
- link55[] = {47,48};
- link56[] = {48,77};
- link57[] = {49,50};
- link58[] = {50,27};
- link59[] = {51,13};
- link60[] = {52,53};
- link61[] = {53,51};
- link62[] = {53,54};
- link63[] = {54,55};
- link64[] = {55,56};
- link65[] = {56,57};
- link66[] = {58,59};
- link67[] = {59,60};
- link68[] = {60,72};
- link69[] = {61,62};
- link70[] = {62,73};
- link71[] = {63,64};
- link72[] = {63,65};
- link73[] = {64,78};
- link74[] = {65,13};
- link75[] = {66,67};
- link76[] = {67,71};
- link77[] = {68,69};
- link78[] = {69,66};
- link79[] = {69,70};
- link80[] = {70,42};
- link81[] = {71,18};
- link82[] = {72,73};
- link83[] = {73,74};
- link84[] = {74,75};
- link85[] = {75,57};
- link86[] = {76,78};
- link87[] = {77,76};
- link88[] = {78,57};
- globals[] = {25.000000,1,0,0,0,640,480,1,143,6316128,1,-158.844666,996.923462,645.150146,-280.887787,1137,911,1};
- window[] = {2,-1,-1,-1,-1,908,150,1428,150,3,1155};
- *//*%FSM</HEAD>*/
- class FSM
- {
- fsmName = "DayZ Player Monitor";
- class States
- {
- /*%FSM<STATE "init">*/
- class init
- {
- name = "init";
- init = /*%FSM<STATEINIT""">*/"dayz_versionNo = getText(configFile >> ""CfgMods"" >> ""DayZ"" >> ""version"");" \n
- "diag_log (""DAYZ: CLIENT IS RUNNING DAYZ_CODE "" + str(dayz_versionNo));" \n
- "" \n
- "_AuthAttempt = 0;" \n
- "" \n
- "0 fadeSound 0;" \n
- "//player setPosATL [-2148,6655,0];" \n
- "" \n
- "progressLoadingScreen 0.1;" \n
- "0 cutText ["""",""BLACK""];" \n
- "" \n
- "_timeStart = diag_tickTime;" \n
- "_readytoAuth = false;" \n
- "_startCheck = 0;" \n
- "//player enableSimulation false;" \n
- "if(isNil ""DZEdebug"") then { DZEdebug = false; };" \n
- "_debug = DZEdebug;" \n
- "" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Client">*/
- class Client
- {
- 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
- {
- 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";
- init = /*%FSM<STATEINIT""">*/""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Allow_Conn">*/
- class Allow_Conn
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "if (_debug) then {" \n
- "diag_log (""PLOGIN: Initating"");" \n
- "};" \n
- "" \n
- "dayz_loadScreenMsg = (localize ""str_player_13""); " \n
- "" \n
- "progressLoadingScreen 0.2;" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Initialized">*/
- class Initialized
- {
- priority = 0.000000;
- to="Enable_Sim";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!isnil ""bis_fnc_init"""/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/"dayz_forceSave = {" \n
- "_gearSave = false;" \n
- "" \n
- "if (!dialog) then {" \n
- " createGearDialog [player, ""RscDisplayGear""];" \n
- " _gearSave = true;" \n
- "};" \n
- "" \n
- "_dialog = findDisplay 106;" \n
- "_magazineArray = [];" \n
- "" \n
- "//Primary Mags" \n
- "for ""_i"" from 109 to 120 do " \n
- "{" \n
- " _control = _dialog displayCtrl _i;" \n
- " _item = gearSlotData _control;" \n
- " _val = gearSlotAmmoCount _control;" \n
- " _max = getNumber (configFile >> ""CfgMagazines"" >> _item >> ""count"");" \n
- " if (_item != """") then {" \n
- " if (_val != _max) then {" \n
- " _magazineArray set [count _magazineArray,[_item,_val]];" \n
- " } else {" \n
- " _magazineArray set [count _magazineArray,_item];" \n
- " };" \n
- " };" \n
- "};" \n
- "" \n
- "//Secondary Mags" \n
- "for ""_i"" from 122 to 129 do " \n
- "{" \n
- " _control = _dialog displayCtrl _i;" \n
- " _item = gearSlotData _control;" \n
- " _val = gearSlotAmmoCount _control;" \n
- " _max = getNumber (configFile >> ""CfgMagazines"" >> _item >> ""count"");" \n
- " if (_item != """") then {" \n
- " if (_val != _max) then {" \n
- " _magazineArray set [count _magazineArray,[_item,_val]];" \n
- " } else {" \n
- " _magazineArray set [count _magazineArray,_item];" \n
- " };" \n
- " };" \n
- "};" \n
- "" \n
- "if (_gearSave) then {" \n
- " closeDialog 0;" \n
- "};" \n
- "" \n
- " _medical = player call player_sumMedical;" \n
- " " \n
- " /*" \n
- " Get character state details" \n
- " */" \n
- " _currentWpn = currentMuzzle player;" \n
- " _currentAnim = animationState player;" \n
- " _config = configFile >> ""CfgMovesMaleSdr"" >> ""States"" >> _currentAnim;" \n
- " _onLadder = (getNumber (_config >> ""onLadder"")) == 1;" \n
- " _isTerminal = (getNumber (_config >> ""terminal"")) == 1;" \n
- " _isInVehicle = vehicle player != player;" \n
- " //_wpnDisabled = (getNumber (_config >> ""disableWeapons"")) == 1;" \n
- " _currentModel = typeOf player;" \n
- " _charPos = getPosATL player;" \n
- " _playerPos = [round(direction player),_charPos];" \n
- " " \n
- " if (_onLadder or _isInVehicle or _isTerminal) then {" \n
- " _currentAnim = """";" \n
- " //If position to be updated, make sure it is at ground level!" \n
- " if ((count _playerPos > 0) and !_isTerminal) then {" \n
- " _charPos set [2,0];" \n
- " _playerPos set[1,_charPos];" \n
- " };" \n
- " };" \n
- " if (_isInVehicle) then {" \n
- " _currentWpn = """";" \n
- " } else {" \n
- " if ( typeName(_currentWpn) == ""STRING"" ) then {" \n
- " _muzzles = getArray(configFile >> ""cfgWeapons"" >> _currentWpn >> ""muzzles"");" \n
- " if (count _muzzles > 1) then {" \n
- " _currentWpn = currentMuzzle player;" \n
- " }; " \n
- " } else {" \n
- " //diag_log (""DW_DEBUG: _currentWpn: "" + str(_currentWpn));" \n
- " _currentWpn = """";" \n
- " };" \n
- " };" \n
- " _temp = round(player getVariable [""temperature"",100]);" \n
- " _currentState = [_currentWpn,_currentAnim,_temp];" \n
- " " \n
- " dayz_Magazines = _magazineArray;" \n
- " PVDZE_plr_Save = [player,dayz_Magazines,false,true];" \n
- " publicVariableServer ""PVDZE_plr_Save"";" \n
- " " \n
- " if (isServer) then {" \n
- " PVDZE_plr_Save call server_playerSync;" \n
- " };" \n
- " " \n
- " dayz_lastSave = diag_tickTime;" \n
- " dayz_Magazines = [];" \n
- "};"/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Prepare">*/
- class Prepare
- {
- name = "Prepare";
- init = /*%FSM<STATEINIT""">*/"if (_debug) then {" \n
- "diag_log (""PLOGIN: Player Model Exists"");" \n
- "};"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "player___player">*/
- class player___player
- {
- priority = 0.000000;
- to="Collect";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"player == player"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Collect">*/
- class Collect
- {
- name = "Collect";
- init = /*%FSM<STATEINIT""">*/"if (_debug) then {" \n
- "diag_log (""PLOGIN: Player Ready"");" \n
- "};" \n
- "dayz_loadScreenMsg = (localize ""str_player_13""); " \n
- "" \n
- "progressLoadingScreen 0.3;" \n
- "" \n
- "_playerUID = getPlayerUID player;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "no_PlayerID">*/
- class no_PlayerID
- {
- 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
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "_myTime = diag_tickTime;" \n
- "1 cutText [localize ""str_player_14"", ""PLAIN"",15];"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"if (_debug) then {" \n
- "diag_log (""PLOGIN: Requesting Authentication... ("" + _playerUID + "")"");" \n
- "};" \n
- "dayz_loadScreenMsg = (localize ""str_player_15"");" \n
- "" \n
- "progressLoadingScreen 0.7;" \n
- "" \n
- "_msg = [];" \n
- "" \n
- "PVDZE_plr_Login = [_playerUID,player];" \n
- "publicVariableServer ""PVDZE_plr_Login"";" \n
- "" \n
- "if (isServer) then {" \n
- " PVDZE_plr_Login call server_playerLogin;" \n
- "};" \n
- "" \n
- "dayzPlayerLogin = [];" \n
- "" \n
- "_myTime = diag_tickTime;" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "retry_">*/
- class retry_
- {
- 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
- {
- priority = 0.000000;
- to="Parse_Login";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"count (dayzPlayerLogin) > 1"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/"_msg = dayzPlayerLogin;"/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Parse_Login">*/
- class Parse_Login
- {
- name = "Parse_Login";
- init = /*%FSM<STATEINIT""">*/"dayz_authed = true;" \n
- "" \n
- "progressLoadingScreen 0.6;" \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
- "" \n
- "_isHiveOk = false;" \n
- "_newPlayer = false;" \n
- "_isInfected = false;" \n
- "" \n
- "if (count _msg > 7) then {" \n
- " _isHiveOk = _msg select 7;" \n
- " _newPlayer = _msg select 8;" \n
- " _isInfected = _msg select 9;" \n
- " diag_log (""PLAYER RESULT: "" + str(_isHiveOk));" \n
- "};" \n
- "" \n
- "dayz_loadScreenMsg = (localize ""str_player_17""); " \n
- "progressLoadingScreen 0.8;" \n
- "if (_debug) then {" \n
- "diag_log (""PLOGIN: authenticated with : "" + str(_msg));" \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
- "" \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
- {
- 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_Infected_Cha">*/
- class New_Infected_Cha
- {
- priority = 5.000000;
- to="Player_Zombie__S";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"_isNew && _isInfected == 1"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- /*%FSM<LINK "New_Character">*/
- class New_Character
- {
- priority = 5.000000;
- to="Gender_Selection";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"_isNew && _isInfected == 0"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- /*%FSM<LINK "Hive_Ok">*/
- class Hive_Ok
- {
- priority = 0.000000;
- to="Phase_One";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "ERROR__Wrong_HIVE">*/
- class ERROR__Wrong_HIVE
- {
- name = "ERROR__Wrong_HIVE";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "" \n
- "_myTime = diag_tickTime;" \n
- "1 cutText [(localize ""str_epoch_player_112""), ""PLAIN"",5];"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"dayz_playerName = name player;" \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 = [[""Mk_48_DZ"",""NVGoggles"",""Binocular_Vector"",""M9SD"",""ItemGPS"",""ItemToolbox"",""ItemEtool"",""ItemCompass"",""ItemMatchbox"",""FoodCanBakedBeans"",""ItemKnife"",""ItemMap"",""ItemWatch""],[[""100Rnd_762x51_M240"",47],""ItemPainkiller"",""ItemBandage"",""15Rnd_9x19_M9SD"",""100Rnd_762x51_M240"",""ItemBandage"",""ItemBandage"",""15Rnd_9x19_M9SD"",""15Rnd_9x19_M9SD"",""15Rnd_9x19_M9SD"",""ItemMorphine"",""PartWoodPile""]];" \n
- "" \n
- "player removeWeapon ""ItemRadio"";" \n
- "player removeWeapon ""ItemMap"";" \n
- "player removeWeapon ""ItemCompass"";" \n
- "player removeWeapon ""ItemWatch"";" \n
- "player removeWeapon ""ItemGPS"";" \n
- "player removeWeapon ""NVGoggles"";" \n
- "player removeWeapon ""APSI"";" \n
- "player removeWeapon ""mut_heart"";" \n
- "dayzGearSave = false;" \n
- "_inventory call player_gearSet;" \n
- "" \n
- "//player addMagazine ""7Rnd_45ACP_1911"";" \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 = ""WoodenArrow"" }; // Convert BoltSteel to WoodenArrow" \n
- " if (_x == ""ItemTent"") then { _x = ""ItemTentOld"" };" \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
- "" \n
- "dayzPlayerLogin2 = [];" \n
- "//[""PVDZE_plr_Login2"",[_charID,player,_playerUID]] call callRpcProcedure;" \n
- "" \n
- "PVDZE_plr_Login2 = [_charID,player,_playerUID];" \n
- "publicVariableServer ""PVDZE_plr_Login2"";" \n
- "" \n
- "dayz_loadScreenMsg = ""Requesting Character data from server"";" \n
- "progressLoadingScreen 0.9;" \n
- "if (_debug) then {" \n
- "diag_log ""Attempting Phase two..."";" \n
- "};"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Response">*/
- class Response
- {
- priority = 0.000000;
- to="Phase_Two";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"count (dayzPlayerLogin2) > 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";
- init = /*%FSM<STATEINIT""">*/"dayz_loadScreenMsg = ""Character Data received from server""; " \n
- "if (_debug) then {" \n
- "diag_log ""Finished..."";" \n
- "};" \n
- "_worldspace = dayzPlayerLogin2 select 0;" \n
- "_state = dayzPlayerLogin2 select 1;" \n
- "" \n
- "_setDir = _worldspace select 0;" \n
- "_setPos = _worldspace select 1;" \n
- "" \n
- "if (isNil ""freshSpawn"") then {" \n
- " freshSpawn = 0;" \n
- "};" \n
- "" \n
- "if(dayz_paraSpawn and (freshSpawn == 2)) then {" \n
- " player setDir _setDir;" \n
- " player setPosATL [(_setPos select 0),(_setPos select 1),2000];" \n
- " [player,2000] spawn BIS_fnc_halo;" \n
- "} else {" \n
- "" \n
- " // make protective box" \n
- " DZE_PROTOBOX = createVehicle [""DebugBoxPlayer_DZ"", _setPos, [], 0, ""CAN_COLLIDE""];" \n
- " DZE_PROTOBOX setDir _setDir;" \n
- " DZE_PROTOBOX setPosATL _setPos;" \n
- "" \n
- " player setDir _setDir;" \n
- " player setPosATL _setPos;" \n
- "};" \n
- "" \n
- "{" \n
- " if (player getVariable[""hit_""+_x,false]) then { " \n
- " [player,_x,_x] spawn fnc_usec_damageBleed; " \n
- " usecBleed = [player,_x,_x];" \n
- " publicVariable ""usecBleed""; // 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 only if player is not pzombie" \n
- " if(!(player isKindOf ""PZombie_VB"")) then {" \n
- " _config = (configFile >> ""CfgSurvival"" >> ""Inventory"" >> ""Default"");" \n
- " _mags = getArray (_config >> ""magazines"");" \n
- " _wpns = getArray (_config >> ""weapons""); " \n
- " _bcpk = getText (_config >> ""backpack"");" \n
- " _bcpkWpn = getText (_config >> ""backpackWeapon"");" \n
- " if(!isNil ""DefaultMagazines"") then {" \n
- " _mags = DefaultMagazines;" \n
- " };" \n
- " if(!isNil ""DefaultWeapons"") then {" \n
- " _wpns = DefaultWeapons;" \n
- " };" \n
- " if(!isNil ""DefaultBackpack"") then {" \n
- " _bcpk = DefaultBackpack;" \n
- " };" \n
- " if(!isNil ""DefaultBackpackWeapon"") then {" \n
- " _bcpkWpn = DefaultBackpackWeapon;" \n
- " };" \n
- " //Add inventory" \n
- " {" \n
- " _isOK = isClass(configFile >> ""CfgMagazines"" >> _x);" \n
- " if (_isOK) then {" \n
- " player addMagazine _x;" \n
- " };" \n
- " } forEach _mags;" \n
- " {" \n
- " _isOK = isClass(configFile >> ""CfgWeapons"" >> _x);" \n
- " if (_isOK) then {" \n
- " player addWeapon _x;" \n
- " };" \n
- " } forEach _wpns;" \n
- " " \n
- " if (_bcpk != """") then {" \n
- " player addBackpack _bcpk; " \n
- " dayz_myBackpack = unitBackpack player;" \n
- " };" \n
- " if (_bcpkWpn != """") then {" \n
- " dayz_myBackpack addWeaponCargoGlobal [_bcpkWpn,1];" \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
- "" \n
- "//Hunger/Thirst" \n
- "_messing = player getVariable[""messing"",[0,0]];" \n
- "dayz_hunger = _messing select 0;" \n
- "dayz_thirst = _messing select 1;" \n
- "" \n
- "//player setVariable [""humanity"",-3000, true];"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Alive">*/
- class Alive
- {
- priority = 0.000000;
- to="Position";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!r_player_dead"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- /*%FSM<LINK "Dead_Player">*/
- class Dead_Player
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "_myTime = diag_tickTime;" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"//Location" \n
- "_myLoc = getPosATL player;" \n
- "" \n
- "dayz_loadScreenMsg = ""Setup Completed, please wait..."";" \n
- "" \n
- "//GUI" \n
- "3 cutRsc [""playerStatusGUI"", ""PLAIN"",0];" \n
- "//5 cutRsc [""playerKillScore"", ""PLAIN"",2];" \n
- "" \n
- "//Update GUI" \n
- "call player_updateGui;" \n
- "_id = [] spawn {" \n
- " disableSerialization;" \n
- " _display = uiNamespace getVariable 'DAYZ_GUI_display';" \n
- " _control = _display displayCtrl 1204;" \n
- " _control ctrlShow false;" \n
- " if (!r_player_injured) then {" \n
- " _ctrlBleed = _display displayCtrl 1303;" \n
- " _ctrlBleed ctrlShow false;" \n
- " };" \n
- " if (!r_fracture_legs and !r_fracture_arms) then {" \n
- " _ctrlFracture = _display displayCtrl 1203;" \n
- " _ctrlFracture ctrlShow false;" \n
- " };" \n
- "};" \n
- "" \n
- "call ui_changeDisplay;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Bad_Version">*/
- class Bad_Version
- {
- 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
- {
- priority = 0.000000;
- to="Stream";
- 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";
- init = /*%FSM<STATEINIT""">*/"//Reveal action types" \n
- "" \n
- "{player reveal _x} forEach (nearestObjects [getPosATL player, dayz_reveal, 50]);" \n
- "" \n
- "dayz_clientPreload = true;" \n
- "3 fadeSound 1;" \n
- "1 cutText ["""", ""PLAIN""];" \n
- "0 fadeMusic 0.5;" \n
- "" \n
- "//Check mission objects" \n
- "{ " \n
- " if (typeOf _x == ""RoadFlare"") then { " \n
- " _id = [_x,0] spawn object_roadFlare " \n
- " } else {" \n
- " _id = [_x,1] spawn object_roadFlare " \n
- " };" \n
- " } forEach (allMissionObjects ""LitObject"");"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Display_Ready">*/
- class Display_Ready
- {
- priority = 0.000000;
- to="Preload_Display";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!(isNull (findDisplay 46))"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "ERROR__Bad_Versi">*/
- class ERROR__Bad_Versi
- {
- name = "ERROR__Bad_Versi";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "_myTime = diag_tickTime;" \n
- "" \n
- "dayz_loadScreenMsg = ""You are running an incorrect version, please download update from dayzepoch.com."";" \n
- "" \n
- "1 cutText [format[localize ""str_player_18"",dayz_versionNo,_version], ""PLAIN""];" \n
- "" \n
- "progressLoadingScreen 0.5;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- priority = 0.000000;
- to="get_ready_to_clo_1";
- 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";
- init = /*%FSM<STATEINIT""">*/"dayz_lastCheckBit = 0;" \n
- "" \n
- "(findDisplay 46) displayAddEventHandler [""KeyDown"",""_this call dayz_spaceInterrupt""];" \n
- "player disableConversation true;" \n
- "" \n
- "eh_player_killed = player addeventhandler [""FiredNear"",{_this call player_weaponFiredNear;} ];" \n
- "//_eh_combat_projectilenear = player addEventHandler [""IncomingFire"",{_this call player_projectileNear;}];" \n
- "" \n
- "//Select Weapon" \n
- "// Desc: select default weapon & handle multiple muzzles" \n
- "_playerObjName = format[""PVDZE_player%1"",_playerUID];" \n
- "call compile format[""PVDZE_player%1 = player;"",_playerUID];" \n
- "////diag_log (format[""player%1 = player"",_playerUID]);" \n
- "publicVariableServer _playerObjName;" \n
- "" \n
- "//_state = player getVariable[""state"",[]];" \n
- "_currentWpn = """";" \n
- "_currentAnim = """";" \n
- "if (count _state > 0) 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
- " if ((count _state > 3) and DZE_FriendlySaving) then {" \n
- " DZE_Friends = _state select 3;" \n
- " }; " \n
- "} else {" \n
- " _currentWpn = ""Makarov"";" \n
- " _currentAnim = ""aidlpercmstpsraswpstdnon_player_idlesteady02"";" \n
- "};" \n
- "" \n
- "if (player hasWeapon ""MeleeCrowbar"") then {" \n
- " player removeMagazine 'crowbar_swing'; " \n
- " player addMagazine 'crowbar_swing';" \n
- "};" \n
- "if (player hasWeapon ""MeleeSledge"") then {" \n
- " player removeMagazine 'sledge_swing'; " \n
- " player addMagazine 'sledge_swing';" \n
- "};" \n
- "if (player hasWeapon ""MeleeHatchet_DZE"") then {" \n
- " player removeMagazine 'Hatchet_Swing'; " \n
- " player addMagazine 'Hatchet_Swing';" \n
- "};" \n
- "if (player hasWeapon ""MeleeMachete"") then {" \n
- " player removeMagazine 'Machete_Swing'; " \n
- " player addMagazine 'Machete_Swing';" \n
- "};" \n
- "if (player hasWeapon ""MeleeFishingPole"") then {" \n
- " player removeMagazine 'Fishing_Swing'; " \n
- " player addMagazine 'Fishing_Swing';" \n
- "};" \n
- "" \n
- "reload player;" \n
- "" \n
- "if (_currentAnim != """" and !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
- "//Player control loop" \n
- "dayz_monitor1 = [] spawn {" \n
- " while {true} do {" \n
- " call player_zombieCheck;" \n
- " sleep 1;" \n
- " };" \n
- "};" \n
- "" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Preload_Done">*/
- class Preload_Done
- {
- priority = 0.000000;
- to="Initialize";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"dayz_preloadFinished"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Initialize">*/
- class Initialize
- {
- name = "Initialize";
- init = /*%FSM<STATEINIT""">*/"//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
- "if (r_player_unconscious) then {" \n
- " r_player_timeout = player getVariable[""unconsciousTime"",0];" \n
- " player playActionNow ""Die"";" \n
- "};" \n
- "player allowDamage true;" \n
- "player enableSimulation true;" \n
- "0 cutText ["""", ""BLACK IN"",3];" \n
- "" \n
- "//Add core tools" \n
- "player addWeapon ""Loot"";" \n
- "player addWeapon ""Flare"";" \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
- "" \n
- """colorCorrections"" ppEffectEnable true;" \n
- """colorCorrections"" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1 min (4*r_player_blood/3/r_player_bloodTotal)], [1, 1, 1, 0.0]];" \n
- """colorCorrections"" ppEffectCommit 0;" \n
- "" \n
- "dayz_gui = [] spawn {" \n
- " private[""_distance""];" \n
- " dayz_musicH = [] spawn player_music;" \n
- " _wasInVehicle = false;" \n
- " _thisVehicle = objNull;" \n
- " while {true} do {" \n
- " _array = player call world_surfaceNoise;" \n
- " dayz_surfaceNoise = _array select 1;" \n
- " dayz_surfaceType = _array select 0;" \n
- "" \n
- " call player_checkStealth;" \n
- " dayz_statusArray = [] call player_updateGui;" \n
- "" \n
- " _vehicle = vehicle player;" \n
- " if (_vehicle != player) then {" \n
- " _wasInVehicle = true;" \n
- " _thisVehicle = _vehicle;" \n
- " } else {" \n
- " if (_wasInVehicle) then {" \n
- " _wasInVehicle = false;" \n
- " _thisVehicle call player_antiWall;" \n
- " };" \n
- " };" \n
- " sleep 0.2;" \n
- " };" \n
- "};" \n
- "" \n
- "dayzGearSave = true;" \n
- "" \n
- "dayz_slowCheck = [] spawn player_spawn_2;" \n
- "" \n
- "_world = toUpper(worldName); //toUpper(getText (configFile >> ""CfgWorlds"" >> (worldName) >> ""description""));" \n
- "_nearestCity = nearestLocations [getPos player, [""NameCityCapital"",""NameCity"",""NameVillage"",""NameLocal""],1000];" \n
- "Dayz_logonTown = ""Wilderness"";" \n
- "" \n
- "if (count _nearestCity > 0) then {Dayz_logonTown = text (_nearestCity select 0)};" \n
- "" \n
- "_first = [_world,Dayz_logonTown,localize (""str_player_06"") + "" "" + str(_days)] spawn BIS_fnc_infoText;" \n
- "" \n
- "Dayz_logonTime = daytime;" \n
- "Dayz_logonDate = dayz_Survived;" \n
- "" \n
- "dayz_animalCheck = [] spawn player_spawn_1;" \n
- "" \n
- "dayz_spawnCheck = [] spawn {" \n
- " while {true} do {" \n
- " [""both""] call player_spawnCheck;" \n
- " sleep 8;" \n
- " };" \n
- "};" \n
- "" \n
- "dayz_Totalzedscheck = [] spawn {" \n
- " while {true} do {" \n
- " dayz_maxCurrentZeds = {alive _x} count entities ""zZombie_Base"";" \n
- " sleep 60;" \n
- " };" \n
- "};" \n
- "" \n
- "dayz_backpackcheck = [] spawn {" \n
- " while {true} do {" \n
- " call player_dumpBackpack;" \n
- " sleep 1;" \n
- " };" \n
- "};" \n
- "" \n
- "// TODO: questionably" \n
- "{ _x call fnc_veh_ResetEH; } forEach vehicles;" \n
- "" \n
- "private[""_fadeFire""];" \n
- "{" \n
- " _fadeFire = _x getVariable['fadeFire', true];" \n
- " if (!_fadeFire) then {" \n
- " _nul = [_x,2,0,false,false] spawn BIS_Effects_Burn;" \n
- " };" \n
- "} forEach entities ""SpawnableWreck"";" \n
- "" \n
- "// remove box " \n
- "[] spawn {" \n
- " private [""_counter""];" \n
- " _counter = 0;" \n
- " while {true} do {" \n
- " if ((player getVariable[""combattimeout"", 0] >= time) or (_counter >= 60) or (player distance DZE_PROTOBOX > 2)) exitWith {" \n
- " deleteVehicle DZE_PROTOBOX;" \n
- " };" \n
- " sleep 1;" \n
- " _counter = _counter + 1;" \n
- " };" \n
- "};"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "No_time_date">*/
- class No_time_date
- {
- priority = 0.000000;
- to="ERROR__No_Date_or";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!isNil ""PVDZE_plr_SetDate"""/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- /*%FSM<LINK "True">*/
- class True
- {
- priority = 0.000000;
- to="Finish";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/""/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Finish">*/
- class Finish
- {
- name = "Finish";
- init = /*%FSM<STATEINIT""">*/"dayzGearSave = true;" \n
- "dayz_myPosition = getPosATL player;" \n
- "" \n
- "//[""PVDZE_plr_LoginRecord"",[_playerUID,_charID,0]] call callRpcProcedure;" \n
- "" \n
- "PVDZE_plr_LoginRecord = [_playerUID,_charID,0];" \n
- "publicVariableServer ""PVDZE_plr_LoginRecord"";" \n
- "" \n
- "endLoadingScreen;" \n
- ""/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Enable_Sim">*/
- class Enable_Sim
- {
- name = "Enable_Sim";
- init = /*%FSM<STATEINIT""">*/"if (_debug) then {" \n
- "diag_log (""PLOGIN: Enable Sim"");" \n
- "};" \n
- "" \n
- "_myEpochAnim = getText(configFile >> ""CfgPatches"" >> ""dayz_anim"" >> ""dayzVersion"");" \n
- "_myEpoch = getText(configFile >> ""CfgPatches"" >> ""dayz_epoch"" >> ""dayzVersion"");" \n
- "_myEpochB = getText(configFile >> ""CfgPatches"" >> ""dayz_epoch_b"" >> ""dayzVersion"");" \n
- "_myEpochSfx = getText(configFile >> ""CfgPatches"" >> ""dayz_sfx"" >> ""dayzVersion"");" \n
- "" \n
- "" \n
- "player enableSimulation true;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "no_PlayerID">*/
- class no_PlayerID
- {
- priority = 2.000000;
- to="ERROR__No_Player_1";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"(_myEpochAnim != ""1.0.4"") || (_myEpoch != ""1.0.4"") || (_myEpochB != ""1.0.4"") || (_myEpochSfx != ""1.0.4"")"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- /*%FSM<LINK "player_not_null">*/
- class player_not_null
- {
- priority = 0.000000;
- to="Prepare";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!isNull player"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Gender_Selection">*/
- class Gender_Selection
- {
- name = "Gender_Selection";
- init = /*%FSM<STATEINIT""">*/"dayz_selectGender = ""Survivor2_DZ"";" \n
- "1 cutText ["""", ""BLACK"",0];" \n
- "endLoadingScreen;" \n
- "createDialog ""RscDisplayGenderSelect"";" \n
- "freshSpawn = 2;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Selected">*/
- class Selected
- {
- priority = 0.000000;
- to="Process";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"!dialog"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Process">*/
- class Process
- {
- name = "Process";
- init = /*%FSM<STATEINIT""">*/"_model = dayz_selectGender;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Hive_Ok">*/
- class Hive_Ok
- {
- priority = 0.000000;
- to="Phase_One";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "ERROR__No_Player_1">*/
- class ERROR__No_Player_1
- {
- name = "ERROR__No_Player_1";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "_myTime = diag_tickTime;" \n
- "1 cutText [(localize ""str_epoch_player_113""), ""PLAIN"",15];"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"//stream in location" \n
- "//[false] call stream_locationCheck;" \n
- "" \n
- "_zombies = (getPosATL player) nearEntities [""zZombie_Base"",25];" \n
- "{deleteVehicle _x} forEach _zombies;" \n
- "" \n
- "endLoadingScreen;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Preloaded">*/
- class Preloaded
- {
- priority = 0.000000;
- to="Load_In";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"preloadCamera _setPos"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "Retry">*/
- class Retry
- {
- name = "Retry";
- init = /*%FSM<STATEINIT""">*/"diag_log (""PLOGIN: Retrying Authentication... ("" + _playerUID + "")"");" \n
- "dayz_loadScreenMsg = (localize ""str_player_14"");" \n
- "" \n
- "_AuthAttempt = _AuthAttempt +1;" \n
- "" \n
- "_myTime = diag_tickTime;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "auth_failed">*/
- class auth_failed
- {
- 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
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"diag_log (""PLOGIN: Authentication Failed ("" + _playerUID + "")"");" \n
- "dayz_loadScreenMsg = (localize ""str_player_32"");" \n
- "" \n
- "progressLoadingScreen 1;" \n
- "" \n
- "_myTime = diag_tickTime;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "sleep_">*/
- class sleep_
- {
- 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";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "" \n
- "// disable player interaction and move him off site" \n
- "// player setPos [10,10,100000];" \n
- " player enableSimulation false;" \n
- "" \n
- "diag_log (""End Mission"");" \n
- "" \n
- "//if (!isServer) then {" \n
- " failMission ""LOSER"";" \n
- " endMission ""END1""" \n
- "//};"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- };
- };
- /*%FSM</STATE>*/
- /*%FSM<STATE "ERROR__No_Date_or">*/
- class ERROR__No_Date_or
- {
- name = "ERROR__No_Date_or";
- init = /*%FSM<STATEINIT""">*/"endLoadingScreen;" \n
- "selectNoPlayer;" \n
- "_myTime = diag_tickTime;" \n
- "1 cutText [(localize ""str_epoch_player_114""), ""PLAIN"",5];"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Too_Long">*/
- class Too_Long
- {
- 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 "get_ready_to_clo_1">*/
- class get_ready_to_clo_1
- {
- name = "get_ready_to_clo_1";
- init = /*%FSM<STATEINIT""">*/"//diag_log (""PLOGIN:Wrong DayZ Version ("" + dayz_versionNo + "")"");" \n
- "diag_log format[localize ""str_player_18"",dayz_versionNo,_version];" \n
- "" \n
- "dayz_loadScreenMsg = ""You are running an incorrect version of DAYZ_CODE, please download this file from dayzepoch.com."";" \n
- "" \n
- "progressLoadingScreen 1;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "sleep_">*/
- class sleep_
- {
- 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 "Server_Loading">*/
- class Server_Loading
- {
- name = "Server_Loading";
- init = /*%FSM<STATEINIT""">*/"_myTime = diag_tickTime;" \n
- "dayz_loadScreenMsg = (""Waiting for server to start authentication"");" \n
- "if (_debug) then {" \n
- "diag_log ""PLOGIN: Waiting for server to start authentication"";" \n
- "};" \n
- "progressLoadingScreen 0.5;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Server_Ready">*/
- class Server_Ready
- {
- 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
- {
- priority = 0.000000;
- to="Disconnect";
- 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 "Player_Zombie__S">*/
- class Player_Zombie__S
- {
- name = "Player_Zombie__S";
- 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;"/*%FSM</STATEINIT""">*/;
- precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
- class Links
- {
- /*%FSM<LINK "Hive_Ok">*/
- class Hive_Ok
- {
- priority = 0.000000;
- to="Phase_One";
- precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
- condition=/*%FSM<CONDITION""">*/"true"/*%FSM</CONDITION""">*/;
- action=/*%FSM<ACTION""">*/""/*%FSM</ACTION""">*/;
- };
- /*%FSM</LINK>*/
- };
- };
- /*%FSM</STATE>*/
- };
- initState="init";
- finalStates[] =
- {
- "Finish",
- };
- };
- /*%FSM</COMPILE>*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement