From f33f406c73ba9b062d0e8f405f42a92829678d0a Mon Sep 17 00:00:00 2001 From: "[VB]AWOL" Date: Thu, 28 Nov 2013 01:34:24 -0600 Subject: [PATCH] fixes --- SQF/dayz_code/actions/remove.sqf | 2 +- SQF/dayz_code/actions/repair_vehicle.sqf | 3 --- SQF/dayz_code/actions/salvage_vehicle.sqf | 3 --- SQF/dayz_code/actions/trade_any_bicycle.sqf | 2 +- SQF/dayz_code/init/compiles.sqf | 7 ++--- SQF/dayz_server/system/server_cleanup.fsm | 30 ++++++++++----------- 6 files changed, 21 insertions(+), 26 deletions(-) diff --git a/SQF/dayz_code/actions/remove.sqf b/SQF/dayz_code/actions/remove.sqf index ae8efa4c0..b70ac753f 100644 --- a/SQF/dayz_code/actions/remove.sqf +++ b/SQF/dayz_code/actions/remove.sqf @@ -12,7 +12,7 @@ s_player_deleteBuild = 1; _obj = _this select 3; -_activatingPlayer = getPlayerUID player; +_activatingPlayer = player; _objOwnerID = _obj getVariable["CharacterID","0"]; _isOwnerOfObj = (_objOwnerID == dayz_characterID); diff --git a/SQF/dayz_code/actions/repair_vehicle.sqf b/SQF/dayz_code/actions/repair_vehicle.sqf index b3cff65b7..00efd1914 100644 --- a/SQF/dayz_code/actions/repair_vehicle.sqf +++ b/SQF/dayz_code/actions/repair_vehicle.sqf @@ -1,8 +1,5 @@ private ["_part","_cancel","_color","_allFixed","_percent","_string","_handle","_damage","_cmpt","_vehicle","_hitpoints"]; -// [ _trader_id, _category, _action ]; -// _activatingPlayer = getPlayerUID player; - _vehicle = _this select 3; {dayz_myCursorTarget removeAction _x} forEach s_player_repairActions;s_player_repairActions = []; diff --git a/SQF/dayz_code/actions/salvage_vehicle.sqf b/SQF/dayz_code/actions/salvage_vehicle.sqf index 74d6bc799..e65c602e9 100644 --- a/SQF/dayz_code/actions/salvage_vehicle.sqf +++ b/SQF/dayz_code/actions/salvage_vehicle.sqf @@ -1,8 +1,5 @@ private ["_part","_cancel","_color","_percent","_string","_handle","_damage","_cmpt","_vehicle","_hitpoints"]; -// [ _trader_id, _category, _action ]; -// _activatingPlayer = getPlayerUID player; - _vehicle = _this select 3; {dayz_myCursorTarget removeAction _x} forEach s_player_repairActions;s_player_repairActions = []; diff --git a/SQF/dayz_code/actions/trade_any_bicycle.sqf b/SQF/dayz_code/actions/trade_any_bicycle.sqf index 80002d3dc..4beb9de0e 100644 --- a/SQF/dayz_code/actions/trade_any_bicycle.sqf +++ b/SQF/dayz_code/actions/trade_any_bicycle.sqf @@ -9,7 +9,7 @@ DZE_ActionInProgress = true; // [part_out,part_in, qty_out, qty_in, loc]; -_activatingPlayer = getPlayerUID player; +_activatingPlayer = player; _part_out = (_this select 3) select 0; _part_in = (_this select 3) select 1; diff --git a/SQF/dayz_code/init/compiles.sqf b/SQF/dayz_code/init/compiles.sqf index bcb82aab3..82c576269 100644 --- a/SQF/dayz_code/init/compiles.sqf +++ b/SQF/dayz_code/init/compiles.sqf @@ -506,12 +506,13 @@ if (!isDedicated) then { dayz_EjectPlayer = { // check if player in vehicle - _vehicle = vehicle player; + private ["_noDriver","_vehicle","_inVehicle"]; + _vehicle = vehicle player; _inVehicle = (_vehicle != player); if(_inVehicle) then { _noDriver = ((_vehicle emptyPositions "driver") > 0); - if (_noDriver) then { - player action [ "eject", (vehicle player)]; + if (_noDriver and (speed _vehicle) != 0) then { + player action [ "eject", _vehicle]; }; }; }; diff --git a/SQF/dayz_server/system/server_cleanup.fsm b/SQF/dayz_server/system/server_cleanup.fsm index 8900374fd..786a930e9 100644 --- a/SQF/dayz_server/system/server_cleanup.fsm +++ b/SQF/dayz_server/system/server_cleanup.fsm @@ -7,7 +7,7 @@ item2[] = {"waiting",2,250,-75.000000,-200.000000,25.000000,-150.000000,0.000000 item3[] = {"___min_loop",4,218,-75.000000,-75.000000,25.000000,-25.000000,4.000000,"5 min" \n "loop"}; item4[] = {"sync_time",2,250,-75.000000,25.000000,25.000000,75.000000,0.000000,"sync time"}; item5[] = {"true",8,218,-75.000000,125.000000,25.000000,175.000000,0.000000,"true"}; -item6[] = {"general_cleanup",2,250,-75.000000,200.000000,25.000000,250.000000,0.000000,"general" \n "cleanup" \n "loop"}; +item6[] = {"general_cleanup",2,4346,-75.000000,200.000000,25.000000,250.000000,0.000000,"general" \n "cleanup" \n "loop"}; item7[] = {"",7,210,-491.500000,220.999985,-483.500000,229.000015,0.000000,""}; item8[] = {"",7,210,-491.500000,-253.999969,-483.500000,-246.000031,0.000000,""}; item9[] = {"",7,210,421.000000,-178.999985,428.999969,-171.000015,0.000000,""}; @@ -25,7 +25,7 @@ item20[] = {"cleanup_loot",2,250,-200.000000,25.000000,-100.000000,75.000000,0.0 item21[] = {"__5_min__loop",4,218,175.000000,-75.000000,275.000000,-25.000000,6.000000,"15 min" \n " loop"}; item22[] = {"cleanup_animals",2,250,175.000000,25.000000,275.000000,75.000000,0.000000,"cleanup" \n "animals and fire"}; item23[] = {"__0_min__loop",4,218,300.000000,-75.000000,400.000000,-25.000000,7.000000,"30 min" \n " loop"}; -item24[] = {"cleanup_null",2,4346,300.000000,25.000000,400.000000,75.000000,0.000000,"cleanup" \n "null"}; +item24[] = {"cleanup_null",2,250,300.000000,25.000000,400.000000,75.000000,0.000000,"cleanup" \n "null"}; link0[] = {0,11}; link1[] = {1,2}; link2[] = {2,3}; @@ -59,7 +59,7 @@ link29[] = {22,5}; link30[] = {23,24}; link31[] = {24,5}; globals[] = {25.000000,1,0,0,0,640,480,1,42,6316128,1,-508.946564,440.498199,435.888916,-341.331024,861,880,1}; -window[] = {2,-1,-1,-1,-1,1020,208,1500,208,3,879}; +window[] = {2,-1,-1,-1,-1,838,1706,2998,26,3,879}; *//*%FSM*/ class FSM { @@ -207,7 +207,16 @@ class FSM class general_cleanup { name = "general_cleanup"; - init = /*%FSM*/"//diag_log ""CLEANUP: Starting loop for next task"";"/*%FSM*/; + init = /*%FSM*/"//diag_log ""CLEANUP: Starting loop for next task"";" \n + "" \n + "//Clean groups" \n + "{" \n + " // diag_log (""CLEANUP: CHECKING GROUP WITH "" + str(count units _x) + "" UNITS"");" \n + " if (count units _x==0) then {" \n + " deleteGroup _x;" \n + " // diag_log (""CLEANUP: DELETING A GROUP"");" \n + " };" \n + "} forEach allGroups;"/*%FSM*/; precondition = /*%FSM*/""/*%FSM*/; class Links { @@ -283,16 +292,7 @@ class FSM class group_cleanup { name = "group_cleanup"; - init = /*%FSM*/"//Clean groups" \n - "{" \n - " // diag_log (""CLEANUP: CHECKING GROUP WITH "" + str(count units _x) + "" UNITS"");" \n - " if (count units _x==0) then {" \n - " deleteGroup _x;" \n - " // diag_log (""CLEANUP: DELETING A GROUP"");" \n - " };" \n - "} forEach allGroups;" \n - "" \n - "//Check for hackers" \n + init = /*%FSM*/"//Check for hackers" \n " {" \n " if(vehicle _x != _x && !(vehicle _x in PVDZE_serverObjectMonitor) && (isPlayer _x) && !((typeOf vehicle _x) in DZE_safeVehicle)) then {" \n " diag_log (""CLEANUP: KILLING A HACKER "" + (name _x) + "" "" + str(_x) + "" IN "" + (typeOf vehicle _x));" \n @@ -392,7 +392,7 @@ class FSM class cleanup_null { name = "cleanup_null"; - init = /*%FSM*/"// [] spawn server_spawnCleanNull;"/*%FSM*/; + init = /*%FSM*/"[] spawn server_spawnCleanNull;"/*%FSM*/; precondition = /*%FSM*/""/*%FSM*/; class Links {