From 8d8d082a17a85d7b86a8ce22f01f507ffb86b813 Mon Sep 17 00:00:00 2001 From: Ghostrider-DbD- Date: Mon, 24 Oct 2016 22:02:09 -0400 Subject: [PATCH] changes to vehicle spawn routines to address a few issuesl --- .../Vehicles/GMS_fnc_spawnVehicle - Copy.sqf | 29 --------- .../Vehicles/GMS_fnc_spawnVehicle.sqf | 7 +- .../GMS_fnc_spawnVehiclePatrol - Copy.sqf | 65 ------------------- .../Vehicles/GMS_fnc_vehicleMonitor.sqf | 7 +- 4 files changed, 9 insertions(+), 99 deletions(-) delete mode 100644 @epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle - Copy.sqf delete mode 100644 @epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol - Copy.sqf diff --git a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle - Copy.sqf b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle - Copy.sqf deleted file mode 100644 index dc92823..0000000 --- a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle - Copy.sqf +++ /dev/null @@ -1,29 +0,0 @@ -/* - Spawn a vehicle and protect it against cleanup by Epoch - Returns the object (vehicle) created. - By Ghostrider-DBD- - Last modified 9-10-16 -*/ - -private["_veh"]; -params["_vehType","_pos"]; -//_vehType = _this select 0; // type of vehicle to be spawned -//_pos = _this select 1; // position at which vehicle is to be spawned - -//diag_log format["spawnVehicle.sqf: _this = %1",_this]; -_veh = createVehicle[_vehType, _pos, [], 0, "NONE"]; -uisleep 0.1; - -private["_modType"]; -_modType = call blck_getModType; -if (_modType isEqualTo "Epoch") then -{ - _veh call EPOCH_server_vehicleInit; - _veh call EPOCH_server_setVToken; -}; - -_veh setVehicleLock "LOCKEDPLAYER"; -[_veh] spawn blck_fnc_vehicleMonitor; -//[_vehToSpawn, blck_ModType] call blck_fnc_protectVehicle; -_veh - diff --git a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle.sqf b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle.sqf index 4c3f378..9c73567 100644 --- a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle.sqf +++ b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehicle.sqf @@ -2,7 +2,7 @@ Spawn a vehicle and protect it against cleanup by Epoch Returns the object (vehicle) created. By Ghostrider-DBD- - Last modified 9-10-16 + Last modified 10-24-16 */ private["_veh"]; @@ -30,7 +30,10 @@ _veh setVehicleLock "LOCKEDPLAYER"; _veh addEventHandler ["GetIn",{ // forces player to be ejected if he/she tries to enter the vehicle private ["_theUnit"]; _theUnit = _this select 2; - _theUnit action ["Eject", vehicle _theUnit]; + if (isPlayer _theUnit) then + { + _theUnit action ["Eject", vehicle _theUnit]; + }; }]; _veh diff --git a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol - Copy.sqf b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol - Copy.sqf deleted file mode 100644 index 3360b7c..0000000 --- a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol - Copy.sqf +++ /dev/null @@ -1,65 +0,0 @@ -////////////////////////////////////// -// spawn a vehicle, fill it with AI, and give it waypoints around the perimeter of the mission area -// Returns an array _units that contains a list of the units that were spawned and placed in the vehicle - -/* - By Ghostrider-DBD- - Copyright 2016 - Last updated 8-14-16 -*/ -/* -fn_setWaypoints = -{ - private["_group","_center"]; - _group = _this select 0; // The group to which waypoints should be assigned - _center = _this select 1; // center of the mission area - - while {(count (waypoints _group)) > 0} do - { - deleteWaypoint ((waypoints _group) select 0); - }; - [_center,50,100,_group] call blck_fnc_setupWaypoints; -}; -*/ -private["_vehType","_safepos","_spawnedVehicle"]; -params["_pos",["_vehType","I_G_Offroad_01_armed_F"],["_minDis",30],["_maxDis",45],["_groupForVehiclePatrol",grpNull] ]; -//_pos = _this select 0; // Center of the mission area -//_vehType = [_this,1,"I_G_Offroad_01_armed_F"] call BIS_fnc_param; -//_minDis = [_this,2,30] call BIS_fnc_param; // minimum distance from the center of the mission for vehicle waypoints -//_maxDis = [_this,3,45] call BIS_fnc_param; // maximum distance from the center of the mission for vehicle waypoints -//_groupForVehiclePatrol = [_this,4,grpNull] call BIS_fnc_param; // The group with which to man the vehicle - -//diag_log format["spawnVehiclePatrol:: _pos %1 _vehTypes %2",_pos,_vehType]; -//diag_log format["spawnVehiclePatrol:: _minDis %1 _maxDis %2 _groupForVehiclePatrol %3",_minDis,_maxDis,_groupForVehiclePatrol]; - -if (isNull _groupForVehiclePatrol) exitWith {}; - - _safepos = [_pos,0,25,0,0,20,0] call BIS_fnc_findSafePos; -_spawnedVehicle = [_vehType,_safepos] call blck_fnc_spawnVehicle; -//diag_log format["spawnVehiclePatrols:: vehicle spawned is %1 of typeof %2",_spawnedVehicle, typeOf _spawnedVehicle]; -_spawnedVehicle addEventHandler ["GetIn",{ // forces player to be ejected if he/she tries to enter the vehicle - private ["_theUnit"]; - _theUnit = _this select 2; - _theUnit action ["Eject", vehicle _theUnit]; -}]; -clearWeaponCargoGlobal _spawnedVehicle; -clearMagazineCargoGlobal _spawnedVehicle; -clearBackpackCargoGlobal _spawnedVehicle; -clearItemCargoGlobal _spawnedVehicle; - -private["_unitNumber"]; -_unitNumber = 0; - -{ - switch (_unitNumber) do - { - case 0: {_x moveingunner _spawnedVehicle;}; - case 1: {_x moveindriver _spawnedVehicle;}; - default {_x moveInCargo _spawnedVehicle;}; - }; - _unitNumber = _unitNumber + 1; -}forEach (units _groupForVehiclePatrol); - -//diag_log format["spawnVehiclePatrols:: vehicle spawned was %1",_spawnedVehicle]; - -_spawnedVehicle \ No newline at end of file diff --git a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf index 6168e2f..95ecf1b 100644 --- a/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf +++ b/@epochhive/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf @@ -5,7 +5,7 @@ By Ghostrider-DBD- Copyright 2016 - Last updated 8-14-16 + Last updated 10-24-16 */ private ["_unit","_units","_count","_group","_driver","_gunner","_cargo"]; @@ -15,7 +15,8 @@ _count = 0; waitUntil { count crew _veh > 0}; //diag_log format["vehicle Manned %1",_veh]; -while { (getDammage _veh < 1.0) && ({alive _x} count crew _veh > 0)} do +uiSleep 60; +while { (getDammage _veh > 0) && ({alive _x} count crew _veh > 0)} do { //diag_log format["vehicleMonitor: vehicle crew consists of %1", crew _veh]; //diag_log format["vehicleMonitor: number of crew alive is %1", {alive _x} count crew _veh]; _veh setVehicleAmmo 1; @@ -53,7 +54,7 @@ if (typeOf _veh in blck_staticWeapons) then // always destroy mounted weapons { private ["_v","_startTime"]; //diag_log format["vehicleMonitor.sqf: _veh %1 is about to be killed",_veh]; - uiSleep 10; + uiSleep 60; _veh setDamage 1; _startTime = diag_ticktime; waitUntil{sleep 5;(diag_tickTime - _startTime) > 120;}; // delete destroyed vehicles after 2 min