/* Bandit Hunting Party by lazyink (Full credit to TheSzerdi & TAW_Tonic for the code) Updated to new format by Vampire Updated for DZMS 2.0 by JasonTM */ local _mission = count DZMSMissionData -1; local _aiType = _this select 0; local _coords = call DZMSFindPos; local _name = "Patrol Squad"; local _localName = "STR_CL_DZMS_PS_TITLE"; local _hero = _aiType == "Hero"; local _markerColor = ["ColorRed","ColorBlue"] select _hero; local _localized = ["STR_CL_MISSION_BANDIT","STR_CL_MISSION_HERO"] select _hero; local _startTime = diag_tickTime; diag_log format["[DZMS]: %1 %2 starting at %2.",_aiType,_name,_coords]; ////////////////////// Do not edit this section /////////////////////////// //[position,createMarker,setMarkerColor,setMarkerType,setMarkerShape,setMarkerBrush,setMarkerSize,setMarkerText,setMarkerAlpha] local _markers = [1,1,1,1]; _markers set [0, [_coords,"DZMS" + str _mission,_markerColor,"","ELLIPSE","Grid",[200,200],[],0]]; _markers set [1, [_coords,"DZMSDot" + str _mission,"ColorBlack","Vehicle","","",[],[_localized,_localName],0]]; if (DZMSAutoClaim) then {_markers set [2, [_coords,"DZMSAuto" + str _mission,"ColorRed","","ELLIPSE","Border",[DZMSAutoClaimAlertDistance,DZMSAutoClaimAlertDistance],[],0]];}; DZE_ServerMarkerArray set [count DZE_ServerMarkerArray, _markers]; // Markers added to global array for JIP player requests. local _markerIndex = count DZE_ServerMarkerArray - 1; PVDZ_ServerMarkerSend = ["start",_markers]; publicVariable "PVDZ_ServerMarkerSend"; [_aiType,_localName,"STR_CL_DZMS_PS_START"] call DZMSMessage; DZMSMarkerReady = true; // Add the mission's position to the global array so that other missions do not spawn near it. DZE_MissionPositions set [count DZE_MissionPositions, _coords]; local _posIndex = count DZE_MissionPositions - 1; // Wait until a player is within range or timeout is reached. local _playerNear = false; local _timeout = false; while {!_playerNear && !_timeout} do { _playerNear = [_coords,DZMSTimeoutDistance] call DZMSNearPlayer; if (diag_tickTime - _startTime >= (DZMSMissionTimeOut * 60)) then { _timeout = true; }; uiSleep 1; }; if (_timeout) exitWith { [_mission, _aiType, _markerIndex, _posIndex] call DZMSAbortMission; [_aiType,_localName,"STR_CL_DZMS_PS_FAIL"] call DZMSMessage; diag_log format["DZMS: %1 %2 aborted.",_aiType,_name,_coords]; }; //////////////////////////////// End ////////////////////////////////////// //DZMSAISpawn spawns AI to the mission. //Usage: [_coords, count, skillLevel, Hero or Bandit, Mission Number] [_coords,4,1,_aiType,_mission] call DZMSAISpawn; [_coords,4,1,_aiType,_mission] call DZMSAISpawn; // Start the mission loop. [ _mission, _coords, _aiType, _name, _localName, _markerIndex, _posIndex, "STR_CL_DZMS_PS_WIN", "STR_CL_DZMS_PS_FAIL" ] spawn DZMSWaitMissionComp;