143 lines
6.2 KiB
Plaintext
143 lines
6.2 KiB
Plaintext
/*%FSM<COMPILE "C:\Program Files (x86)\Bohemia Interactive\Tools\FSM Editor Personal Edition\scriptedFSM.cfg, main.fsm">*/
|
|
/*%FSM<HEAD>*/
|
|
/*
|
|
item0[] = {"Start",0,250,775.000000,-50.000000,875.000000,0.000000,0.000000,"Start"};
|
|
item1[] = {"Continue",8,218,775.000000,25.000000,875.000000,75.000000,0.000000,"Continue"};
|
|
item2[] = {"Wait",2,250,775.000000,100.000000,875.000000,150.000000,0.000000,"Wait"};
|
|
item3[] = {"Ground_Weapon_Ho",4,4314,650.000000,100.000000,750.000000,150.000000,0.000000,"Ground" \n "Weapon" \n "Holder"};
|
|
item4[] = {"Weapon_Holder_Si",4,218,650.000000,175.000000,750.000000,225.000000,0.000000,"Weapon" \n "Holder" \n "Simulated"};
|
|
item5[] = {"Loot",4,218,775.000000,175.000000,875.000000,225.000000,0.000000,"Loot"};
|
|
item6[] = {"Groups",4,218,900.000000,175.000000,1000.000000,225.000000,0.000000,"Groups"};
|
|
item7[] = {"All_Dead",4,218,900.000000,100.000000,1000.000000,150.000000,0.000000,"All" \n "Dead"};
|
|
link0[] = {0,1};
|
|
link1[] = {1,2};
|
|
link2[] = {2,3};
|
|
link3[] = {2,4};
|
|
link4[] = {2,5};
|
|
link5[] = {2,6};
|
|
link6[] = {2,7};
|
|
link7[] = {3,2};
|
|
link8[] = {4,2};
|
|
link9[] = {5,2};
|
|
link10[] = {6,2};
|
|
link11[] = {7,2};
|
|
globals[] = {25.000000,1,0,0,0,640,480,1,455,6316128,1,507.138519,1104.597778,441.719635,-113.631027,979,1030,1};
|
|
window[] = {2,-1,-1,-1,-1,968,234,1528,234,3,997};
|
|
*//*%FSM</HEAD>*/
|
|
class FSM
|
|
{
|
|
fsmName = "main.fsm";
|
|
class States
|
|
{
|
|
/*%FSM<STATE "Start">*/
|
|
class Start
|
|
{
|
|
name = "Start";
|
|
init = /*%FSM<STATEINIT""">*/"_groundWeaponHolderInterval = 60 * getNumber (configFile >> ""CfgSettings"" >> ""GarbageCollector"" >> ""Ingame"" >> ""GroundWeaponHolder"" >> ""interval"");" \n
|
|
"_groundWeaponHolderLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"_weaponHolderSimulatedInterval = 60 * getNumber (configFile >> ""CfgSettings"" >> ""GarbageCollector"" >> ""Ingame"" >> ""WeaponHolderSimulated"" >> ""interval"");" \n
|
|
"_weaponHolderSimulatedLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"_allDeadInterval = 60 * getNumber (configFile >> ""CfgSettings"" >> ""GarbageCollector"" >> ""Ingame"" >> ""AllDead"" >> ""interval"");" \n
|
|
"_allDeadLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"_lootInterval = 60 * getNumber (configFile >> ""CfgSettings"" >> ""GarbageCollector"" >> ""Ingame"" >> ""Loot"" >> ""interval"");" \n
|
|
"_lootLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"_groupsInterval = 60 * getNumber (configFile >> ""CfgSettings"" >> ""GarbageCollector"" >> ""Ingame"" >> ""Groups"" >> ""interval"");" \n
|
|
"_groupsLastTick = diag_tickTime;"/*%FSM</STATEINIT""">*/;
|
|
precondition = /*%FSM<STATEPRECONDITION""">*/""/*%FSM</STATEPRECONDITION""">*/;
|
|
class Links
|
|
{
|
|
/*%FSM<LINK "Continue">*/
|
|
class Continue
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"true"/*%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 "Weapon_Holder_Si">*/
|
|
class Weapon_Holder_Si
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_ticktime - _weaponHolderSimulatedLastTick) >=_weaponHolderSimulatedInterval"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_weaponHolderSimulatedLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"call ExileServer_system_garbageCollector_unscheduled_deleteWeaponHolderSimulated;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Loot">*/
|
|
class Loot
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_ticktime - _lootLastTick) >=_lootInterval"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_lootLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"call ExileServer_system_garbageCollector_unscheduled_deleteLoot;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Groups">*/
|
|
class Groups
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_ticktime - _groupsLastTick) >=_groupsInterval"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_groupsLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"call ExileServer_system_garbageCollector_unscheduled_deleteGroups;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "All_Dead">*/
|
|
class All_Dead
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_ticktime - _allDeadLastTick) >=_allDeadInterval"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_allDeadLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"call ExileServer_system_garbageCollector_unscheduled_deleteAllDead;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
/*%FSM<LINK "Ground_Weapon_Ho">*/
|
|
class Ground_Weapon_Ho
|
|
{
|
|
priority = 0.000000;
|
|
to="Wait";
|
|
precondition = /*%FSM<CONDPRECONDITION""">*/""/*%FSM</CONDPRECONDITION""">*/;
|
|
condition=/*%FSM<CONDITION""">*/"(diag_ticktime - _groundWeaponHolderLastTick) >=_groundWeaponHolderInterval"/*%FSM</CONDITION""">*/;
|
|
action=/*%FSM<ACTION""">*/"_groundWeaponHolderLastTick = diag_tickTime;" \n
|
|
"" \n
|
|
"call ExileServer_system_garbageCollector_unscheduled_deleteGroundWeaponHolders;"/*%FSM</ACTION""">*/;
|
|
};
|
|
/*%FSM</LINK>*/
|
|
};
|
|
};
|
|
/*%FSM</STATE>*/
|
|
};
|
|
initState="Start";
|
|
finalStates[] =
|
|
{
|
|
};
|
|
};
|
|
/*%FSM</COMPILE>*/ |