diff --git a/SQF/dayz_code/actions/AdvancedTrading/functions/z_at_buyItems.sqf b/SQF/dayz_code/actions/AdvancedTrading/functions/z_at_buyItems.sqf index c6392dce7..cb4749e78 100644 --- a/SQF/dayz_code/actions/AdvancedTrading/functions/z_at_buyItems.sqf +++ b/SQF/dayz_code/actions/AdvancedTrading/functions/z_at_buyItems.sqf @@ -1,7 +1,6 @@ private ["_weaponsToBuy","_backpacksToBuy","_toolsToBuy","_sidearmToBuy","_primaryToBuy","_priceToBuy" ,"_enoughMoney","_myMoney","_canBuy","_moneyInfo","_count","_success","_toolClasses","_itemsToLog" -,"_tCost","_bTotal","_backpack","_pistolMagsToBuy","_regularMagsToBuy","_hasPrimary","_p","_toolAmounts" -,"_near"]; +,"_tCost","_bTotal","_backpack","_pistolMagsToBuy","_regularMagsToBuy","_hasPrimary","_p","_toolAmounts"]; if (count Z_BuyingArray < 1) exitWith { systemChat localize "STR_EPOCH_TRADE_BUY_NO_ITEMS"; }; @@ -149,8 +148,7 @@ if (_enoughMoney) then { _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; if (_buyingType in DZE_tradeVehicleKeyless) then { PVDZE_veh_Publish2 = [[_dir,_location],_part_out,true,"0",_activatingPlayer]; diff --git a/SQF/dayz_code/actions/trade_any_bicycle.sqf b/SQF/dayz_code/actions/trade_any_bicycle.sqf index 295f43f28..71da6ae82 100644 --- a/SQF/dayz_code/actions/trade_any_bicycle.sqf +++ b/SQF/dayz_code/actions/trade_any_bicycle.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_isOk","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_keyColor","_keyNumber","_keySelected","_isKeyOK","_config","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done","_near"]; +private ["_sign","_location","_isOk","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_keyColor","_keyNumber","_keySelected","_isKeyOK","_config","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -129,8 +129,7 @@ if (_finished) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,true,dayz_characterID,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_bicycle_old.sqf b/SQF/dayz_code/actions/trade_any_bicycle_old.sqf index 64e1633fc..d00fb7ded 100644 --- a/SQF/dayz_code/actions/trade_any_bicycle_old.sqf +++ b/SQF/dayz_code/actions/trade_any_bicycle_old.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear","_near"]; +private ["_sign","_location","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -106,8 +106,7 @@ if (_qty >= _qty_in) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,true,dayz_characterID,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_boat.sqf b/SQF/dayz_code/actions/trade_any_boat.sqf index d70dadc43..f9a056194 100644 --- a/SQF/dayz_code/actions/trade_any_boat.sqf +++ b/SQF/dayz_code/actions/trade_any_boat.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done","_near"]; +private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -134,8 +134,7 @@ if (_finished) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,false,_result select 1,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_boat_old.sqf b/SQF/dayz_code/actions/trade_any_boat_old.sqf index fe3348ebb..2849c83a0 100644 --- a/SQF/dayz_code/actions/trade_any_boat_old.sqf +++ b/SQF/dayz_code/actions/trade_any_boat_old.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_okToSell","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear","_near"]; +private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_okToSell","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -112,8 +112,7 @@ if (_qty >= _qty_in) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,false,_result select 1,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_vehicle.sqf b/SQF/dayz_code/actions/trade_any_vehicle.sqf index 95ab4b01f..e02fc0c83 100644 --- a/SQF/dayz_code/actions/trade_any_vehicle.sqf +++ b/SQF/dayz_code/actions/trade_any_vehicle.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_keyColor","_damage","_tireDmg","_tires","_okToSell","_temp_keys","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done","_near"]; +private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_keyColor","_damage","_tireDmg","_tires","_okToSell","_temp_keys","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -133,8 +133,7 @@ if (_finished) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,false,_result select 1,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_vehicle_free.sqf b/SQF/dayz_code/actions/trade_any_vehicle_free.sqf index 238a7b04f..f42229071 100644 --- a/SQF/dayz_code/actions/trade_any_vehicle_free.sqf +++ b/SQF/dayz_code/actions/trade_any_vehicle_free.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done","_near"]; +private ["_sign","_location","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_canAfford","_trade_total","_total_currency","_return_change","_done"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -132,8 +132,7 @@ if (_finished) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,true,0,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/actions/trade_any_vehicle_old.sqf b/SQF/dayz_code/actions/trade_any_vehicle_old.sqf index bab44bc1f..a8e78b86b 100644 --- a/SQF/dayz_code/actions/trade_any_vehicle_old.sqf +++ b/SQF/dayz_code/actions/trade_any_vehicle_old.sqf @@ -1,4 +1,4 @@ -private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear","_near"]; +private ["_sign","_location","_result","_part_out","_part_in","_qty_out","_qty_in","_qty","_buy_o_sell","_obj","_objectID","_objectUID","_bos","_started","_finished","_animState","_isMedic","_dir","_helipad","_removed","_damage","_tireDmg","_tires","_okToSell","_hitpoints","_needed","_activatingPlayer","_textPartIn","_textPartOut","_traderID","_playerNear"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_103" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -119,8 +119,7 @@ if (_qty >= _qty_in) then { //place vehicle spawn marker (local) _sign = "Sign_arrow_down_large_EP1" createVehicleLocal _location; _location = [_sign] call FNC_GetPos; - _near = nearestObjects [player,[_part_out],50]; - [_part_out,_sign,_near] spawn fn_waitForObject; + [_part_out,_sign] call fn_waitForObject; PVDZE_veh_Publish2 = [[_dir,_location],_part_out,false,_result select 1,_activatingPlayer]; publicVariableServer "PVDZE_veh_Publish2"; diff --git a/SQF/dayz_code/compile/fn_waitForObject.sqf b/SQF/dayz_code/compile/fn_waitForObject.sqf index ff5ebf259..b213b0450 100644 --- a/SQF/dayz_code/compile/fn_waitForObject.sqf +++ b/SQF/dayz_code/compile/fn_waitForObject.sqf @@ -4,25 +4,30 @@ Parameters: _this select 0: string - object class name to reveal - _this select 1: object - sign object or ObjNull if none - _this select 2: array - result of (nearestObjects [player,[_class],50]) before call to spawn object + _this select 1: object - sign object or objNull if none - ["objectClassName", objNull, []] spawn fn_waitForObject; + ["objectClassName", objNull] call fn_waitForObject; */ private ["_class","_sign","_near"]; _class = _this select 0; _sign = _this select 1; -_near = _this select 2; +_near = count (nearestObjects [player,[_class],50]); -waitUntil { - uiSleep 1; - (count (nearestObjects [player,[_class],50]) != count _near) -}; +[_class,_sign,_near] spawn { + _class = _this select 0; + _sign = _this select 1; + _near = _this select 2; -if (!isNull _sign) then { - deleteVehicle _sign; -}; + waitUntil { + uiSleep 1; + (count (nearestObjects [player,[_class],50]) != _near) + }; -{player reveal _x;} count (nearestObjects [player,[_class],50]); \ No newline at end of file + if (!isNull _sign) then { + deleteVehicle _sign; + }; + + {player reveal _x;} count (nearestObjects [player,[_class],50]); +}; \ No newline at end of file diff --git a/SQF/dayz_code/compile/player_lockVault.sqf b/SQF/dayz_code/compile/player_lockVault.sqf index cf3cc4eb1..6702f4937 100644 --- a/SQF/dayz_code/compile/player_lockVault.sqf +++ b/SQF/dayz_code/compile/player_lockVault.sqf @@ -3,7 +3,7 @@ Usage: [_obj] spawn player_unlockVault; Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com. */ -private ["_obj","_ownerID","_alreadyPacking","_text","_playerNear","_ComboMatch","_objType","_near"]; +private ["_obj","_ownerID","_alreadyPacking","_text","_playerNear","_ComboMatch","_objType"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_10" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -42,8 +42,7 @@ if (!isNull _obj) then { (findDisplay 106) closeDisplay 0; // Close gear dze_waiting = nil; - _near = nearestObjects [player,[_lockedClass],50]; - [_lockedClass,objNull,_near] spawn fn_waitForObject; + [_lockedClass,objNull] call fn_waitForObject; PVDZE_handleSafeGear = [player,_obj,1]; publicVariableServer "PVDZE_handleSafeGear"; diff --git a/SQF/dayz_code/compile/player_packVault.sqf b/SQF/dayz_code/compile/player_packVault.sqf index d02285e35..03fc7d7c2 100644 --- a/SQF/dayz_code/compile/player_packVault.sqf +++ b/SQF/dayz_code/compile/player_packVault.sqf @@ -1,7 +1,7 @@ /* [_obj] spawn player_packVault; */ -private ["_obj","_ownerID","_objectID","_objectUID","_alreadyPacking","_location1","_location2","_packedClass","_text","_playerNear","_near"]; +private ["_obj","_ownerID","_objectID","_objectUID","_alreadyPacking","_location1","_location2","_packedClass","_text","_playerNear"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_15" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -56,8 +56,7 @@ if (!isNull _obj && alive _obj) then { (findDisplay 106) closeDisplay 0; // Close gear dze_waiting = nil; - _near = nearestObjects [player,[_packedClass],50]; - [_packedClass,objNull,_near] spawn fn_waitForObject; + [_packedClass,objNull] call fn_waitForObject; PVDZE_handleSafeGear = [player,_obj,2]; publicVariableServer "PVDZE_handleSafeGear"; diff --git a/SQF/dayz_code/compile/player_unlockVault.sqf b/SQF/dayz_code/compile/player_unlockVault.sqf index d4bb872d2..16676df17 100644 --- a/SQF/dayz_code/compile/player_unlockVault.sqf +++ b/SQF/dayz_code/compile/player_unlockVault.sqf @@ -3,7 +3,7 @@ Usage: [_obj] spawn player_unlockVault; Made for DayZ Epoch please ask permission to use/edit/distrubute email vbawol@veteranbastards.com. */ -private ["_obj","_ownerID","_alreadyPacking","_playerNear","_claimedBy","_text","_objType","_ComboMatch","_near"]; +private ["_obj","_ownerID","_alreadyPacking","_playerNear","_claimedBy","_text","_objType","_ComboMatch"]; if (DZE_ActionInProgress) exitWith {localize "str_epoch_player_21" call dayz_rollingMessages;}; DZE_ActionInProgress = true; @@ -58,8 +58,7 @@ if (_ComboMatch || (_ownerID == dayz_playerUID)) then { (findDisplay 106) closeDisplay 0; // Close gear dze_waiting = nil; - _near = nearestObjects [player,[_unlockedClass],50]; - [_unlockedClass,objNull,_near] spawn fn_waitForObject; + [_unlockedClass,objNull] call fn_waitForObject; PVDZE_handleSafeGear = [player,_obj,0]; publicVariableServer "PVDZE_handleSafeGear";