Publish new Maintain Area (New HiveDLL is required)

This commit is contained in:
Skaronator
2014-01-17 19:09:37 +01:00
parent 7d15cfb1bf
commit 678590c7ce
6 changed files with 45 additions and 41 deletions

View File

@@ -0,0 +1,24 @@
/* Maintain Area - written by Skaronator
How to use: PVDZE_maintainArea = [player,[_target, _objectClasses, _range]];
*/
private ["_player","_area","_uniqueID","_objects","_key"];
_player = _this select 0;
_area = _this select 1;
_uniqueID = _this select 2;
if (_uniqueID in DZEMaintainCache) exitWith { }; //Just do it only one time
DZEMaintainCache = DZEMaintainCache + [_uniqueID];
_objects = nearestObjects _area;
{
_objectID = _x getVariable ["ObjectID","0"];
//_objectUID = _x getVariable ["ObjectUID","0"];
_key = format["CHILD:396:%1:", _objectID]; //Use ID instead of UID because ID is shorter
_key call server_maintainObj;
} forEach _objects;
diag_log format ["MAINTAIN AREA BY %1 - %2 Objects at %3", name _player, count _objects, position _player];

View File

@@ -29,6 +29,7 @@ server_spawnEvents = compile preprocessFileLineNumbers "\z\addons\dayz_server\
//server_weather = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_weather.sqf";
fnc_plyrHit = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\fnc_plyrHit.sqf";
server_deaths = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerDeaths.sqf";
server_maintainArea = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_maintainArea.sqf";
/* PVS/PVC - Skaronator */
server_sendToClient = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_sendToClient.sqf";
@@ -163,6 +164,13 @@ server_hiveReadWrite = {
_resultArray
};
server_maintainObj = {
private["_data"];
//diag_log ("ATTEMPT WRITE: " + _this);
_data = "HiveExt" callExtension _this;
//diag_log ("WRITE: " +str(_data));
};
server_hiveReadWriteLarge = {
private["_key","_resultArray","_data"];
_key = _this;