Exile_64bit_Conversion/@exileserver/addons/exile_server/fsm/main.fsm
2017-02-23 07:11:54 -06:00

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>*/