Jump to content

[Release] 2.1 Plot Management - UPDATED Object Counter


Zupa

Recommended Posts

Hi everyone,

 

I have a question about the object counter. On my server the object counter of the plot management counts everything in range and starts always with 13 regardless of whether there are objects or not. I want to configure it that the object counter starts with 0 objects and that it only counts objects that are build by players. Anyone knows how to configure this?

 

Best regards,

 

GudrunGisela

Link to comment
Share on other sites

I've seen people talk about test servers, and all I could think of was.. i don't have the extra money for that...thinking I would have to buy another server.. I however forgot you can make your home PC a server, because I think I've seen how to do it on youtube for epoch. might be a little late now as the server is pretty much done, with the exception of these last two mods. But I will look into it. 

epoch servers are never really done.

the greats still release must have scripts every now and then...

Link to comment
Share on other sites

I've seen people talk about test servers, and all I could think of was.. i don't have the extra money for that...thinking I would have to buy another server.. I however forgot you can make your home PC a server, because I think I've seen how to do it on youtube for epoch. might be a little late now as the server is pretty much done, with the exception of these last two mods. But I will look into it. 

As calamity was saying you're never really done. You'll get the itch to add something you saw that seemed cool or a new release or maybe you'll whip  up something small on your own. Or maybe as you get better you'll realize how messy everything looks because you started when you didnt know much and you'll want to clean it up. It's just nice to not have to worry about your main server whenever you need to do anything. You can test new versions of an antihack, or update your BE files and fix any kicks, really anything that before you had to do on your live server, you can do on your test server to make sure it works properly.

Link to comment
Share on other sites

Well again no one can help you with the server_monitor.sqf because we don't know what error you're getting. You're just saying you're getting an error but not what the error is.

You are still confused about what Im saying. You should only have 1 of those files each. If PP4L comes with a variables in the folder, and you are already using a "custom" variables then you need to merge the 2 together and only use one. If the instructions tell you that the file path should be pp4l/variables, but you already have a custom/variables.. you need to compare both variables, see whats changed between the 2 and combine them into 1. Make sure all of the places that call the variables.sqf all call the same file from the same location.

 

Pretend you're installing a game on your PC. And you want to add mods to the game so you can do in game stuff. All of the mod files you're adding are going to be in your game folder, but occasionally you have to edit one of the actual game files. You're not gonna make multiple copies of the game files and add them to your game folder, you're just going to use the one thats in there. And any mod that asks you to mod that file, you're going to just keep editing the same one. Any time it tells you to make the file path Blablabla/filename... ignore it.. and just edit the one you already have being called.

I hope that helps shed some light.

 

As for your server_monitor. what is the error you are getting?

Here it is, hundreds of lines of this in my RPT:

10:18:18 Error in expression <["OEMPos", _pos, true];
 
};
 
if ((count _intentory > 0) && !(typeOf( _object) ==>
10:18:18   Error position: <_intentory > 0) && !(typeOf( _object) ==>
10:18:18   Error Undefined variable in expression: _intentory
10:18:18 File mpmissions\__cur_mp.chernarus\custom\system\server_monitor.sqf, line 199
10:18:18 Error in expression <["OEMPos", _pos, true];
 
};
Link to comment
Share on other sites

 

Here it is, hundreds of lines of this in my RPT:

10:18:18 Error in expression <["OEMPos", _pos, true];
 
};
 
if ((count _intentory > 0) && !(typeOf( _object) ==>
10:18:18   Error position: <_intentory > 0) && !(typeOf( _object) ==>
10:18:18   Error Undefined variable in expression: _intentory
10:18:18 File mpmissions\__cur_mp.chernarus\custom\system\server_monitor.sqf, line 199
10:18:18 Error in expression <["OEMPos", _pos, true];
 
};

 Also here is line 199 on,of server_monitor.sqf:

	if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ")) then {
				if (_type in DZE_LockedStorage) then {
					// Fill variables with loot
					_object setVariable ["WeaponCargo", (_inventory select 0),true];
					_object setVariable ["MagazineCargo", (_inventory select 1),true];
					_object setVariable ["BackpackCargo", (_inventory select 2),true];
				} else {

Also just found this in Rpt:

10:18:44   Error position: <_intentory, true];
};
_object setVariabl>
10:18:44   Error Undefined variable in expression: _intentory
10:18:44 File mpmissions\__cur_mp.chernarus\custom\system\server_monitor.sqf, line 143
10:18:44 Error in expression <["OEMPos", _pos, true];
 
};

Line 143 looks like this in Monitor.sqf: 

_object setVariable ["AddedPUIDS", _intentory, true];
};
 
also got these in rpt:
 
 
if (_status == "Objec>
10:18:45   Error Undefined variable in expression: _result
10:18:45 File mpmissions\__cur_mp.chernarus\custom\system\server_monitor.sqf, line 300
10:18:45 Error in expression 
 

if (_status == "ObjectStreamStart") then {
_val = _r>
10:18:45   Error position: <== "ObjectStreamStart") then {
_val = _r>
10:18:45   Error Generic error in expression
10:18:45 File mpmissions\__cur_mp.chernarus\custom\system\server_monitor.sqf, line 302

lines 299-303 in monitor.sqf:


					_status = _result select 0;
			
					if (_status == "ObjectStreamStart") then {
						_val = _result select 1;
						//Stream Objects

Link to comment
Share on other sites

Right, if you got Notepad++,  press CTRL + F (STRG + F) and go in the Tab "Replace"..

 

Find "_inventory" and replace with "_intentory". That's your issue.

Wait... so the file that comes with the mod is spelled wrong? All I do is copy paste. Why would we want to put _intentory instead of _inventory (that come with the mod and in the instructions)

Link to comment
Share on other sites

So is it supposed to be Intentory or inventory (which seems like it would make sense)

do it exactly like he said, try it, and test it before making 3 posts asking the if it's right....  it's supposed to be _intentory because for whatever reason thats how they spelled that variable.

Link to comment
Share on other sites

well i wanted confirmation BEFORE I went back and redid everything, because I had to roll back everything so I could get the server up so people could play. (nope, haven't had time to make a test server from my pc yet.. maybe this weekend)

Im just saying man. You can also edit the your posts instead of making 3 new ones in a row. Theres some unspoken etiquette on these forums, and you're more likely to get help from people if you follow it. Stuff like, editing your original post if you have afterthoughts instead of making 3 separate posts. And using spoilers and code boxes with numbered lines, and including RPT errors... stuff like that will make it more likely that people will help you.  This is just my advice.

Link to comment
Share on other sites

Zupa I do not understand, no one can see the option plot management, just me because my id added in this fn_self ...
 
I have not installed plot for life, I just snap pro and vector. The owner of the plot builds normally but can not open the option for managing.

My server_monitor file:

private ["_nul","_result","_pos","_wsDone","_dir","_isOK","_countr","_objWpnTypes","_objWpnQty","_dam","_selection","_totalvehicles","_object","_idKey","_type","_ownerID","_worldspace","_intentory","_hitPoints","_fuel","_damage","_key","_vehLimit","_hiveResponse","_objectCount","_codeCount","_data","_status","_val","_traderid","_retrader","_traderData","_id","_lockable","_debugMarkerPosition","_vehicle_0","_bQty","_vQty","_BuildingQueue","_objectQueue","_superkey","_shutdown","_res","_hiveLoaded"];



dayz_versionNo = getText(configFile >> "CfgMods" >> "DayZ" >> "version");
dayz_hiveVersionNo = getNumber(configFile >> "CfgMods" >> "DayZ" >> "hiveVersion");

_hiveLoaded = false;

waitUntil{initialized};

diag_log "HIVE: Starting";

waituntil{isNil "sm_done"};

if(isnil "MaxVehicleLimit") then {
MaxVehicleLimit = 50;
};

if(isnil "MaxDynamicDebris") then {
MaxDynamicDebris = 100;
};

if(isnil "MaxAmmoBoxes") then {
MaxAmmoBoxes = 3;
};

if(isnil "MaxMineVeins") then {
MaxMineVeins = 50;
};

if (isServer && isNil "sm_done") then {

serverVehicleCounter = [];
_hiveResponse = [];

for "_i" from 1 to 5 do {

diag_log "HIVE: trying to get objects";

_key = format["CHILD:302:%1:", dayZ_instance];
_hiveResponse = _key call server_hiveReadWrite;

if ((((isnil "_hiveResponse") || {(typeName _hiveResponse != "ARRAY")}) || {((typeName (_hiveResponse select 1)) != "SCALAR")})) then {

if ((_hiveResponse select 1) == "Instance already initialized") then {
_superkey = profileNamespace getVariable "SUPERKEY";
_shutdown = format["CHILD:400:%1:", _superkey];
_res = _shutdown call server_hiveReadWrite;
diag_log ("HIVE: attempt to kill.. HiveExt response:"+str(_res));
} else {
diag_log ("HIVE: connection problem... HiveExt response:"+str(_hiveResponse));
};
_hiveResponse = ["",0];
}
else {
diag_log ("HIVE: found "+str(_hiveResponse select 1)+" objects" );
_i = 99;
};
};

_BuildingQueue = [];
_objectQueue = [];

if ((_hiveResponse select 0) == "ObjectStreamStart") then {

profileNamespace setVariable ["SUPERKEY",(_hiveResponse select 2)];

_hiveLoaded = true;

diag_log ("HIVE: Commence Object Streaming...");

_key = format["CHILD:302:%1:", dayZ_instance];
_objectCount = _hiveResponse select 1;
_bQty = 0;
_vQty = 0;

for "_i" from 1 to _objectCount do {

_hiveResponse = _key call server_hiveReadWriteLarge;

if ((_hiveResponse select 2) isKindOf "ModularItems") then {
_BuildingQueue set [_bQty,_hiveResponse];
_bQty = _bQty + 1;
} else {
_objectQueue set [_vQty,_hiveResponse];
_vQty = _vQty + 1;
};
};
diag_log ("HIVE: got " + str(_bQty) + " Epoch Objects and " + str(_vQty) + " Vehicles");
};

_totalvehicles = 0;
PVDZE_EvacChopperFields = [];
{
_idKey = _x select 1;
_type = _x select 2;
_ownerID = _x select 3;

_worldspace = _x select 4;
_intentory = _x select 5;
_hitPoints = _x select 6;
_fuel = _x select 7;
_damage = _x select 8;
_dir = 0;
_pos = [0,0,0];
_wsDone = false;

if (count _worldspace >= 2) then
{
_dir = _worldspace select 0;
if (count (_worldspace select 1) == 3) then {
_pos = _worldspace select 1;
_wsDone = true;
}
};

if (!_wsDone) then {
if (count _worldspace >= 1) then { _dir = _worldspace select 0; };
_pos = [getMarkerPos "center",0,4000,10,0,2000,0] call BIS_fnc_findSafePos;
if (count _pos < 3) then { _pos = [_pos select 0,_pos select 1,0]; };
diag_log ("MOVED OBJ: " + str(_idKey) + " of class " + _type + " to pos: " + str(_pos));
};

_vector = [[0,0,0],[0,0,0]];
_vecExists = false;
_ownerPUID = "0";
if (count _worldspace >= 3) then{
if(count _worldspace == 3) then{
if(typename (_worldspace select 2) == "STRING")then{
_ownerPUID = _worldspace select 2;
}else{
if(typename (_worldspace select 2) == "ARRAY")then{
_vector = _worldspace select 2;
if(count _vector == 2)then{
if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{
_vecExists = true;
};
};
};
};

}else{
//Was not 3 elements, so check if 4 or more
if(count _worldspace == 4) then{
if(typename (_worldspace select 3) == "STRING")then{
_ownerPUID = _worldspace select 3;
}else{
if(typename (_worldspace select 2) == "STRING")then{
_ownerPUID = _worldspace select 2;
};
};


if(typename (_worldspace select 2) == "ARRAY")then{
_vector = _worldspace select 2;
if(count _vector == 2)then{
if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{
_vecExists = true;
};
};
}else{
if(typename (_worldspace select 3) == "ARRAY")then{
_vector = _worldspace select 3;
if(count _vector == 2)then{
if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{
_vecExists = true;
};
};
};
};

}else{
//More than 3 or 4 elements found
//Might add a search for the vector, ownerPUID will equal 0
};
};
};

if (_damage < 1) then {

_object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
if (typeOf (_object) in DZE_DoorsLocked) then {
_object setVariable ["doorfriends", _intentory, true];
};
_object setVariable ["lastUpdate",time];
_object setVariable ["ObjectID", _idKey, true];
if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then {
_object setVariable ["plotfriends", _intentory, true];
};
_lockable = 0;

if(isNumber (configFile >> "CfgVehicles" >> _type >> "lockable")) then {
_lockable = getNumber(configFile >> "CfgVehicles" >> _type >> "lockable");
};

if (_lockable == 4) then {
_codeCount = (count (toArray _ownerID));
if(_codeCount == 3) then {
_ownerID = format["0%1", _ownerID];
};
if(_codeCount == 2) then {
_ownerID = format["00%1", _ownerID];
};
if(_codeCount == 1) then {
_ownerID = format["000%1", _ownerID];
};
};

if (_lockable == 3) then {
_codeCount = (count (toArray _ownerID));
if(_codeCount == 2) then {
_ownerID = format["0%1", _ownerID];
};
if(_codeCount == 1) then {
_ownerID = format["00%1", _ownerID];
};
};

_object setVariable ["CharacterID", _ownerID, true];

clearWeaponCargoGlobal _object;
clearMagazineCargoGlobal _object;

_object setdir _dir;
if(_vecExists)then{
_object setVectorDirAndUp _vector;
};
_object setposATL _pos;
_object setDamage _damage;
if ((typeOf _object) == "HeliHRescue") then {
PVDZE_EvacChopperFields set [count PVDZE_EvacChopperFields, _object];
};
if ((typeOf _object) in dayz_allowedObjects) then {
_object setVariable["memDir",_dir,true];
if (DZE_GodModeBase) then {
_object addEventHandler ["HandleDamage", {false}];
} else {
_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
};
_object enableSimulation false;
_object setVariable ["OEMPos", _pos, true];
};

if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ") && !(typeOf( _object) in DZE_DoorsLocked)) then {
if (_type in DZE_LockedStorage) then {
_object setVariable ["WeaponCargo", (_intentory select 0),true];
_object setVariable ["MagazineCargo", (_intentory select 1),true];
_object setVariable ["BackpackCargo", (_intentory select 2),true];
} else {
_objWpnTypes = (_intentory select 0) select 0;
_objWpnQty = (_intentory select 0) select 1;
_countr = 0;
{
if(_x in (DZE_REPLACE_WEAPONS select 0)) then {
_x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);
};
_isOK = isClass(configFile >> "CfgWeapons" >> _x);
if (_isOK) then {
_object addWeaponCargoGlobal [_x,(_objWpnQty select _countr)];
};
_countr = _countr + 1;
} count _objWpnTypes;

_objWpnTypes = (_intentory select 1) select 0;
_objWpnQty = (_intentory select 1) select 1;
_countr = 0;

{
if (_x == "BoltSteel") then { _x = "WoodenArrow" };
if (_x == "ItemTent") then { _x = "ItemTentOld" };
_isOK = isClass(configFile >> "CfgMagazines" >> _x);
if (_isOK) then {
_object addMagazineCargoGlobal [_x,(_objWpnQty select _countr)];
};
_countr = _countr + 1;
} count _objWpnTypes;

_objWpnTypes = (_intentory select 2) select 0;
_objWpnQty = (_intentory select 2) select 1;
_countr = 0;

{
_isOK = isClass(configFile >> "CfgVehicles" >> _x);
if (_isOK) then {
_object addBackpackCargoGlobal [_x,(_objWpnQty select _countr)];
};
_countr = _countr + 1;
} count _objWpnTypes;
};
};

if (_object isKindOf "AllVehicles") then {
{
_selection = _x select 0;
_dam = _x select 1;
if (_selection in dayZ_explosiveParts && _dam > 0.8) then {_dam = 0.8};
[_object,_selection,_dam] call object_setFixServer;
} count _hitpoints;

_object setFuel _fuel;

if (!((typeOf _object) in dayz_allowedObjects)) then {

_object call fnc_veh_ResetEH;

if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then {
_object setvehiclelock "locked";
_object setVariable ["R3F_LOG_disabled",true,true];
};

_totalvehicles = _totalvehicles + 1;

serverVehicleCounter set [count serverVehicleCounter,_type];
};
[_object] execVM "\z\addons\dayz_server\compile\Server_DeleteObjInsafezone.sqf";
};
};
PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_object];
};
} count (_BuildingQueue + _objectQueue);

if !(DZE_ConfigTrader) then {
{
_traderData = call compile format["menu_%1;",_x];

if(!isNil "_traderData") then {
{
_traderid = _x select 1;
_retrader = [];
_key = format["CHILD:399:%1:",_traderid];
_data = "HiveEXT" callExtension _key;
_result = call compile format ["%1",_data];
_status = _result select 0;

if (_status == "ObjectStreamStart") then {
_val = _result select 1;
call compile format["ServerTcache_%1 = [];",_traderid];
for "_i" from 1 to _val do {
_data = "HiveEXT" callExtension _key;
_result = call compile format ["%1",_data];
call compile format["ServerTcache_%1 set [count ServerTcache_%1,%2]",_traderid,_result];
_retrader set [count _retrader,_result];
};
};

} forEach (_traderData select 0);
};
} forEach serverTraders;
};

if (_hiveLoaded) then {
_vehLimit = MaxVehicleLimit - _totalvehicles;
if(_vehLimit > 0) then {
diag_log ("HIVE: Spawning # of Vehicles: " + str(_vehLimit));
for "_x" from 1 to _vehLimit do {
[] spawn spawn_vehicles;
};
} else {
diag_log "HIVE: Vehicle Spawn limit reached!";
};
};

diag_log ("HIVE: Spawning # of Debris: " + str(MaxDynamicDebris));

for "_x" from 1 to MaxDynamicDebris do {
[] spawn spawn_roadblocks;
};

diag_log ("HIVE: Spawning # of Ammo Boxes: " + str(MaxAmmoBoxes));

for "_x" from 1 to MaxAmmoBoxes do {
[] spawn spawn_ammosupply;
};

diag_log ("HIVE: Spawning # of Veins: " + str(MaxMineVeins));

for "_x" from 1 to MaxMineVeins do {
[] spawn spawn_mineveins;
};

if(isnil "dayz_MapArea") then {
dayz_MapArea = 10000;
};

if(isnil "HeliCrashArea") then {
HeliCrashArea = dayz_MapArea / 2;
};

if(isnil "OldHeliCrash") then {
OldHeliCrash = false;
};

if(OldHeliCrash) then {
_nul = [3, 4, (50 * 60), (15 * 60), 0.75, 'center', HeliCrashArea, true, false] spawn server_spawnCrashSite;
};

if (isDedicated) then {
_id = [] spawn server_spawnEvents;
[] spawn {
private ["_id"];
sleep 200;
waitUntil {!isNil "server_spawnCleanAnimals"};
_id = [] execFSM "\z\addons\dayz_server\system\server_cleanup.fsm";
};

_debugMarkerPosition = getMarkerPos "respawn_west";
_debugMarkerPosition = [(_debugMarkerPosition select 0),(_debugMarkerPosition select 1),1];
_vehicle_0 = createVehicle ["DebugBox_DZ", _debugMarkerPosition, [], 0, "CAN_COLLIDE"];
_vehicle_0 setPos _debugMarkerPosition;
_vehicle_0 setVariable ["ObjectID","1",true];

if(isnil "spawnMarkerCount") then {
spawnMarkerCount = 10;
};

actualSpawnMarkerCount = 0;

for "_i" from 0 to spawnMarkerCount do {
if (!([(getMarkerPos format["spawn%1", _i]), [0,0,0]] call BIS_fnc_areEqual)) then {
actualSpawnMarkerCount = actualSpawnMarkerCount + 1;
} else {
_i = spawnMarkerCount + 99;
};
};
diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount];
endLoadingScreen;
};
//JAEM
if (isServer && (isNil "EvacServerPreload")) then {
publicVariable "PVDZE_EvacChopperFields";

ON_fnc_evacChopperFieldsUpdate = {
private ["_action","_targetField"];
_action = _this select 0;
_targetField = _this select 1;

if (_action == "add") then {
PVDZE_EvacChopperFields = PVDZE_EvacChopperFields + [_targetField];
};

if (_action == "rem") then {
PVDZE_EvacChopperFields = PVDZE_EvacChopperFields - [_targetField];
};

publicVariable "PVDZE_EvacChopperFields";
};

"PVDZE_EvacChopperFieldsUpdate" addPublicVariableEventHandler {(_this select 1) spawn ON_fnc_evacChopperFieldsUpdate};

EvacServerPreload = true;
};
[] call compile preprocessFileLineNumbers "\z\addons\dayz_server\DZAI\init\dzai_initserver.sqf";
[] ExecVM "\z\addons\dayz_server\EMS\DZMSInit.sqf";
ExecVM "\z\addons\dayz_server\WAI\init.sqf";
allowConnection = true;
sm_done = true;
publicVariable "sm_done";
};

 

My fn_self file:

scriptName "Functions\misc\fn_selfActions.sqf";

private ["_isWreckBuilding","_temp_keys","_magazinesPlayer","_isPZombie","_vehicle","_inVehicle","_hasFuelE","_hasRawMeat","_hasKnife","_hasToolbox","_onLadder","_nearLight","_canPickLight","_canDo","_text","_isHarvested","_isVehicle","_isVehicletype","_isMan","_traderType","_ownerID","_isAnimal","_isDog","_isZombie","_isDestructable","_isTent","_isFuel","_isAlive","_Unlock","_lock","_buy","_dogHandle","_lieDown","_warn","_hastinitem","_allowedDistance","_menu","_menu1","_humanity_logic","_low_high","_cancel","_metals_trader","_traderMenu","_isWreck","_isRemovable","_isDisallowRepair","_rawmeat","_humanity","_speed","_dog","_hasbottleitem","_isAir","_isShip","_playersNear","_findNearestGens","_findNearestGen","_IsNearRunningGen","_cursorTarget","_isnewstorage","_itemsPlayer","_ownerKeyId","_typeOfCursorTarget","_hasKey","_oldOwner","_combi","_key_colors","_player_deleteBuild","_player_flipveh","_player_lockUnlock_crtl","_player_butcher","_player_studybody","_player_cook","_player_boil","_hasFuelBarrelE","_hasHotwireKit","_player_SurrenderedGear","_isSurrendered","_isModular","_isModularDoor","_ownerKeyName","_temp_keys_names","_hasAttached","_allowTow","_liftHeli","_found","_posL","_posC","_height","_liftHelis","_attached"];

if (DZE_ActionInProgress) exitWith {};

_vehicle = vehicle player;
_isPZombie = player isKindOf "PZombie_VB";
_inVehicle = (_vehicle != player);
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
_canDo = (!r_drag_sqf && !r_player_unconscious && !_onLadder);


//--------------------------------------Deploy Bike----------------------------------
//-----------------------------------------Start--------------------------------------
_weapons = [currentWeapon player] + (weapons player) + (magazines player);
_isBike = typeOf cursorTarget in ["MMT_Civ"];

//BIKE DEPLOY
if ("ItemToolbox" in _weapons) then {
hasBikeItem = true;
} else { hasBikeItem = false;};
if((speed player <= 1) && hasBikeItem && _canDo) then {
if (s_player_deploybike < 0) then {
s_player_deploybike = player addaction[("" + ("Montar Bike") +""),"deployables\mtbike\deploy.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploybike;
s_player_deploybike = -1;
};

//PACK BIKE
if((_isBike && "ItemFlashlight" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {
if (s_player_deploybike2 < 0) then {
s_player_deploybike2 = player addaction[("" + ("Desmontar Bike") +""),"deployables\mtbike\pack.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploybike2;
s_player_deploybike2 = -1;
};
//--------------------------------------Deploy Bike----------------------------------
//------------------------------------------End--------------------------------------

//--------------------------------------Deploy Moped----------------------------------
//------------------------------------------Start-------------------------------------
_weapons = [currentWeapon player] + (weapons player) + (magazines player);
_isMoped = typeOf cursorTarget in ["TT650_Civ"];

//MOPED DEPLOY
if ("ItemToolbox" in _weapons && "PartGeneric" in _mags && "PartGeneric" in _mags && "PartEngine" in _mags && "PartWheel" in _mags && "PartWheel" in _mags) then {
hasMopedItem = true;
} else { hasMopedItem = false;};
if((speed player <= 1) && hasMopedItem && _canDo) then {
if (s_player_deploymoped < 0) then {
s_player_deploymoped = player addaction[("" + ("Montar Moped") +""),"deployables\moped\deploy.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploymoped;
s_player_deploymoped = -1;
};

//PACK MOPED
if((_isMoped && "itemtoolbox" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {
if (s_player_deploymoped2 < 0) then {
s_player_deploymoped2 = player addaction[("" + ("Desmontar Moped") +""),"deployables\moped\pack.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploymoped2;
s_player_deploymoped2 = -1;
};
//--------------------------------------Deploy Moped-----------------------------------
//-------------------------------------------End---------------------------------------

//--------------------------------------Deploy Mozzie----------------------------------
//------------------------------------------Start--------------------------------------
_weapons = [currentWeapon player] + (weapons player) + (magazines player);
_isMozzie = typeOf cursorTarget in ["TT650_Civ"];

//MOZZIE DEPLOY
if ("ItemToolbox" in _weapons) then {
hasMozzieItem = true;
} else { hasMozzieItem = false;};
if((speed player <= 1) && hasMozzieItem && _canDo) then {
if (s_player_deploymozzie < 0) then {
s_player_deploymozzie = player addaction[("" + ("Montar Moto") +""),"deployables\mozzie\deploy.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploymozzie;
s_player_deploymozzie = -1;
};

//PACK MOZZIE
if((_isMozzie && "ItemFlashlight" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {
if (s_player_deploymozzie2 < 0) then {
s_player_deploymozzie2 = player addaction[("" + ("Desmontar Moto") +""),"deployables\mozzie\pack.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploymozzie2;
s_player_deploymozzie2 = -1;
};
//--------------------------------------Deploy Mozzie-----------------------------------
//--------------------------------------------End---------------------------------------

//--------------------------------------Deploy Little Bird-----------------------------
//---------------------------------------------Start-----------------------------------
_weapons = [currentWeapon player] + (weapons player) + (magazines player);
_isBird = typeOf cursorTarget in ["MH6J_EP1"];

//BIRD DEPLOY
if ("ItemToolbox" in _weapons && "PartGeneric" in _mags && "PartGeneric" in _mags && "PartEngine" in _mags && "PartFueltank" in _mags && "PartVRotor" in _mags && "ItemFuelBarrel" in _mags && "PartGlass" in _mags && "PartGlass" in _mags) then {
hasBirdItem = true;
} else { hasBirdItem = false;};
if((speed player <= 1) && hasBirdItem && _canDo) then {
if (s_player_deploybird < 0) then {
s_player_deploybird = player addaction[("" + ("Deploy Little Bird") +""),"deployables\bird\deploy.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploybird;
s_player_deploybird = -1;
};

//PACK BIRD
if((_isBird && "ItemToolbox" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {
if (s_player_deploybird2 < 0) then {
s_player_deploybird2 = player addaction[("" + ("Re-Pack Little Bird") +""),"deployables\bird\pack.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_deploybird2;
s_player_deploybird2 = -1;
};
//--------------------------------------Deploy Little Bird----------------------------------
//-----------------------------------------------End----------------------------------------​
//----------------------------------------Bank Robbery---------------------------------------------
// Bank Robbery

_bankrobbery = cursorTarget isKindOf "Notebook";

if ((speed player <= 1) && _bankrobbery && (player distance cursorTarget < 5)) then {

if (s_player_bankrob < 0) then {

s_player_bankrob = player addAction ["Rob the bank","rob\robbank.sqf",cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_bankrob;

s_player_bankrob = -1;

};

// Bank Robbery END


// ------------------------------------------------------------------------Krixes Self Bloodbag Start------------------------------------------------------------------------
_mags = magazines player;

// Krixes Self Bloodbag
if ("ItemBloodbag" in _mags) then {
hasBagItem = true;
} else { hasBagItem = false;};
if((speed player <= 1) && hasBagItem && _canDo) then {
if (s_player_selfBloodbag < 0) then {
s_player_selfBloodbag = player addaction[("" + ("Self Bloodbag") +""),"Scripts\selfbloodbag\player_selfbloodbag.sqf","",5,false,true,"", ""];
};
} else {
player removeAction s_player_selfBloodbag;
s_player_selfBloodbag = -1;
};
// -------------------------------------------------------------------------Krixes Self Bloodbag End--------------------------------------------------------------------------
/*
_currentSkin = typeOf(player);
camoNetB_East = nearestObject [player, "Land_CamoNetB_EAST"];
camoNetVar_East = nearestObject [player, "Land_CamoNetVar_EAST"];
camoNet_East = nearestObject [player, "Land_CamoNet_EAST"];
camoNetB_Nato = nearestObject [player, "Land_CamoNetB_NATO"];
camoNetVar_Nato = nearestObject [player, "Land_CamoNetVar_NATO"];
camoNet_Nato = nearestObject [player, "Land_CamoNet_NATO"];

_mags = magazines player;
if ("ItemTankTrap" in _mags || "ItemSandbag" in _mags || "ItemWire" in _mags || "PartWoodPile" in _mags || "PartGeneric" in _mags || "PartWoodLumber" in _mags || "PartWoodPlywood" in _mags || "ItemSandbagLarge" in _mags || "sandbag_nest_kit" in _mags || "ItemPole" in _mags || "ItemCorrugated" in _mags || "storage_shed_kit" in _mags || "desert_net_kit" in _mags || "forest_net_kit" in _mags || "wooden_shed_kit" in _mags || "ItemBurlap" in _mags || "PartGlass" in _mags) then {
hasBuildItem = true;




} else { hasBuildItem = false;};
if((speed player <= 1) && hasBuildItem && _canDo) then {
if (s_player_recipeMenu < 0) then {
s_player_recipeMenu = player addaction [("" + ("Build recipe") +""),"buildRecipeBook\build_recipe_dialog.sqf","",5,false,true,"",""];
};
} else {
player removeAction s_player_recipeMenu;
s_player_recipeMenu = -1;
};
if (_currentSkin != globalSkin) then {
globalSkin = _currentSkin;
player removeEventHandler ["AnimChanged", 0];
ehWall = player addEventHandler ["AnimChanged", { player call antiWall; } ];
};
if((isNull cursorTarget) && _hasToolbox && _canDo && !remProc && !procBuild &&
(camoNetB_East distance player < 10 or
camoNetVar_East distance player < 10 or
camoNet_East distance player < 10 or
camoNetB_Nato distance player < 10 or
camoNetVar_Nato distance player < 10 or
camoNet_Nato distance player < 10)) then {
if (s_player_deleteCamoNet < 0) then {

s_player_deleteCamoNet = player addaction [("" + ("Delete network") +""),"dayz_code\actions\player_remove.sqf","",1,true,true,"",""];
s_player_netCodeObject = player addaction [("" + ("Enter the code to remove the network") +""),"dayz_code\external\keypad\fnc_keyPad\enterCode.sqf","",5,false,true,"",""];
};
} else {
player removeAction s_player_deleteCamoNet;
s_player_deleteCamoNet = -1;
player removeAction s_player_netCodeObject;
s_player_netCodeObject = -1;
};
if(_canDo && removeObject && !procBuild && !remProc &&
(camoNetB_East distance player < 10 or
camoNetVar_East distance player < 10 or
camoNet_East distance player < 10 or
camoNetB_Nato distance player < 10 or
camoNetVar_Nato distance player < 10 or
camoNet_Nato distance player < 10)) then {
if (s_player_codeRemoveNet < 0) then {
s_player_codeRemoveNet = player addaction [("" + ("Only the database owner can remove a network") +""),"dayz_code\actions\player_remove.sqf","",5,false,true,"",""];
};
} else {
player removeAction s_player_codeRemoveNet;
s_player_codeRemoveNet = -1;
};
_nearLight = nearestObject [player,"LitObject"];
_canPickLight = false;
if (!isNull _nearLight) then {
if (_nearLight distance player < 4) then {
_canPickLight = isNull (_nearLight getVariable ["owner",objNull]);
};
};
*/

// ====================== IT's SERVER MENU SCRIPT ======================

// The color for the menu is customizable. Default: f2cb0b. If you want to change it, use HTML color codes. Google it.
// IMPORTANT: If you have an antihack running like infiSTAR.de's their AH then add these names to the allowed actions list:
// s_player_servermenu,s_player_servermenu1,s_player_servermenu2,s_player_servermenu3,s_player_servermenu4,s_player_servermenuCancel,

// IT07's Server Menu script
if((speed player <= 1) && _canDo) then {
if (s_player_servermenu < 0) then {
s_player_servermenu = player addAction [("" + ("REGRAS/INFO") +""),"functions\server_menu.sqf","",-1,false,false,"", ""];
};
} else {
player removeAction s_player_servermenu;
s_player_servermenu = -1;
player removeAction s_player_servermenu1;
player removeAction s_player_servermenu2;
player removeAction s_player_servermenu3;
player removeAction s_player_servermenu4;
player removeAction s_player_servermenuCancel;
};

// ====================== SERVER MENU SCRIPT END ======================

_nearLight = nearestObject [player,"LitObject"];
_canPickLight = false;

if (!isNull _nearLight) then {
if (_nearLight distance player < 4) then {
_canPickLight = isNull (_nearLight getVariable ["owner",objNull]);
};
};

if (_canPickLight && !dayz_hasLight && !_isPZombie) then {
if (s_player_grabflare < 0) then {
_text = getText (configFile >> "CfgAmmo" >> (typeOf _nearLight) >> "displayName");
s_player_grabflare = player addAction [format[localize "str_actions_medical_15",_text], "\z\addons\dayz_code\actions\flare_pickup.sqf",_nearLight, 1, false, true, "", ""];
s_player_removeflare = player addAction [format[localize "str_actions_medical_17",_text], "\z\addons\dayz_code\actions\flare_remove.sqf",_nearLight, 1, false, true, "", ""];
};
} else {
player removeAction s_player_grabflare;
player removeAction s_player_removeflare;
s_player_grabflare = -1;
s_player_removeflare = -1;
};

if (DZE_HeliLift) then {
_hasAttached = _vehicle getVariable["hasAttached",false];
if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) < 30) && (speed _vehicle < 5) && (typeName _hasAttached == "OBJECT")) then {
if (s_player_heli_detach < 0) then {
dayz_myLiftVehicle = _vehicle;
s_player_heli_detach = dayz_myLiftVehicle addAction ["Detach Vehicle","\z\addons\dayz_code\actions\player_heliDetach.sqf",[dayz_myLiftVehicle,_hasAttached],2,false,true,"",""];
};
} else {
dayz_myLiftVehicle removeAction s_player_heli_detach;
s_player_heli_detach = -1;
};
};

if(DZE_HaloJump) then {
if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) > 400)) then {
if (s_halo_action < 0) then {
DZE_myHaloVehicle = _vehicle;
s_halo_action = DZE_myHaloVehicle addAction [localize "STR_EPOCH_ACTIONS_HALO","\z\addons\dayz_code\actions\halo_jump.sqf",[],2,false,true,"",""];
};
} else {
DZE_myHaloVehicle removeAction s_halo_action;
s_halo_action = -1;
};
};

if (!DZE_ForceNameTagsOff) then {
if (s_player_showname < 0 && !_isPZombie) then {
if (DZE_ForceNameTags) then {
s_player_showname = 1;
player setVariable["DZE_display_name",true,true];
} else {
s_player_showname = player addAction [localize "STR_EPOCH_ACTIONS_NAMEYES", "\z\addons\dayz_code\actions\display_name.sqf",true, 0, true, false, "",""];
s_player_showname1 = player addAction [localize "STR_EPOCH_ACTIONS_NAMENO", "\z\addons\dayz_code\actions\display_name.sqf",false, 0, true, false, "",""];
};
};
};

if(_isPZombie) then {
if (s_player_callzombies < 0) then {
s_player_callzombies = player addAction [localize "STR_EPOCH_ACTIONS_RAISEHORDE", "\z\addons\dayz_code\actions\call_zombies.sqf",player, 5, true, false, "",""];
};
if (DZE_PZATTACK) then {
call pz_attack;
DZE_PZATTACK = false;
};
if (s_player_pzombiesvision < 0) then {
s_player_pzombiesvision = player addAction [localize "STR_EPOCH_ACTIONS_NIGHTVIS", "\z\addons\dayz_code\actions\pzombie\pz_vision.sqf", [], 4, false, true, "nightVision", "_this == _target"];
};
if (!isNull cursorTarget && (player distance cursorTarget < 3)) then {
_isAnimal = cursorTarget isKindOf "Animal";
_isZombie = cursorTarget isKindOf "zZombie_base";
_isHarvested = cursorTarget getVariable["meatHarvested",false];
_isMan = cursorTarget isKindOf "Man";
if (!alive cursorTarget && (_isAnimal || _isMan) && !_isZombie && !_isHarvested) then {
if (s_player_pzombiesfeed < 0) then {
s_player_pzombiesfeed = player addAction [localize "STR_EPOCH_ACTIONS_FEED", "\z\addons\dayz_code\actions\pzombie\pz_feed.sqf",cursorTarget, 3, true, false, "",""];
};
} else {
player removeAction s_player_pzombiesfeed;
s_player_pzombiesfeed = -1;
};
} else {
player removeAction s_player_pzombiesfeed;
s_player_pzombiesfeed = -1;
};
};

_allowedDistance = 4;
_isAir = cursorTarget isKindOf "Air";
_isShip = cursorTarget isKindOf "Ship";

if(_isAir || _isShip) then {
_allowedDistance = 8;
};

if (!isNull cursorTarget && !_inVehicle && !_isPZombie && (player distance cursorTarget < _allowedDistance) && _canDo) then { //Has some kind of target

_cursorTarget = cursorTarget;
_typeOfCursorTarget = typeOf _cursorTarget;
_isVehicle = _cursorTarget isKindOf "AllVehicles";
_isVehicletype = _typeOfCursorTarget in ["ATV_US_EP1","ATV_CZ_EP1"];
_isnewstorage = _typeOfCursorTarget in DZE_isNewStorage;
_magazinesPlayer = magazines player;
_hasbottleitem = "ItemWaterbottle" in _magazinesPlayer;
_hastinitem = false;

{
if (_x in _magazinesPlayer) then {
_hastinitem = true;
};
} count boil_tin_cans;

_hasFuelE = "ItemJerrycanEmpty" in _magazinesPlayer;
_hasFuelBarrelE = "ItemFuelBarrelEmpty" in _magazinesPlayer;
_hasHotwireKit = "ItemHotwireKit" in _magazinesPlayer;
_itemsPlayer = items player;
_temp_keys = [];
_temp_keys_names = [];
_key_colors = ["ItemKeyYellow","ItemKeyBlue","ItemKeyRed","ItemKeyGreen","ItemKeyBlack"];

{
if (configName(inheritsFrom(configFile >> "CfgWeapons" >> _x)) in _key_colors) then {
_ownerKeyId = getNumber(configFile >> "CfgWeapons" >> _x >> "keyid");
_ownerKeyName = getText(configFile >> "CfgWeapons" >> _x >> "displayName");
_temp_keys_names set [_ownerKeyId,_ownerKeyName];
_temp_keys set [count _temp_keys,str(_ownerKeyId)];
};
} count _itemsPlayer;

_hasKnife = "ItemKnife" in _itemsPlayer;
_hasToolbox = "ItemToolbox" in _itemsPlayer;
_isMan = _cursorTarget isKindOf "Man";
_traderType = _typeOfCursorTarget;
_ownerID = _cursorTarget getVariable ["CharacterID","0"];
_isAnimal = _cursorTarget isKindOf "Animal";
_isDog = (_cursorTarget isKindOf "DZ_Pastor" || _cursorTarget isKindOf "DZ_Fin");
_isZombie = _cursorTarget isKindOf "zZombie_base";
_isDestructable = _cursorTarget isKindOf "BuiltItems";
_isWreck = _typeOfCursorTarget in DZE_isWreck;
_isWreckBuilding = _typeOfCursorTarget in DZE_isWreckBuilding;
_isModular = _cursorTarget isKindOf "ModularItems";
_isModularDoor = _typeOfCursorTarget in ["Land_DZE_WoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_GarageWoodDoor","CinderWallDoor_DZ","CinderWallDoorSmall_DZ"];
_isRemovable = _typeOfCursorTarget in DZE_isRemovable;
_isDisallowRepair = _typeOfCursorTarget in ["M240Nest_DZ"];
_isTent = _cursorTarget isKindOf "TentStorage";
_isAlive = alive _cursorTarget;
_text = getText (configFile >> "CfgVehicles" >> _typeOfCursorTarget >> "displayName");
_rawmeat = meatraw;
_hasRawMeat = false;

{
if (_x in _magazinesPlayer) then {
_hasRawMeat = true;
};
} count _rawmeat;

_isFuel = false;

if (_hasFuelE || _hasFuelBarrelE) then {
{
if(_cursorTarget isKindOf _x) exitWith {_isFuel = true;};
} count dayz_fuelsources;
};

_player_flipveh = false;
_player_deleteBuild = false;
_player_lockUnlock_crtl = false;

if (_canDo && (speed player <= 1) && (_cursorTarget isKindOf "Plastic_Pole_EP1_DZ")) then {
if (s_player_plotManagement < 0) then {
_adminList = ["76561197961674259","76561198083332784","76561198116439388"]; // Add admins here if you admins to able to manage all plotpoles
_owner = _cursorTarget getVariable ["ownerPUID","0"];
_friends = _cursorTarget getVariable ["plotfriends", []];
_fuid = [];
{
_friendUID = _x select 0;
_fuid = _fuid + [_friendUID];
} forEach _friends;
_allowed = [_owner];
_allowed = [_owner] + _adminList + _fuid;
if((getPlayerUID player) in _allowed)then{
s_player_plotManagement = player addAction ["Manage Plot", "plotManagement\initPlotManagement.sqf", [], 5, false];
};
};
if (s_player_maintain_area < 0) then {
s_player_maintain_area = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_MAINTAREA"], "Scripts\Gold_Coin_system\Maintain\maintain_area.sqf", "maintain", 5, false];
s_player_maintain_area_preview = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_MAINTPREV"], "Scripts\Gold_Coin_system\Maintain\maintain_area.sqf", "preview", 5, false];
};
} else {
player removeAction s_player_plotManagement;
s_player_plotManagement = -1;
player removeAction s_player_maintain_area;
s_player_maintain_area = -1;
player removeAction s_player_maintain_area_preview;
s_player_maintain_area_preview = -1;
};

if(_isAlive) then {

if(_isDestructable || _isWreck || _isRemovable || _isWreckBuilding) then {
if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
_player_deleteBuild = true;
};
};

///Allow owners to delete modulars
if(_isModular) then {
if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];
_IsNearPlot = count (_findNearestPoles);
_fuid = [];
_allowed = [];
if(_IsNearPlot > 0)then{
_thePlot = _findNearestPoles select 0;
_owner = _thePlot getVariable ["ownerPUID","010"];
_friends = _thePlot getVariable ["plotfriends", []];
{
_friendUID = _x select 0;
_fuid = _fuid + [_friendUID];
} forEach _friends;
_allowed = [_owner];
_allowed = [_owner] + _fuid;
if ( _playerUID in _allowed && _ownerID in _allowed ) then { // // If u want that the object also belongs to someone on the plotpole.
_player_deleteBuild = true;
};
}else{
if(_ownerID == _playerUID)then{
_player_deleteBuild = true;
};
};
};
};
//Allow owners to delete modular doors without locks
if(_isModularDoor) then {
if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];
_IsNearPlot = count (_findNearestPoles);
_fuid = [];
_allowed = [];
if(_IsNearPlot > 0)then{
_thePlot = _findNearestPoles select 0;
_owner = _thePlot getVariable ["ownerPUID","010"];
_friends = _thePlot getVariable ["plotfriends", []];
{
_friendUID = _x select 0;
_fuid = _fuid + [_friendUID];
} forEach _friends;
_allowed = [_owner];
_allowed = [_owner] + _fuid;
if ( _playerUID in _allowed && _ownerID in _allowed) then { // // If u want that the object also belongs to someone on the plotpole.
_player_deleteBuild = true;
};
}else{
if(_ownerID == _playerUID)then{
_player_deleteBuild = true;
};
};
};
};

if(_isVehicle) then {

if (!(canmove _cursorTarget) && (player distance _cursorTarget >= 2) && (count (crew _cursorTarget))== 0 && ((vectorUp _cursorTarget) select 2) < 0.5) then {
_playersNear = {isPlayer _x} count (player nearEntities ["CAManBase", 6]);
if(_isVehicletype || (_playersNear >= 2)) then {
_player_flipveh = true;
};
};

if(!_isMan && _ownerID != "0" && !(_cursorTarget isKindOf "Bicycle")) then {
_player_lockUnlock_crtl = true;
};
};
};

if(_player_deleteBuild) then {
if (s_player_deleteBuild < 0) then {
s_player_deleteBuild = player addAction [format[localize "str_actions_delete",_text], "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, true, true, "", ""];
};
} else {
player removeAction s_player_deleteBuild;
s_player_deleteBuild = -1;
};

if (DZE_HeliLift) then {

_liftHeli = objNull;
_found = false;
_allowTow = false;

if ((count (crew _cursorTarget)) == 0) then {
{
if(!_allowTow) then {
_allowTow = _cursorTarget isKindOf _x;
};
} count DZE_HeliAllowToTow;
};

if (_allowTow) then {
_liftHelis = nearestObjects [player, DZE_HeliAllowTowFrom, 15];
{
if(!_found) then {
_posL = [_x] call FNC_getPos;
_posC = [_cursorTarget] call FNC_getPos;
_height = (_posL select 2) - (_posC select 2);
_hasAttached = _x getVariable["hasAttached",false];
if(_height < 15 && _height > 5 && (typeName _hasAttached != "OBJECT")) then {
if(((abs((_posL select 0) - (_posC select 0))) < 10) && ((abs((_posL select 1) - (_posC select 1))) < 10)) then {
_liftHeli = _x;
_found = true;
};
};
};
} count _liftHelis;
};

_attached = _cursorTarget getVariable["attached",false];

if(_found && _allowTow && _canDo && !locked _cursorTarget && !_isPZombie && (typeName _attached != "OBJECT")) then {
if (s_player_heli_lift < 0) then {
s_player_heli_lift = player addAction ["Attach to Heli", "\z\addons\dayz_code\actions\player_heliLift.sqf",[_liftHeli,_cursorTarget], -10, false, true, "",""];
};
} else {
player removeAction s_player_heli_lift;
s_player_heli_lift = -1;
};
};

if(_player_lockUnlock_crtl) then {
if (s_player_lockUnlock_crtl < 0) then {
_hasKey = _ownerID in _temp_keys;
_oldOwner = (_ownerID == dayz_playerUID);
if(locked _cursorTarget) then {
if(_hasKey || _oldOwner) then {
_Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\unlock_veh.sqf",[_cursorTarget,(_temp_keys_names select (parseNumber _ownerID))], 2, true, true, "", ""];
s_player_lockunlock set [count s_player_lockunlock,_Unlock];
s_player_lockUnlock_crtl = 1;
} else {
if(_hasHotwireKit) then {
_Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_HOTWIRE",_text], "\z\addons\dayz_code\actions\hotwire_veh.sqf",_cursorTarget, 2, true, true, "", ""];
} else {
_Unlock = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_VEHLOCKED"], "",_cursorTarget, 2, true, true, "", ""];
};
s_player_lockunlock set [count s_player_lockunlock,_Unlock];
s_player_lockUnlock_crtl = 1;
};
} else {
if(_hasKey || _oldOwner) then {
_lock = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\lock_veh.sqf",_cursorTarget, 1, true, true, "", ""];
s_player_lockunlock set [count s_player_lockunlock,_lock];
s_player_lockUnlock_crtl = 1;
};
};
};
} else {
{player removeAction _x} count s_player_lockunlock;s_player_lockunlock = [];
s_player_lockUnlock_crtl = -1;
};

if(DZE_AllowForceSave) then {

if((_isVehicle || _isTent) && !_isMan) then {
if (s_player_forceSave < 0) then {
s_player_forceSave = player addAction [format[localize "str_actions_save",_text], "\z\addons\dayz_code\actions\forcesave.sqf",_cursorTarget, 1, true, true, "", ""];
};
} else {
player removeAction s_player_forceSave;
s_player_forceSave = -1;
};
};



if(DZE_AllowCargoCheck) then {
if((_isVehicle || _isTent || _isnewstorage) && _isAlive && !_isMan && !locked _cursorTarget) then {
if (s_player_checkGear < 0) then {
s_player_checkGear = player addAction [localize "STR_EPOCH_PLAYER_CARGO", "\z\addons\dayz_code\actions\cargocheck.sqf",_cursorTarget, 1, true, true, "", ""];
};
} else {
player removeAction s_player_checkGear;
s_player_checkGear = -1;
};
};

if(_player_flipveh) then {
if (s_player_flipveh < 0) then {
s_player_flipveh = player addAction [format[localize "str_actions_flipveh",_text], "\z\addons\dayz_code\actions\player_flipvehicle.sqf",_cursorTarget, 1, true, true, "", ""];
};
} else {
player removeAction s_player_flipveh;
s_player_flipveh = -1;
};

if((_hasFuelE || _hasFuelBarrelE) && _isFuel) then {
if (s_player_fillfuel < 0) then {
s_player_fillfuel = player addAction [localize "str_actions_self_10", "\z\addons\dayz_code\actions\jerry_fill.sqf",[], 1, false, true, "", ""];
};
} else {
player removeAction s_player_fillfuel;
s_player_fillfuel = -1;
};

_player_butcher = false;
_player_studybody = false;
_player_SurrenderedGear = false;

if (!_isAlive) then {

if((_isAnimal || _isZombie) && _hasKnife) then {
_isHarvested = _cursorTarget getVariable["meatHarvested",false];
if (!_isHarvested) then {
_player_butcher = true;
};
};

if (_isMan && !_isZombie && !_isAnimal) then {
_player_studybody = true;
}
} else {

if(_isMan && !_isZombie && !_isAnimal) then {
_isSurrendered = _cursorTarget getVariable ["DZE_Surrendered",false];
if (_isSurrendered) then {
_player_SurrenderedGear = true;
};
};
};

if (_player_butcher) then {
if (s_player_butcher < 0) then {
if(_isZombie) then {
s_player_butcher = player addAction [localize "STR_EPOCH_ACTIONS_GUTZOM", "\z\addons\dayz_code\actions\gather_zparts.sqf",_cursorTarget, 0, true, true, "", ""];
} else {
s_player_butcher = player addAction [localize "str_actions_self_04", "\z\addons\dayz_code\actions\gather_meat.sqf",_cursorTarget, 3, true, true, "", ""];
};
};
} else {
player removeAction s_player_butcher;
s_player_butcher = -1;
};

if (_player_studybody) then {
if (s_player_studybody < 0) then {
s_player_studybody = player addAction [(""+("Check Wallet") + ""), "Scripts\Gold_Coin_system\Check_Wallet\check_wallet.sqf",_cursorTarget, 0, false, true, "",""];
};
} else {
player removeAction s_player_studybody;
s_player_studybody = -1;
};

_player_cook = false;
_player_boil = false;

if (inflamed _cursorTarget) then {

if (_hasRawMeat) then {
_player_cook = true;
};

if (_hasbottleitem && _hastinitem) then {
_player_boil = true;
};
};

if (_player_SurrenderedGear) then {
if (s_player_SurrenderedGear < 0) then {
s_player_SurrenderedGear = player addAction [localize "STR_EPOCH_ACTIONS_GEAR", "\z\addons\dayz_code\actions\surrender_gear.sqf",_cursorTarget, 1, true, true, "", ""];
};
} else {
player removeAction s_player_SurrenderedGear;
s_player_SurrenderedGear = -1;
};

if (_player_cook) then {
if (s_player_cook < 0) then {
s_player_cook = player addAction [localize "str_actions_self_05", "\z\addons\dayz_code\actions\cook.sqf",_cursorTarget, 3, true, true, "", ""];
};
} else {
player removeAction s_player_cook;
s_player_cook = -1;
};

if (_player_boil) then {
if (s_player_boil < 0) then {
s_player_boil = player addAction [localize "str_actions_boilwater", "\z\addons\dayz_code\actions\boil.sqf",_cursorTarget, 3, true, true, "", ""];
};
} else {
player removeAction s_player_boil;
s_player_boil = -1;
};

if(_cursorTarget == dayz_hasFire) then {
if ((s_player_fireout < 0) && !(inflamed _cursorTarget) && (player distance _cursorTarget < 3)) then {
s_player_fireout = player addAction [localize "str_actions_self_06", "\z\addons\dayz_code\actions\fire_pack.sqf",_cursorTarget, 0, false, true, "",""];
};
} else {
player removeAction s_player_fireout;
s_player_fireout = -1;
};

if(_isTent && (player distance _cursorTarget < 3)) then {
if (_ownerID == dayz_characterID) then {
if (s_player_packtent < 0) then {
s_player_packtent = player addAction [localize "str_actions_self_07", "\z\addons\dayz_code\actions\tent_pack.sqf",_cursorTarget, 0, false, true, "",""];
};
} else {
if(("ItemJerrycan" in _magazinesPlayer) && ("ItemMatchbox_DZE" in weapons player)) then {
if (s_player_packtent < 0) then {
s_player_packtent = player addAction [localize "STR_EPOCH_ACTIONS_DESTROYTENT", "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, true, true, "", ""];
};
};
};
} else {
player removeAction s_player_packtent;
s_player_packtent = -1;
};

if((_typeOfCursorTarget in DZE_LockableStorage) && _ownerID != "0" && (player distance _cursorTarget < 3)) then {
if (s_player_unlockvault < 0) then {
if(_typeOfCursorTarget in DZE_LockedStorage) then {
if(_ownerID == dayz_combination || _ownerID == dayz_playerUID) then {
_combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];
s_player_combi set [count s_player_combi,_combi];
} else {
_combi = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
s_player_combi set [count s_player_combi,_combi];
};
s_player_unlockvault = 1;
} else {
if(_ownerID != dayz_combination && _ownerID != dayz_playerUID) then {
_combi = player addAction [localize "STR_EPOCH_ACTIONS_RECOMBO", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];
s_player_combi set [count s_player_combi,_combi];
s_player_unlockvault = 1;
};
};
};
} else {
{player removeAction _x} count s_player_combi;s_player_combi = [];
s_player_unlockvault = -1;
};

if(_typeOfCursorTarget in DZE_UnLockedStorage and (player distance _cursorTarget < 3)) then {
if (s_bank_dialog < 0) then {
s_bank_dialog = player addAction ["Online Banking", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
};
} else {
player removeAction s_bank_dialog;
s_bank_dialog = -1;
};

if(_typeOfCursorTarget in Bank_Object and (player distance _cursorTarget < 3)) then {
if (s_bank_dialog2 < 0) then {
s_bank_dialog2 = player addAction ["Bank ATM", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
};
} else {
player removeAction s_bank_dialog2;
s_bank_dialog2 = -1;
};

if(_typeOfCursorTarget in DZE_UnLockedStorage && _ownerID != "0" && (player distance _cursorTarget < 3)) then {

if (s_player_lockvault < 0) then {
if(_ownerID == dayz_combination || _ownerID == dayz_playerUID) then {
s_player_lockvault = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true, "",""];
};
};
if (s_player_packvault < 0 && (_ownerID == dayz_combination || _ownerID == dayz_playerUID)) then {
s_player_packvault = player addAction [format["%1",(format[localize "STR_EPOCH_ACTIONS_PACK",_text])], "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""];
};

} else {
player removeAction s_player_packvault;
s_player_packvault = -1;
player removeAction s_player_lockvault;
s_player_lockvault = -1;
};

if(_typeOfCursorTarget == "Info_Board_EP1") then {
if (s_player_information < 0) then {
s_player_information = player addAction [localize "STR_EPOCH_ACTIONS_MURDERS", "\z\addons\dayz_code\actions\list_playerDeaths.sqf",[], 7, false, true, "",""];
};
} else {
player removeAction s_player_information;
s_player_information = -1;
};

if (_isMan and _isAlive and !_isZombie and !_isAnimal and !(_traderType in serverTraders)) then {
if (s_givemoney_dialog < 0) then {
s_givemoney_dialog = player addAction [format["Give Money to %1", (name _cursorTarget)], "Scripts\Gold_Coin_system\Give_Money\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
};
} else {
player removeAction s_givemoney_dialog;
s_givemoney_dialog = -1;
};

if(_typeOfCursorTarget in dayz_fuelpumparray) then {
if (s_player_fuelauto < 0) then {

_findNearestGens = nearestObjects [player, ["Generator_DZ"], 30];
_findNearestGen = [];
{
if (alive _x && (_x getVariable ["GeneratorRunning", false])) then {
_findNearestGen set [(count _findNearestGen),_x];
};
} count _findNearestGens;
_IsNearRunningGen = count (_findNearestGen);

if(_IsNearRunningGen > 0) then {
s_player_fuelauto = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",objNull, 0, false, true, "",""];
} else {
s_player_fuelauto = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""];
};
};
} else {
player removeAction s_player_fuelauto;
s_player_fuelauto = -1;
};

if(_typeOfCursorTarget in DZE_fueltruckarray && alive _cursorTarget) then {
if (s_player_fuelauto2 < 0) then {
if(isEngineOn _cursorTarget) then {
s_player_fuelauto2 = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",_cursorTarget, 0, false, true, "",""];
} else {
s_player_fuelauto2 = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""];
};
};
} else {
player removeAction s_player_fuelauto2;
s_player_fuelauto2 = -1;
};

if ((_cursorTarget isKindOf "ModularItems") || (_cursorTarget isKindOf "Land_DZE_WoodDoor_Base") || (_cursorTarget isKindOf "CinderWallDoor_DZ_Base")) then {
if ((s_player_lastTarget select 0) != _cursorTarget) then {
if (s_player_upgrade_build > 0) then {
player removeAction s_player_upgrade_build;
s_player_upgrade_build = -1;
};
};
if (s_player_upgrade_build < 0) then {
s_player_lastTarget set [0,_cursorTarget];
s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "BuildVectors\action\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""];
};
} else {
player removeAction s_player_upgrade_build;
s_player_upgrade_build = -1;
};

if((_isDestructable || _cursorTarget isKindOf "Land_DZE_WoodDoorLocked_Base" || _cursorTarget isKindOf "CinderWallDoorLocked_DZ_Base") && (DZE_Lock_Door == _ownerID)) then {
if ((s_player_lastTarget select 1) != _cursorTarget) then {
if (s_player_downgrade_build > 0) then {
player removeAction s_player_downgrade_build;
s_player_downgrade_build = -1;
};
};
if (s_player_downgrade_build < 0) then {
s_player_lastTarget set [1,_cursorTarget];
s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "BuildVectors\action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];
};
} else {
player removeAction s_player_downgrade_build;
s_player_downgrade_build = -1;
};

if((_cursorTarget isKindOf "ModularItems" || _cursorTarget isKindOf "DZE_Housebase" || _typeOfCursorTarget == "LightPole_DZ") && (damage _cursorTarget >= DZE_DamageBeforeMaint)) then {
if ((s_player_lastTarget select 2) != _cursorTarget) then {
if (s_player_maint_build > 0) then {
player removeAction s_player_maint_build;
s_player_maint_build = -1;
};
};
if (s_player_maint_build < 0) then {
s_player_lastTarget set [2,_cursorTarget];
s_player_maint_build = player addAction [format[localize "STR_EPOCH_ACTIONS_MAINTAIN",_text], "\z\addons\dayz_code\actions\player_buildingMaint.sqf",_cursorTarget, -2, false, true, "",""];
};
} else {
player removeAction s_player_maint_build;
s_player_maint_build = -1;
};

if(_cursorTarget isKindOf "Generator_DZ") then {
if (s_player_fillgen < 0) then {

if((_cursorTarget getVariable ["GeneratorRunning", false])) then {
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR1", "\z\addons\dayz_code\actions\stopGenerator.sqf",_cursorTarget, 0, false, true, "",""];
} else {
if((_cursorTarget getVariable ["GeneratorFilled", false])) then {
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR2", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""];
} else {
if("ItemJerrycan" in _magazinesPlayer) then {
s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR3", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""];
};
};
};
};
} else {
player removeAction s_player_fillgen;
s_player_fillgen = -1;
};

if(_isTent && _ownerID == dayz_characterID) then {
if ((s_player_sleep < 0) && (player distance _cursorTarget < 3)) then {
s_player_sleep = player addAction [localize "str_actions_self_sleep", "\z\addons\dayz_code\actions\player_sleep.sqf",_cursorTarget, 0, false, true, "",""];
};
} else {
player removeAction s_player_sleep;
s_player_sleep = -1;
};

_clothesTaken = cursorTarget getVariable["clothesTaken",false];

// Take clothes by Zabn @ BalotaBuddies.net
if (_isMan and !_isAlive and !_isZombie and !_isAnimal and !_clothesTaken) then {
if (s_player_clothes < 0) then {
s_player_clothes = player addAction [("")+("Take Clothes")+(""), "scripts\player_takeClothes.sqf",cursorTarget, -10, false, true, "",""];
};
} else {
player removeAction s_player_clothes;
s_player_clothes = -1;
};

if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {
if (s_player_repair_crtl < 0) then {
dayz_myCursorTarget = _cursorTarget;
_menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
_menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
s_player_repairActions set [count s_player_repairActions,_menu];
s_player_repairActions set [count s_player_repairActions,_menu1];
s_player_repair_crtl = 1;
} else {
{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
s_player_repair_crtl = -1;
};
};

if (_isMan && !_isPZombie && _traderType in serverTraders) then {

if (s_player_parts_crtl < 0) then {

_humanity = player getVariable ["humanity",0];
_traderMenu = call compile format["menu_%1;",_traderType];
_low_high = "low";
_humanity_logic = false;

if((_traderMenu select 2) == "friendly") then {
_humanity_logic = (_humanity < -5000);
};
if((_traderMenu select 2) == "hostile") then {
_low_high = "high";
_humanity_logic = (_humanity > -5000);
};
if((_traderMenu select 2) == "hero") then {
_humanity_logic = (_humanity < 5000);
};
if(_humanity_logic) then {
_cancel = player addAction [format[localize "STR_EPOCH_ACTIONS_HUMANITY",_low_high], "\z\addons\dayz_code\actions\trade_cancel.sqf",["na"], 0, true, false, "",""];
s_player_parts set [count s_player_parts,_cancel];
} else {

{
_buy = player addAction [format["Trade %1 %2 for %3 %4",(_x select 3),(_x select 5),(_x select 2),(_x select 6)], "\z\addons\dayz_code\actions\trade_items_wo_db.sqf",[(_x select 0),(_x select 1),(_x select 2),(_x select 3),(_x select 4),(_x select 5),(_x select 6)], (_x select 7), true, true, "",""];
s_player_parts set [count s_player_parts,_buy];

} count (_traderMenu select 1);
_buyV = player addAction ["Advanced Trading", "zupa\advancedTrading\init.sqf",(_traderMenu select 0), 999, true, false, "",""];
s_player_parts set [count s_player_parts,_buyV];
// Database menu
_buy = player addAction [localize "STR_EPOCH_PLAYER_289", "\z\addons\dayz_code\actions\show_dialog.sqf",(_traderMenu select 0), 999, true, false, "",""];
s_player_parts set [count s_player_parts,_buy];

};
s_player_parts_crtl = 1;
};
} else {
{player removeAction _x} count s_player_parts;s_player_parts = [];
s_player_parts_crtl = -1;
};

if(dayz_tameDogs) then {

if (_isDog && _isAlive && (_hasRawMeat) && _ownerID == "0" && player getVariable ["dogID", 0] == 0) then {
if (s_player_tamedog < 0) then {
s_player_tamedog = player addAction [localize "str_actions_tamedog", "\z\addons\dayz_code\actions\tame_dog.sqf", _cursorTarget, 1, false, true, "", ""];
};
} else {
player removeAction s_player_tamedog;
s_player_tamedog = -1;
};

if (_isDog && _ownerID == dayz_characterID && _isAlive) then {
_dogHandle = player getVariable ["dogID", 0];
if (s_player_feeddog < 0 && _hasRawMeat) then {
s_player_feeddog = player addAction [localize "str_actions_feeddog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,0], 0, false, true,"",""];
};
if (s_player_waterdog < 0 && "ItemWaterbottle" in _magazinesPlayer) then {
s_player_waterdog = player addAction [localize "str_actions_waterdog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,1], 0, false, true,"",""];
};
if (s_player_staydog < 0) then {
_lieDown = _dogHandle getFSMVariable "_actionLieDown";
if (_lieDown) then { _text = "str_actions_liedog"; } else { _text = "str_actions_sitdog"; };
s_player_staydog = player addAction [localize _text,"\z\addons\dayz_code\actions\dog\stay.sqf", _dogHandle, 5, false, true,"",""];
};
if (s_player_trackdog < 0) then {
s_player_trackdog = player addAction [localize "str_actions_trackdog","\z\addons\dayz_code\actions\dog\track.sqf", _dogHandle, 4, false, true,"",""];
};
if (s_player_barkdog < 0) then {
s_player_barkdog = player addAction [localize "str_actions_barkdog","\z\addons\dayz_code\actions\dog\speak.sqf", _cursorTarget, 3, false, true,"",""];
};
if (s_player_warndog < 0) then {
_warn = _dogHandle getFSMVariable "_watchDog";
if (_warn) then { _text = (localize "str_epoch_player_247"); _warn = false; } else { _text = (localize "str_epoch_player_248"); _warn = true; };
s_player_warndog = player addAction [format[localize "str_actions_warndog",_text],"\z\addons\dayz_code\actions\dog\warn.sqf",[_dogHandle, _warn], 2, false, true,"",""];
};
if (s_player_followdog < 0) then {
s_player_followdog = player addAction [localize "str_actions_followdog","\z\addons\dayz_code\actions\dog\follow.sqf",[_dogHandle,true], 6, false, true,"",""];
};
} else {
player removeAction s_player_feeddog;
s_player_feeddog = -1;
player removeAction s_player_waterdog;
s_player_waterdog = -1;
player removeAction s_player_staydog;
s_player_staydog = -1;
player removeAction s_player_trackdog;
s_player_trackdog = -1;
player removeAction s_player_barkdog;
s_player_barkdog = -1;
player removeAction s_player_warndog;
s_player_warndog = -1;
player removeAction s_player_followdog;
s_player_followdog = -1;
};
};

} else {

player removeAction s_player_plotManagement;
s_player_plotManagement = -1;
{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
s_player_repair_crtl = -1;
{player removeAction _x} count s_player_combi;s_player_combi = [];
dayz_myCursorTarget = objNull;
s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull];
{player removeAction _x} count s_player_parts;s_player_parts = [];
s_player_parts_crtl = -1;
{player removeAction _x} count s_player_lockunlock;s_player_lockunlock = [];
s_player_lockUnlock_crtl = -1;
player removeAction s_player_checkGear;
s_player_checkGear = -1;
player removeAction s_player_SurrenderedGear;
s_player_SurrenderedGear = -1;
player removeAction s_player_forceSave;
s_player_forceSave = -1;
player removeAction s_player_flipveh;
s_player_flipveh = -1;
player removeAction s_player_sleep;
s_player_sleep = -1;
player removeAction s_player_deleteBuild;
s_player_deleteBuild = -1;
player removeAction s_player_butcher;
s_player_butcher = -1;
player removeAction s_player_cook;
s_player_cook = -1;
player removeAction s_player_boil;
s_player_boil = -1;
player removeAction s_player_fireout;
s_player_fireout = -1;
player removeAction s_player_packtent;
s_player_packtent = -1;
player removeAction s_player_fillfuel;
s_player_fillfuel = -1;
player removeAction s_player_studybody;
s_player_studybody = -1;
player removeAction s_player_tamedog;
s_player_tamedog = -1;
player removeAction s_player_feeddog;
s_player_feeddog = -1;
player removeAction s_player_waterdog;
s_player_waterdog = -1;
player removeAction s_player_staydog;
s_player_staydog = -1;
player removeAction s_player_trackdog;
s_player_trackdog = -1;
player removeAction s_player_barkdog;
s_player_barkdog = -1;
player removeAction s_player_warndog;
s_player_warndog = -1;
player removeAction s_player_followdog;
s_player_followdog = -1;
player removeAction s_player_unlockvault;
s_player_unlockvault = -1;
player removeAction s_player_packvault;
s_player_packvault = -1;
player removeAction s_player_lockvault;
s_player_lockvault = -1;
player removeAction s_player_information;
s_player_information = -1;
player removeAction s_player_fillgen;
s_player_fillgen = -1;
player removeAction s_player_upgrade_build;
s_player_upgrade_build = -1;
player removeAction s_player_maint_build;
s_player_maint_build = -1;
player removeAction s_player_downgrade_build;
s_player_downgrade_build = -1;
player removeAction s_player_towing;
s_player_towing = -1;
player removeAction s_player_fuelauto;
s_player_fuelauto = -1;
player removeAction s_player_fuelauto2;
s_player_fuelauto2 = -1;
player removeAction s_givemoney_dialog;
s_givemoney_dialog = -1;
player removeAction s_bank_dialog;
s_bank_dialog = -1;
player removeAction s_bank_dialog2;
s_bank_dialog2 = -1;
player removeAction s_player_packOBJ;
s_player_packOBJ = -1;
};

_dogHandle = player getVariable ["dogID", 0];

if (_dogHandle > 0) then {
_dog = _dogHandle getFSMVariable "_dog";
_ownerID = "0";
if (!isNull cursorTarget) then { _ownerID = cursorTarget getVariable ["CharacterID","0"]; };
if (_canDo && !_inVehicle && alive _dog && _ownerID != dayz_characterID) then {
if (s_player_movedog < 0) then {
s_player_movedog = player addAction [localize "str_actions_movedog", "\z\addons\dayz_code\actions\dog\move.sqf", player getVariable ["dogID", 0], 1, false, true, "", ""];
};
if (s_player_speeddog < 0) then {
_text = (localize "str_epoch_player_249");
_speed = 0;
if (_dog getVariable ["currentSpeed",1] == 0) then { _speed = 1; _text = (localize "str_epoch_player_250"); };
s_player_speeddog = player addAction [format[localize "str_actions_speeddog", _text], "\z\addons\dayz_code\actions\dog\speed.sqf",[player getVariable ["dogID", 0],_speed], 0, false, true, "", ""];
};
if (s_player_calldog < 0) then {
s_player_calldog = player addAction [localize "str_actions_calldog", "\z\addons\dayz_code\actions\dog\follow.sqf", [player getVariable ["dogID", 0], true], 2, false, true, "", ""];
};
};
} else {
player removeAction s_player_movedog;
s_player_movedog = -1;
player removeAction s_player_speeddog;
s_player_speeddog = -1;
player removeAction s_player_calldog;
s_player_calldog = -1;
};

Link to comment
Share on other sites

Zupa I do not understand, no one can see the option plot management, just me because my id added in this fn_self ...

 

I have not installed plot for life, I just snap pro and vector. The owner of the plot builds normally but can not open the option for managing.

My server_monitor file:

private ["_nul","_result","_pos","_wsDone","_dir","_isOK","_countr","_objWpnTypes","_objWpnQty","_dam","_selection","_totalvehicles","_object","_idKey","_type","_ownerID","_worldspace","_intentory","_hitPoints","_fuel","_damage","_key","_vehLimit","_hiveResponse","_objectCount","_codeCount","_data","_status","_val","_traderid","_retrader","_traderData","_id","_lockable","_debugMarkerPosition","_vehicle_0","_bQty","_vQty","_BuildingQueue","_objectQueue","_superkey","_shutdown","_res","_hiveLoaded"];

dayz_versionNo = getText(configFile >> "CfgMods" >> "DayZ" >> "version");

dayz_hiveVersionNo = getNumber(configFile >> "CfgMods" >> "DayZ" >> "hiveVersion");

_hiveLoaded = false;

waitUntil{initialized};

diag_log "HIVE: Starting";

waituntil{isNil "sm_done"};

if(isnil "MaxVehicleLimit") then {

MaxVehicleLimit = 50;

};

if(isnil "MaxDynamicDebris") then {

MaxDynamicDebris = 100;

};

if(isnil "MaxAmmoBoxes") then {

MaxAmmoBoxes = 3;

};

if(isnil "MaxMineVeins") then {

MaxMineVeins = 50;

};

if (isServer && isNil "sm_done") then {

serverVehicleCounter = [];

_hiveResponse = [];

for "_i" from 1 to 5 do {

diag_log "HIVE: trying to get objects";

_key = format["CHILD:302:%1:", dayZ_instance];

_hiveResponse = _key call server_hiveReadWrite;

if ((((isnil "_hiveResponse") || {(typeName _hiveResponse != "ARRAY")}) || {((typeName (_hiveResponse select 1)) != "SCALAR")})) then {

if ((_hiveResponse select 1) == "Instance already initialized") then {

_superkey = profileNamespace getVariable "SUPERKEY";

_shutdown = format["CHILD:400:%1:", _superkey];

_res = _shutdown call server_hiveReadWrite;

diag_log ("HIVE: attempt to kill.. HiveExt response:"+str(_res));

} else {

diag_log ("HIVE: connection problem... HiveExt response:"+str(_hiveResponse));

};

_hiveResponse = ["",0];

}

else {

diag_log ("HIVE: found "+str(_hiveResponse select 1)+" objects" );

_i = 99;

};

};

_BuildingQueue = [];

_objectQueue = [];

if ((_hiveResponse select 0) == "ObjectStreamStart") then {

profileNamespace setVariable ["SUPERKEY",(_hiveResponse select 2)];

_hiveLoaded = true;

diag_log ("HIVE: Commence Object Streaming...");

_key = format["CHILD:302:%1:", dayZ_instance];

_objectCount = _hiveResponse select 1;

_bQty = 0;

_vQty = 0;

for "_i" from 1 to _objectCount do {

_hiveResponse = _key call server_hiveReadWriteLarge;

if ((_hiveResponse select 2) isKindOf "ModularItems") then {

_BuildingQueue set [_bQty,_hiveResponse];

_bQty = _bQty + 1;

} else {

_objectQueue set [_vQty,_hiveResponse];

_vQty = _vQty + 1;

};

};

diag_log ("HIVE: got " + str(_bQty) + " Epoch Objects and " + str(_vQty) + " Vehicles");

};

_totalvehicles = 0;

PVDZE_EvacChopperFields = [];

{

_idKey = _x select 1;

_type = _x select 2;

_ownerID = _x select 3;

_worldspace = _x select 4;

_intentory = _x select 5;

_hitPoints = _x select 6;

_fuel = _x select 7;

_damage = _x select 8;

_dir = 0;

_pos = [0,0,0];

_wsDone = false;

if (count _worldspace >= 2) then

{

_dir = _worldspace select 0;

if (count (_worldspace select 1) == 3) then {

_pos = _worldspace select 1;

_wsDone = true;

}

};

if (!_wsDone) then {

if (count _worldspace >= 1) then { _dir = _worldspace select 0; };

_pos = [getMarkerPos "center",0,4000,10,0,2000,0] call BIS_fnc_findSafePos;

if (count _pos < 3) then { _pos = [_pos select 0,_pos select 1,0]; };

diag_log ("MOVED OBJ: " + str(_idKey) + " of class " + _type + " to pos: " + str(_pos));

};

_vector = [[0,0,0],[0,0,0]];

_vecExists = false;

_ownerPUID = "0";

if (count _worldspace >= 3) then{

if(count _worldspace == 3) then{

if(typename (_worldspace select 2) == "STRING")then{

_ownerPUID = _worldspace select 2;

}else{

if(typename (_worldspace select 2) == "ARRAY")then{

_vector = _worldspace select 2;

if(count _vector == 2)then{

if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{

_vecExists = true;

};

};

};

};

}else{

//Was not 3 elements, so check if 4 or more

if(count _worldspace == 4) then{

if(typename (_worldspace select 3) == "STRING")then{

_ownerPUID = _worldspace select 3;

}else{

if(typename (_worldspace select 2) == "STRING")then{

_ownerPUID = _worldspace select 2;

};

};

if(typename (_worldspace select 2) == "ARRAY")then{

_vector = _worldspace select 2;

if(count _vector == 2)then{

if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{

_vecExists = true;

};

};

}else{

if(typename (_worldspace select 3) == "ARRAY")then{

_vector = _worldspace select 3;

if(count _vector == 2)then{

if(((count (_vector select 0)) == 3) && ((count (_vector select 1)) == 3))then{

_vecExists = true;

};

};

};

};

}else{

//More than 3 or 4 elements found

//Might add a search for the vector, ownerPUID will equal 0

};

};

};

if (_damage < 1) then {

_object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];

if (typeOf (_object) in DZE_DoorsLocked) then {

_object setVariable ["doorfriends", _intentory, true];

};

_object setVariable ["lastUpdate",time];

_object setVariable ["ObjectID", _idKey, true];

if (typeOf (_object) == "Plastic_Pole_EP1_DZ") then {

_object setVariable ["plotfriends", _intentory, true];

};

_lockable = 0;

if(isNumber (configFile >> "CfgVehicles" >> _type >> "lockable")) then {

_lockable = getNumber(configFile >> "CfgVehicles" >> _type >> "lockable");

};

if (_lockable == 4) then {

_codeCount = (count (toArray _ownerID));

if(_codeCount == 3) then {

_ownerID = format["0%1", _ownerID];

};

if(_codeCount == 2) then {

_ownerID = format["00%1", _ownerID];

};

if(_codeCount == 1) then {

_ownerID = format["000%1", _ownerID];

};

};

if (_lockable == 3) then {

_codeCount = (count (toArray _ownerID));

if(_codeCount == 2) then {

_ownerID = format["0%1", _ownerID];

};

if(_codeCount == 1) then {

_ownerID = format["00%1", _ownerID];

};

};

_object setVariable ["CharacterID", _ownerID, true];

clearWeaponCargoGlobal _object;

clearMagazineCargoGlobal _object;

_object setdir _dir;

if(_vecExists)then{

_object setVectorDirAndUp _vector;

};

_object setposATL _pos;

_object setDamage _damage;

if ((typeOf _object) == "HeliHRescue") then {

PVDZE_EvacChopperFields set [count PVDZE_EvacChopperFields, _object];

};

if ((typeOf _object) in dayz_allowedObjects) then {

_object setVariable["memDir",_dir,true];

if (DZE_GodModeBase) then {

_object addEventHandler ["HandleDamage", {false}];

} else {

_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];

};

_object enableSimulation false;

_object setVariable ["OEMPos", _pos, true];

};

if ((count _intentory > 0) && !(typeOf( _object) == "Plastic_Pole_EP1_DZ") && !(typeOf( _object) in DZE_DoorsLocked)) then {

if (_type in DZE_LockedStorage) then {

_object setVariable ["WeaponCargo", (_intentory select 0),true];

_object setVariable ["MagazineCargo", (_intentory select 1),true];

_object setVariable ["BackpackCargo", (_intentory select 2),true];

} else {

_objWpnTypes = (_intentory select 0) select 0;

_objWpnQty = (_intentory select 0) select 1;

_countr = 0;

{

if(_x in (DZE_REPLACE_WEAPONS select 0)) then {

_x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);

};

_isOK = isClass(configFile >> "CfgWeapons" >> _x);

if (_isOK) then {

_object addWeaponCargoGlobal [_x,(_objWpnQty select _countr)];

};

_countr = _countr + 1;

} count _objWpnTypes;

_objWpnTypes = (_intentory select 1) select 0;

_objWpnQty = (_intentory select 1) select 1;

_countr = 0;

{

if (_x == "BoltSteel") then { _x = "WoodenArrow" };

if (_x == "ItemTent") then { _x = "ItemTentOld" };

_isOK = isClass(configFile >> "CfgMagazines" >> _x);

if (_isOK) then {

_object addMagazineCargoGlobal [_x,(_objWpnQty select _countr)];

};

_countr = _countr + 1;

} count _objWpnTypes;

_objWpnTypes = (_intentory select 2) select 0;

_objWpnQty = (_intentory select 2) select 1;

_countr = 0;

{

_isOK = isClass(configFile >> "CfgVehicles" >> _x);

if (_isOK) then {

_object addBackpackCargoGlobal [_x,(_objWpnQty select _countr)];

};

_countr = _countr + 1;

} count _objWpnTypes;

};

};

if (_object isKindOf "AllVehicles") then {

{

_selection = _x select 0;

_dam = _x select 1;

if (_selection in dayZ_explosiveParts && _dam > 0.8) then {_dam = 0.8};

[_object,_selection,_dam] call object_setFixServer;

} count _hitpoints;

_object setFuel _fuel;

if (!((typeOf _object) in dayz_allowedObjects)) then {

_object call fnc_veh_ResetEH;

if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then {

_object setvehiclelock "locked";

_object setVariable ["R3F_LOG_disabled",true,true];

};

_totalvehicles = _totalvehicles + 1;

serverVehicleCounter set [count serverVehicleCounter,_type];

};

[_object] execVM "\z\addons\dayz_server\compile\Server_DeleteObjInsafezone.sqf";

};

};

PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_object];

};

} count (_BuildingQueue + _objectQueue);

if !(DZE_ConfigTrader) then {

{

_traderData = call compile format["menu_%1;",_x];

if(!isNil "_traderData") then {

{

_traderid = _x select 1;

_retrader = [];

_key = format["CHILD:399:%1:",_traderid];

_data = "HiveEXT" callExtension _key;

_result = call compile format ["%1",_data];

_status = _result select 0;

if (_status == "ObjectStreamStart") then {

_val = _result select 1;

call compile format["ServerTcache_%1 = [];",_traderid];

for "_i" from 1 to _val do {

_data = "HiveEXT" callExtension _key;

_result = call compile format ["%1",_data];

call compile format["ServerTcache_%1 set [count ServerTcache_%1,%2]",_traderid,_result];

_retrader set [count _retrader,_result];

};

};

} forEach (_traderData select 0);

};

} forEach serverTraders;

};

if (_hiveLoaded) then {

_vehLimit = MaxVehicleLimit - _totalvehicles;

if(_vehLimit > 0) then {

diag_log ("HIVE: Spawning # of Vehicles: " + str(_vehLimit));

for "_x" from 1 to _vehLimit do {

[] spawn spawn_vehicles;

};

} else {

diag_log "HIVE: Vehicle Spawn limit reached!";

};

};

diag_log ("HIVE: Spawning # of Debris: " + str(MaxDynamicDebris));

for "_x" from 1 to MaxDynamicDebris do {

[] spawn spawn_roadblocks;

};

diag_log ("HIVE: Spawning # of Ammo Boxes: " + str(MaxAmmoBoxes));

for "_x" from 1 to MaxAmmoBoxes do {

[] spawn spawn_ammosupply;

};

diag_log ("HIVE: Spawning # of Veins: " + str(MaxMineVeins));

for "_x" from 1 to MaxMineVeins do {

[] spawn spawn_mineveins;

};

if(isnil "dayz_MapArea") then {

dayz_MapArea = 10000;

};

if(isnil "HeliCrashArea") then {

HeliCrashArea = dayz_MapArea / 2;

};

if(isnil "OldHeliCrash") then {

OldHeliCrash = false;

};

if(OldHeliCrash) then {

_nul = [3, 4, (50 * 60), (15 * 60), 0.75, 'center', HeliCrashArea, true, false] spawn server_spawnCrashSite;

};

if (isDedicated) then {

_id = [] spawn server_spawnEvents;

[] spawn {

private ["_id"];

sleep 200;

waitUntil {!isNil "server_spawnCleanAnimals"};

_id = [] execFSM "\z\addons\dayz_server\system\server_cleanup.fsm";

};

_debugMarkerPosition = getMarkerPos "respawn_west";

_debugMarkerPosition = [(_debugMarkerPosition select 0),(_debugMarkerPosition select 1),1];

_vehicle_0 = createVehicle ["DebugBox_DZ", _debugMarkerPosition, [], 0, "CAN_COLLIDE"];

_vehicle_0 setPos _debugMarkerPosition;

_vehicle_0 setVariable ["ObjectID","1",true];

if(isnil "spawnMarkerCount") then {

spawnMarkerCount = 10;

};

actualSpawnMarkerCount = 0;

for "_i" from 0 to spawnMarkerCount do {

if (!([(getMarkerPos format["spawn%1", _i]), [0,0,0]] call BIS_fnc_areEqual)) then {

actualSpawnMarkerCount = actualSpawnMarkerCount + 1;

} else {

_i = spawnMarkerCount + 99;

};

};

diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount];

endLoadingScreen;

};

//JAEM

if (isServer && (isNil "EvacServerPreload")) then {

publicVariable "PVDZE_EvacChopperFields";

ON_fnc_evacChopperFieldsUpdate = {

private ["_action","_targetField"];

_action = _this select 0;

_targetField = _this select 1;

if (_action == "add") then {

PVDZE_EvacChopperFields = PVDZE_EvacChopperFields + [_targetField];

};

if (_action == "rem") then {

PVDZE_EvacChopperFields = PVDZE_EvacChopperFields - [_targetField];

};

publicVariable "PVDZE_EvacChopperFields";

};

"PVDZE_EvacChopperFieldsUpdate" addPublicVariableEventHandler {(_this select 1) spawn ON_fnc_evacChopperFieldsUpdate};

EvacServerPreload = true;

};

[] call compile preprocessFileLineNumbers "\z\addons\dayz_server\DZAI\init\dzai_initserver.sqf";

[] ExecVM "\z\addons\dayz_server\EMS\DZMSInit.sqf";

ExecVM "\z\addons\dayz_server\WAI\init.sqf";

allowConnection = true;

sm_done = true;

publicVariable "sm_done";

};

 

My fn_self file:

scriptName "Functions\misc\fn_selfActions.sqf";

private ["_isWreckBuilding","_temp_keys","_magazinesPlayer","_isPZombie","_vehicle","_inVehicle","_hasFuelE","_hasRawMeat","_hasKnife","_hasToolbox","_onLadder","_nearLight","_canPickLight","_canDo","_text","_isHarvested","_isVehicle","_isVehicletype","_isMan","_traderType","_ownerID","_isAnimal","_isDog","_isZombie","_isDestructable","_isTent","_isFuel","_isAlive","_Unlock","_lock","_buy","_dogHandle","_lieDown","_warn","_hastinitem","_allowedDistance","_menu","_menu1","_humanity_logic","_low_high","_cancel","_metals_trader","_traderMenu","_isWreck","_isRemovable","_isDisallowRepair","_rawmeat","_humanity","_speed","_dog","_hasbottleitem","_isAir","_isShip","_playersNear","_findNearestGens","_findNearestGen","_IsNearRunningGen","_cursorTarget","_isnewstorage","_itemsPlayer","_ownerKeyId","_typeOfCursorTarget","_hasKey","_oldOwner","_combi","_key_colors","_player_deleteBuild","_player_flipveh","_player_lockUnlock_crtl","_player_butcher","_player_studybody","_player_cook","_player_boil","_hasFuelBarrelE","_hasHotwireKit","_player_SurrenderedGear","_isSurrendered","_isModular","_isModularDoor","_ownerKeyName","_temp_keys_names","_hasAttached","_allowTow","_liftHeli","_found","_posL","_posC","_height","_liftHelis","_attached"];

if (DZE_ActionInProgress) exitWith {};

_vehicle = vehicle player;

_isPZombie = player isKindOf "PZombie_VB";

_inVehicle = (_vehicle != player);

_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;

_canDo = (!r_drag_sqf && !r_player_unconscious && !_onLadder);

//--------------------------------------Deploy Bike----------------------------------

//-----------------------------------------Start--------------------------------------

_weapons = [currentWeapon player] + (weapons player) + (magazines player);

_isBike = typeOf cursorTarget in ["MMT_Civ"];

//BIKE DEPLOY

if ("ItemToolbox" in _weapons) then {

hasBikeItem = true;

} else { hasBikeItem = false;};

if((speed player <= 1) && hasBikeItem && _canDo) then {

if (s_player_deploybike < 0) then {

s_player_deploybike = player addaction[("" + ("Montar Bike") +""),"deployables\mtbike\deploy.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploybike;

s_player_deploybike = -1;

};

//PACK BIKE

if((_isBike && "ItemFlashlight" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {

if (s_player_deploybike2 < 0) then {

s_player_deploybike2 = player addaction[("" + ("Desmontar Bike") +""),"deployables\mtbike\pack.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploybike2;

s_player_deploybike2 = -1;

};

//--------------------------------------Deploy Bike----------------------------------

//------------------------------------------End--------------------------------------

//--------------------------------------Deploy Moped----------------------------------

//------------------------------------------Start-------------------------------------

_weapons = [currentWeapon player] + (weapons player) + (magazines player);

_isMoped = typeOf cursorTarget in ["TT650_Civ"];

//MOPED DEPLOY

if ("ItemToolbox" in _weapons && "PartGeneric" in _mags && "PartGeneric" in _mags && "PartEngine" in _mags && "PartWheel" in _mags && "PartWheel" in _mags) then {

hasMopedItem = true;

} else { hasMopedItem = false;};

if((speed player <= 1) && hasMopedItem && _canDo) then {

if (s_player_deploymoped < 0) then {

s_player_deploymoped = player addaction[("" + ("Montar Moped") +""),"deployables\moped\deploy.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploymoped;

s_player_deploymoped = -1;

};

//PACK MOPED

if((_isMoped && "itemtoolbox" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {

if (s_player_deploymoped2 < 0) then {

s_player_deploymoped2 = player addaction[("" + ("Desmontar Moped") +""),"deployables\moped\pack.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploymoped2;

s_player_deploymoped2 = -1;

};

//--------------------------------------Deploy Moped-----------------------------------

//-------------------------------------------End---------------------------------------

//--------------------------------------Deploy Mozzie----------------------------------

//------------------------------------------Start--------------------------------------

_weapons = [currentWeapon player] + (weapons player) + (magazines player);

_isMozzie = typeOf cursorTarget in ["TT650_Civ"];

//MOZZIE DEPLOY

if ("ItemToolbox" in _weapons) then {

hasMozzieItem = true;

} else { hasMozzieItem = false;};

if((speed player <= 1) && hasMozzieItem && _canDo) then {

if (s_player_deploymozzie < 0) then {

s_player_deploymozzie = player addaction[("" + ("Montar Moto") +""),"deployables\mozzie\deploy.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploymozzie;

s_player_deploymozzie = -1;

};

//PACK MOZZIE

if((_isMozzie && "ItemFlashlight" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {

if (s_player_deploymozzie2 < 0) then {

s_player_deploymozzie2 = player addaction[("" + ("Desmontar Moto") +""),"deployables\mozzie\pack.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploymozzie2;

s_player_deploymozzie2 = -1;

};

//--------------------------------------Deploy Mozzie-----------------------------------

//--------------------------------------------End---------------------------------------

//--------------------------------------Deploy Little Bird-----------------------------

//---------------------------------------------Start-----------------------------------

_weapons = [currentWeapon player] + (weapons player) + (magazines player);

_isBird = typeOf cursorTarget in ["MH6J_EP1"];

//BIRD DEPLOY

if ("ItemToolbox" in _weapons && "PartGeneric" in _mags && "PartGeneric" in _mags && "PartEngine" in _mags && "PartFueltank" in _mags && "PartVRotor" in _mags && "ItemFuelBarrel" in _mags && "PartGlass" in _mags && "PartGlass" in _mags) then {

hasBirdItem = true;

} else { hasBirdItem = false;};

if((speed player <= 1) && hasBirdItem && _canDo) then {

if (s_player_deploybird < 0) then {

s_player_deploybird = player addaction[("" + ("Deploy Little Bird") +""),"deployables\bird\deploy.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploybird;

s_player_deploybird = -1;

};

//PACK BIRD

if((_isBird && "ItemToolbox" in _weapons && (player distance cursorTarget < 10)) and _canDo) then {

if (s_player_deploybird2 < 0) then {

s_player_deploybird2 = player addaction[("" + ("Re-Pack Little Bird") +""),"deployables\bird\pack.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_deploybird2;

s_player_deploybird2 = -1;

};

//--------------------------------------Deploy Little Bird----------------------------------

//-----------------------------------------------End----------------------------------------​

//----------------------------------------Bank Robbery---------------------------------------------

// Bank Robbery

_bankrobbery = cursorTarget isKindOf "Notebook";

if ((speed player <= 1) && _bankrobbery && (player distance cursorTarget < 5)) then {

if (s_player_bankrob < 0) then {

s_player_bankrob = player addAction ["Rob the bank","rob\robbank.sqf",cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_bankrob;

s_player_bankrob = -1;

};

// Bank Robbery END

// ------------------------------------------------------------------------Krixes Self Bloodbag Start------------------------------------------------------------------------

_mags = magazines player;

// Krixes Self Bloodbag

if ("ItemBloodbag" in _mags) then {

hasBagItem = true;

} else { hasBagItem = false;};

if((speed player <= 1) && hasBagItem && _canDo) then {

if (s_player_selfBloodbag < 0) then {

s_player_selfBloodbag = player addaction[("" + ("Self Bloodbag") +""),"Scripts\selfbloodbag\player_selfbloodbag.sqf","",5,false,true,"", ""];

};

} else {

player removeAction s_player_selfBloodbag;

s_player_selfBloodbag = -1;

};

// -------------------------------------------------------------------------Krixes Self Bloodbag End--------------------------------------------------------------------------

/*

_currentSkin = typeOf(player);

camoNetB_East = nearestObject [player, "Land_CamoNetB_EAST"];

camoNetVar_East = nearestObject [player, "Land_CamoNetVar_EAST"];

camoNet_East = nearestObject [player, "Land_CamoNet_EAST"];

camoNetB_Nato = nearestObject [player, "Land_CamoNetB_NATO"];

camoNetVar_Nato = nearestObject [player, "Land_CamoNetVar_NATO"];

camoNet_Nato = nearestObject [player, "Land_CamoNet_NATO"];

_mags = magazines player;

if ("ItemTankTrap" in _mags || "ItemSandbag" in _mags || "ItemWire" in _mags || "PartWoodPile" in _mags || "PartGeneric" in _mags || "PartWoodLumber" in _mags || "PartWoodPlywood" in _mags || "ItemSandbagLarge" in _mags || "sandbag_nest_kit" in _mags || "ItemPole" in _mags || "ItemCorrugated" in _mags || "storage_shed_kit" in _mags || "desert_net_kit" in _mags || "forest_net_kit" in _mags || "wooden_shed_kit" in _mags || "ItemBurlap" in _mags || "PartGlass" in _mags) then {

hasBuildItem = true;

} else { hasBuildItem = false;};

if((speed player <= 1) && hasBuildItem && _canDo) then {

if (s_player_recipeMenu < 0) then {

s_player_recipeMenu = player addaction [("" + ("Build recipe") +""),"buildRecipeBook\build_recipe_dialog.sqf","",5,false,true,"",""];

};

} else {

player removeAction s_player_recipeMenu;

s_player_recipeMenu = -1;

};

if (_currentSkin != globalSkin) then {

globalSkin = _currentSkin;

player removeEventHandler ["AnimChanged", 0];

ehWall = player addEventHandler ["AnimChanged", { player call antiWall; } ];

};

if((isNull cursorTarget) && _hasToolbox && _canDo && !remProc && !procBuild &&

(camoNetB_East distance player < 10 or

camoNetVar_East distance player < 10 or

camoNet_East distance player < 10 or

camoNetB_Nato distance player < 10 or

camoNetVar_Nato distance player < 10 or

camoNet_Nato distance player < 10)) then {

if (s_player_deleteCamoNet < 0) then {

s_player_deleteCamoNet = player addaction [("" + ("Delete network") +""),"dayz_code\actions\player_remove.sqf","",1,true,true,"",""];

s_player_netCodeObject = player addaction [("" + ("Enter the code to remove the network") +""),"dayz_code\external\keypad\fnc_keyPad\enterCode.sqf","",5,false,true,"",""];

};

} else {

player removeAction s_player_deleteCamoNet;

s_player_deleteCamoNet = -1;

player removeAction s_player_netCodeObject;

s_player_netCodeObject = -1;

};

if(_canDo && removeObject && !procBuild && !remProc &&

(camoNetB_East distance player < 10 or

camoNetVar_East distance player < 10 or

camoNet_East distance player < 10 or

camoNetB_Nato distance player < 10 or

camoNetVar_Nato distance player < 10 or

camoNet_Nato distance player < 10)) then {

if (s_player_codeRemoveNet < 0) then {

s_player_codeRemoveNet = player addaction [("" + ("Only the database owner can remove a network") +""),"dayz_code\actions\player_remove.sqf","",5,false,true,"",""];

};

} else {

player removeAction s_player_codeRemoveNet;

s_player_codeRemoveNet = -1;

};

_nearLight = nearestObject [player,"LitObject"];

_canPickLight = false;

if (!isNull _nearLight) then {

if (_nearLight distance player < 4) then {

_canPickLight = isNull (_nearLight getVariable ["owner",objNull]);

};

};

*/

// ====================== IT's SERVER MENU SCRIPT ======================

// The color for the menu is customizable. Default: f2cb0b. If you want to change it, use HTML color codes. Google it.

// IMPORTANT: If you have an antihack running like infiSTAR.de's their AH then add these names to the allowed actions list:

// s_player_servermenu,s_player_servermenu1,s_player_servermenu2,s_player_servermenu3,s_player_servermenu4,s_player_servermenuCancel,

// IT07's Server Menu script

if((speed player <= 1) && _canDo) then {

if (s_player_servermenu < 0) then {

s_player_servermenu = player addAction [("" + ("REGRAS/INFO") +""),"functions\server_menu.sqf","",-1,false,false,"", ""];

};

} else {

player removeAction s_player_servermenu;

s_player_servermenu = -1;

player removeAction s_player_servermenu1;

player removeAction s_player_servermenu2;

player removeAction s_player_servermenu3;

player removeAction s_player_servermenu4;

player removeAction s_player_servermenuCancel;

};

// ====================== SERVER MENU SCRIPT END ======================

_nearLight = nearestObject [player,"LitObject"];

_canPickLight = false;

if (!isNull _nearLight) then {

if (_nearLight distance player < 4) then {

_canPickLight = isNull (_nearLight getVariable ["owner",objNull]);

};

};

if (_canPickLight && !dayz_hasLight && !_isPZombie) then {

if (s_player_grabflare < 0) then {

_text = getText (configFile >> "CfgAmmo" >> (typeOf _nearLight) >> "displayName");

s_player_grabflare = player addAction [format[localize "str_actions_medical_15",_text], "\z\addons\dayz_code\actions\flare_pickup.sqf",_nearLight, 1, false, true, "", ""];

s_player_removeflare = player addAction [format[localize "str_actions_medical_17",_text], "\z\addons\dayz_code\actions\flare_remove.sqf",_nearLight, 1, false, true, "", ""];

};

} else {

player removeAction s_player_grabflare;

player removeAction s_player_removeflare;

s_player_grabflare = -1;

s_player_removeflare = -1;

};

if (DZE_HeliLift) then {

_hasAttached = _vehicle getVariable["hasAttached",false];

if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) < 30) && (speed _vehicle < 5) && (typeName _hasAttached == "OBJECT")) then {

if (s_player_heli_detach < 0) then {

dayz_myLiftVehicle = _vehicle;

s_player_heli_detach = dayz_myLiftVehicle addAction ["Detach Vehicle","\z\addons\dayz_code\actions\player_heliDetach.sqf",[dayz_myLiftVehicle,_hasAttached],2,false,true,"",""];

};

} else {

dayz_myLiftVehicle removeAction s_player_heli_detach;

s_player_heli_detach = -1;

};

};

if(DZE_HaloJump) then {

if(_inVehicle && (_vehicle isKindOf "Air") && ((([_vehicle] call FNC_getPos) select 2) > 400)) then {

if (s_halo_action < 0) then {

DZE_myHaloVehicle = _vehicle;

s_halo_action = DZE_myHaloVehicle addAction [localize "STR_EPOCH_ACTIONS_HALO","\z\addons\dayz_code\actions\halo_jump.sqf",[],2,false,true,"",""];

};

} else {

DZE_myHaloVehicle removeAction s_halo_action;

s_halo_action = -1;

};

};

if (!DZE_ForceNameTagsOff) then {

if (s_player_showname < 0 && !_isPZombie) then {

if (DZE_ForceNameTags) then {

s_player_showname = 1;

player setVariable["DZE_display_name",true,true];

} else {

s_player_showname = player addAction [localize "STR_EPOCH_ACTIONS_NAMEYES", "\z\addons\dayz_code\actions\display_name.sqf",true, 0, true, false, "",""];

s_player_showname1 = player addAction [localize "STR_EPOCH_ACTIONS_NAMENO", "\z\addons\dayz_code\actions\display_name.sqf",false, 0, true, false, "",""];

};

};

};

if(_isPZombie) then {

if (s_player_callzombies < 0) then {

s_player_callzombies = player addAction [localize "STR_EPOCH_ACTIONS_RAISEHORDE", "\z\addons\dayz_code\actions\call_zombies.sqf",player, 5, true, false, "",""];

};

if (DZE_PZATTACK) then {

call pz_attack;

DZE_PZATTACK = false;

};

if (s_player_pzombiesvision < 0) then {

s_player_pzombiesvision = player addAction [localize "STR_EPOCH_ACTIONS_NIGHTVIS", "\z\addons\dayz_code\actions\pzombie\pz_vision.sqf", [], 4, false, true, "nightVision", "_this == _target"];

};

if (!isNull cursorTarget && (player distance cursorTarget < 3)) then {

_isAnimal = cursorTarget isKindOf "Animal";

_isZombie = cursorTarget isKindOf "zZombie_base";

_isHarvested = cursorTarget getVariable["meatHarvested",false];

_isMan = cursorTarget isKindOf "Man";

if (!alive cursorTarget && (_isAnimal || _isMan) && !_isZombie && !_isHarvested) then {

if (s_player_pzombiesfeed < 0) then {

s_player_pzombiesfeed = player addAction [localize "STR_EPOCH_ACTIONS_FEED", "\z\addons\dayz_code\actions\pzombie\pz_feed.sqf",cursorTarget, 3, true, false, "",""];

};

} else {

player removeAction s_player_pzombiesfeed;

s_player_pzombiesfeed = -1;

};

} else {

player removeAction s_player_pzombiesfeed;

s_player_pzombiesfeed = -1;

};

};

_allowedDistance = 4;

_isAir = cursorTarget isKindOf "Air";

_isShip = cursorTarget isKindOf "Ship";

if(_isAir || _isShip) then {

_allowedDistance = 8;

};

if (!isNull cursorTarget && !_inVehicle && !_isPZombie && (player distance cursorTarget < _allowedDistance) && _canDo) then { //Has some kind of target

_cursorTarget = cursorTarget;

_typeOfCursorTarget = typeOf _cursorTarget;

_isVehicle = _cursorTarget isKindOf "AllVehicles";

_isVehicletype = _typeOfCursorTarget in ["ATV_US_EP1","ATV_CZ_EP1"];

_isnewstorage = _typeOfCursorTarget in DZE_isNewStorage;

_magazinesPlayer = magazines player;

_hasbottleitem = "ItemWaterbottle" in _magazinesPlayer;

_hastinitem = false;

{

if (_x in _magazinesPlayer) then {

_hastinitem = true;

};

} count boil_tin_cans;

_hasFuelE = "ItemJerrycanEmpty" in _magazinesPlayer;

_hasFuelBarrelE = "ItemFuelBarrelEmpty" in _magazinesPlayer;

_hasHotwireKit = "ItemHotwireKit" in _magazinesPlayer;

_itemsPlayer = items player;

_temp_keys = [];

_temp_keys_names = [];

_key_colors = ["ItemKeyYellow","ItemKeyBlue","ItemKeyRed","ItemKeyGreen","ItemKeyBlack"];

{

if (configName(inheritsFrom(configFile >> "CfgWeapons" >> _x)) in _key_colors) then {

_ownerKeyId = getNumber(configFile >> "CfgWeapons" >> _x >> "keyid");

_ownerKeyName = getText(configFile >> "CfgWeapons" >> _x >> "displayName");

_temp_keys_names set [_ownerKeyId,_ownerKeyName];

_temp_keys set [count _temp_keys,str(_ownerKeyId)];

};

} count _itemsPlayer;

_hasKnife = "ItemKnife" in _itemsPlayer;

_hasToolbox = "ItemToolbox" in _itemsPlayer;

_isMan = _cursorTarget isKindOf "Man";

_traderType = _typeOfCursorTarget;

_ownerID = _cursorTarget getVariable ["CharacterID","0"];

_isAnimal = _cursorTarget isKindOf "Animal";

_isDog = (_cursorTarget isKindOf "DZ_Pastor" || _cursorTarget isKindOf "DZ_Fin");

_isZombie = _cursorTarget isKindOf "zZombie_base";

_isDestructable = _cursorTarget isKindOf "BuiltItems";

_isWreck = _typeOfCursorTarget in DZE_isWreck;

_isWreckBuilding = _typeOfCursorTarget in DZE_isWreckBuilding;

_isModular = _cursorTarget isKindOf "ModularItems";

_isModularDoor = _typeOfCursorTarget in ["Land_DZE_WoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_GarageWoodDoor","CinderWallDoor_DZ","CinderWallDoorSmall_DZ"];

_isRemovable = _typeOfCursorTarget in DZE_isRemovable;

_isDisallowRepair = _typeOfCursorTarget in ["M240Nest_DZ"];

_isTent = _cursorTarget isKindOf "TentStorage";

_isAlive = alive _cursorTarget;

_text = getText (configFile >> "CfgVehicles" >> _typeOfCursorTarget >> "displayName");

_rawmeat = meatraw;

_hasRawMeat = false;

{

if (_x in _magazinesPlayer) then {

_hasRawMeat = true;

};

} count _rawmeat;

_isFuel = false;

if (_hasFuelE || _hasFuelBarrelE) then {

{

if(_cursorTarget isKindOf _x) exitWith {_isFuel = true;};

} count dayz_fuelsources;

};

_player_flipveh = false;

_player_deleteBuild = false;

_player_lockUnlock_crtl = false;

if (_canDo && (speed player <= 1) && (_cursorTarget isKindOf "Plastic_Pole_EP1_DZ")) then {

if (s_player_plotManagement < 0) then {

_adminList = ["76561197961674259","76561198083332784","76561198116439388"]; // Add admins here if you admins to able to manage all plotpoles

_owner = _cursorTarget getVariable ["ownerPUID","0"];

_friends = _cursorTarget getVariable ["plotfriends", []];

_fuid = [];

{

_friendUID = _x select 0;

_fuid = _fuid + [_friendUID];

} forEach _friends;

_allowed = [_owner];

_allowed = [_owner] + _adminList + _fuid;

if((getPlayerUID player) in _allowed)then{

s_player_plotManagement = player addAction ["Manage Plot", "plotManagement\initPlotManagement.sqf", [], 5, false];

};

};

if (s_player_maintain_area < 0) then {

s_player_maintain_area = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_MAINTAREA"], "Scripts\Gold_Coin_system\Maintain\maintain_area.sqf", "maintain", 5, false];

s_player_maintain_area_preview = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_MAINTPREV"], "Scripts\Gold_Coin_system\Maintain\maintain_area.sqf", "preview", 5, false];

};

} else {

player removeAction s_player_plotManagement;

s_player_plotManagement = -1;

player removeAction s_player_maintain_area;

s_player_maintain_area = -1;

player removeAction s_player_maintain_area_preview;

s_player_maintain_area_preview = -1;

};

if(_isAlive) then {

if(_isDestructable || _isWreck || _isRemovable || _isWreckBuilding) then {

if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {

_player_deleteBuild = true;

};

};

///Allow owners to delete modulars

if(_isModular) then {

if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {

_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];

_IsNearPlot = count (_findNearestPoles);

_fuid = [];

_allowed = [];

if(_IsNearPlot > 0)then{

_thePlot = _findNearestPoles select 0;

_owner = _thePlot getVariable ["ownerPUID","010"];

_friends = _thePlot getVariable ["plotfriends", []];

{

_friendUID = _x select 0;

_fuid = _fuid + [_friendUID];

} forEach _friends;

_allowed = [_owner];

_allowed = [_owner] + _fuid;

if ( _playerUID in _allowed && _ownerID in _allowed ) then { // // If u want that the object also belongs to someone on the plotpole.

_player_deleteBuild = true;

};

}else{

if(_ownerID == _playerUID)then{

_player_deleteBuild = true;

};

};

};

};

//Allow owners to delete modular doors without locks

if(_isModularDoor) then {

if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {

_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];

_IsNearPlot = count (_findNearestPoles);

_fuid = [];

_allowed = [];

if(_IsNearPlot > 0)then{

_thePlot = _findNearestPoles select 0;

_owner = _thePlot getVariable ["ownerPUID","010"];

_friends = _thePlot getVariable ["plotfriends", []];

{

_friendUID = _x select 0;

_fuid = _fuid + [_friendUID];

} forEach _friends;

_allowed = [_owner];

_allowed = [_owner] + _fuid;

if ( _playerUID in _allowed && _ownerID in _allowed) then { // // If u want that the object also belongs to someone on the plotpole.

_player_deleteBuild = true;

};

}else{

if(_ownerID == _playerUID)then{

_player_deleteBuild = true;

};

};

};

};

if(_isVehicle) then {

if (!(canmove _cursorTarget) && (player distance _cursorTarget >= 2) && (count (crew _cursorTarget))== 0 && ((vectorUp _cursorTarget) select 2) < 0.5) then {

_playersNear = {isPlayer _x} count (player nearEntities ["CAManBase", 6]);

if(_isVehicletype || (_playersNear >= 2)) then {

_player_flipveh = true;

};

};

if(!_isMan && _ownerID != "0" && !(_cursorTarget isKindOf "Bicycle")) then {

_player_lockUnlock_crtl = true;

};

};

};

if(_player_deleteBuild) then {

if (s_player_deleteBuild < 0) then {

s_player_deleteBuild = player addAction [format[localize "str_actions_delete",_text], "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, true, true, "", ""];

};

} else {

player removeAction s_player_deleteBuild;

s_player_deleteBuild = -1;

};

if (DZE_HeliLift) then {

_liftHeli = objNull;

_found = false;

_allowTow = false;

if ((count (crew _cursorTarget)) == 0) then {

{

if(!_allowTow) then {

_allowTow = _cursorTarget isKindOf _x;

};

} count DZE_HeliAllowToTow;

};

if (_allowTow) then {

_liftHelis = nearestObjects [player, DZE_HeliAllowTowFrom, 15];

{

if(!_found) then {

_posL = [_x] call FNC_getPos;

_posC = [_cursorTarget] call FNC_getPos;

_height = (_posL select 2) - (_posC select 2);

_hasAttached = _x getVariable["hasAttached",false];

if(_height < 15 && _height > 5 && (typeName _hasAttached != "OBJECT")) then {

if(((abs((_posL select 0) - (_posC select 0))) < 10) && ((abs((_posL select 1) - (_posC select 1))) < 10)) then {

_liftHeli = _x;

_found = true;

};

};

};

} count _liftHelis;

};

_attached = _cursorTarget getVariable["attached",false];

if(_found && _allowTow && _canDo && !locked _cursorTarget && !_isPZombie && (typeName _attached != "OBJECT")) then {

if (s_player_heli_lift < 0) then {

s_player_heli_lift = player addAction ["Attach to Heli", "\z\addons\dayz_code\actions\player_heliLift.sqf",[_liftHeli,_cursorTarget], -10, false, true, "",""];

};

} else {

player removeAction s_player_heli_lift;

s_player_heli_lift = -1;

};

};

if(_player_lockUnlock_crtl) then {

if (s_player_lockUnlock_crtl < 0) then {

_hasKey = _ownerID in _temp_keys;

_oldOwner = (_ownerID == dayz_playerUID);

if(locked _cursorTarget) then {

if(_hasKey || _oldOwner) then {

_Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\unlock_veh.sqf",[_cursorTarget,(_temp_keys_names select (parseNumber _ownerID))], 2, true, true, "", ""];

s_player_lockunlock set [count s_player_lockunlock,_Unlock];

s_player_lockUnlock_crtl = 1;

} else {

if(_hasHotwireKit) then {

_Unlock = player addAction [format[localize "STR_EPOCH_ACTIONS_HOTWIRE",_text], "\z\addons\dayz_code\actions\hotwire_veh.sqf",_cursorTarget, 2, true, true, "", ""];

} else {

_Unlock = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_VEHLOCKED"], "",_cursorTarget, 2, true, true, "", ""];

};

s_player_lockunlock set [count s_player_lockunlock,_Unlock];

s_player_lockUnlock_crtl = 1;

};

} else {

if(_hasKey || _oldOwner) then {

_lock = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\lock_veh.sqf",_cursorTarget, 1, true, true, "", ""];

s_player_lockunlock set [count s_player_lockunlock,_lock];

s_player_lockUnlock_crtl = 1;

};

};

};

} else {

{player removeAction _x} count s_player_lockunlock;s_player_lockunlock = [];

s_player_lockUnlock_crtl = -1;

};

if(DZE_AllowForceSave) then {

if((_isVehicle || _isTent) && !_isMan) then {

if (s_player_forceSave < 0) then {

s_player_forceSave = player addAction [format[localize "str_actions_save",_text], "\z\addons\dayz_code\actions\forcesave.sqf",_cursorTarget, 1, true, true, "", ""];

};

} else {

player removeAction s_player_forceSave;

s_player_forceSave = -1;

};

};

if(DZE_AllowCargoCheck) then {

if((_isVehicle || _isTent || _isnewstorage) && _isAlive && !_isMan && !locked _cursorTarget) then {

if (s_player_checkGear < 0) then {

s_player_checkGear = player addAction [localize "STR_EPOCH_PLAYER_CARGO", "\z\addons\dayz_code\actions\cargocheck.sqf",_cursorTarget, 1, true, true, "", ""];

};

} else {

player removeAction s_player_checkGear;

s_player_checkGear = -1;

};

};

if(_player_flipveh) then {

if (s_player_flipveh < 0) then {

s_player_flipveh = player addAction [format[localize "str_actions_flipveh",_text], "\z\addons\dayz_code\actions\player_flipvehicle.sqf",_cursorTarget, 1, true, true, "", ""];

};

} else {

player removeAction s_player_flipveh;

s_player_flipveh = -1;

};

if((_hasFuelE || _hasFuelBarrelE) && _isFuel) then {

if (s_player_fillfuel < 0) then {

s_player_fillfuel = player addAction [localize "str_actions_self_10", "\z\addons\dayz_code\actions\jerry_fill.sqf",[], 1, false, true, "", ""];

};

} else {

player removeAction s_player_fillfuel;

s_player_fillfuel = -1;

};

_player_butcher = false;

_player_studybody = false;

_player_SurrenderedGear = false;

if (!_isAlive) then {

if((_isAnimal || _isZombie) && _hasKnife) then {

_isHarvested = _cursorTarget getVariable["meatHarvested",false];

if (!_isHarvested) then {

_player_butcher = true;

};

};

if (_isMan && !_isZombie && !_isAnimal) then {

_player_studybody = true;

}

} else {

if(_isMan && !_isZombie && !_isAnimal) then {

_isSurrendered = _cursorTarget getVariable ["DZE_Surrendered",false];

if (_isSurrendered) then {

_player_SurrenderedGear = true;

};

};

};

if (_player_butcher) then {

if (s_player_butcher < 0) then {

if(_isZombie) then {

s_player_butcher = player addAction [localize "STR_EPOCH_ACTIONS_GUTZOM", "\z\addons\dayz_code\actions\gather_zparts.sqf",_cursorTarget, 0, true, true, "", ""];

} else {

s_player_butcher = player addAction [localize "str_actions_self_04", "\z\addons\dayz_code\actions\gather_meat.sqf",_cursorTarget, 3, true, true, "", ""];

};

};

} else {

player removeAction s_player_butcher;

s_player_butcher = -1;

};

if (_player_studybody) then {

if (s_player_studybody < 0) then {

s_player_studybody = player addAction [(""+("Check Wallet") + ""), "Scripts\Gold_Coin_system\Check_Wallet\check_wallet.sqf",_cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_studybody;

s_player_studybody = -1;

};

_player_cook = false;

_player_boil = false;

if (inflamed _cursorTarget) then {

if (_hasRawMeat) then {

_player_cook = true;

};

if (_hasbottleitem && _hastinitem) then {

_player_boil = true;

};

};

if (_player_SurrenderedGear) then {

if (s_player_SurrenderedGear < 0) then {

s_player_SurrenderedGear = player addAction [localize "STR_EPOCH_ACTIONS_GEAR", "\z\addons\dayz_code\actions\surrender_gear.sqf",_cursorTarget, 1, true, true, "", ""];

};

} else {

player removeAction s_player_SurrenderedGear;

s_player_SurrenderedGear = -1;

};

if (_player_cook) then {

if (s_player_cook < 0) then {

s_player_cook = player addAction [localize "str_actions_self_05", "\z\addons\dayz_code\actions\cook.sqf",_cursorTarget, 3, true, true, "", ""];

};

} else {

player removeAction s_player_cook;

s_player_cook = -1;

};

if (_player_boil) then {

if (s_player_boil < 0) then {

s_player_boil = player addAction [localize "str_actions_boilwater", "\z\addons\dayz_code\actions\boil.sqf",_cursorTarget, 3, true, true, "", ""];

};

} else {

player removeAction s_player_boil;

s_player_boil = -1;

};

if(_cursorTarget == dayz_hasFire) then {

if ((s_player_fireout < 0) && !(inflamed _cursorTarget) && (player distance _cursorTarget < 3)) then {

s_player_fireout = player addAction [localize "str_actions_self_06", "\z\addons\dayz_code\actions\fire_pack.sqf",_cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_fireout;

s_player_fireout = -1;

};

if(_isTent && (player distance _cursorTarget < 3)) then {

if (_ownerID == dayz_characterID) then {

if (s_player_packtent < 0) then {

s_player_packtent = player addAction [localize "str_actions_self_07", "\z\addons\dayz_code\actions\tent_pack.sqf",_cursorTarget, 0, false, true, "",""];

};

} else {

if(("ItemJerrycan" in _magazinesPlayer) && ("ItemMatchbox_DZE" in weapons player)) then {

if (s_player_packtent < 0) then {

s_player_packtent = player addAction [localize "STR_EPOCH_ACTIONS_DESTROYTENT", "\z\addons\dayz_code\actions\remove.sqf",_cursorTarget, 1, true, true, "", ""];

};

};

};

} else {

player removeAction s_player_packtent;

s_player_packtent = -1;

};

if((_typeOfCursorTarget in DZE_LockableStorage) && _ownerID != "0" && (player distance _cursorTarget < 3)) then {

if (s_player_unlockvault < 0) then {

if(_typeOfCursorTarget in DZE_LockedStorage) then {

if(_ownerID == dayz_combination || _ownerID == dayz_playerUID) then {

_combi = player addAction [format[localize "STR_EPOCH_ACTIONS_OPEN",_text], "\z\addons\dayz_code\actions\vault_unlock.sqf",_cursorTarget, 0, false, true, "",""];

s_player_combi set [count s_player_combi,_combi];

} else {

_combi = player addAction [format[localize "STR_EPOCH_ACTIONS_UNLOCK",_text], "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];

s_player_combi set [count s_player_combi,_combi];

};

s_player_unlockvault = 1;

} else {

if(_ownerID != dayz_combination && _ownerID != dayz_playerUID) then {

_combi = player addAction [localize "STR_EPOCH_ACTIONS_RECOMBO", "\z\addons\dayz_code\actions\vault_combination_1.sqf",_cursorTarget, 0, false, true, "",""];

s_player_combi set [count s_player_combi,_combi];

s_player_unlockvault = 1;

};

};

};

} else {

{player removeAction _x} count s_player_combi;s_player_combi = [];

s_player_unlockvault = -1;

};

if(_typeOfCursorTarget in DZE_UnLockedStorage and (player distance _cursorTarget < 3)) then {

if (s_bank_dialog < 0) then {

s_bank_dialog = player addAction ["Online Banking", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

};

} else {

player removeAction s_bank_dialog;

s_bank_dialog = -1;

};

if(_typeOfCursorTarget in Bank_Object and (player distance _cursorTarget < 3)) then {

if (s_bank_dialog2 < 0) then {

s_bank_dialog2 = player addAction ["Bank ATM", "Scripts\Gold_Coin_system\Bank_Dialog\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

};

} else {

player removeAction s_bank_dialog2;

s_bank_dialog2 = -1;

};

if(_typeOfCursorTarget in DZE_UnLockedStorage && _ownerID != "0" && (player distance _cursorTarget < 3)) then {

if (s_player_lockvault < 0) then {

if(_ownerID == dayz_combination || _ownerID == dayz_playerUID) then {

s_player_lockvault = player addAction [format[localize "STR_EPOCH_ACTIONS_LOCK",_text], "\z\addons\dayz_code\actions\vault_lock.sqf",_cursorTarget, 0, false, true, "",""];

};

};

if (s_player_packvault < 0 && (_ownerID == dayz_combination || _ownerID == dayz_playerUID)) then {

s_player_packvault = player addAction [format["%1",(format[localize "STR_EPOCH_ACTIONS_PACK",_text])], "\z\addons\dayz_code\actions\vault_pack.sqf",_cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_packvault;

s_player_packvault = -1;

player removeAction s_player_lockvault;

s_player_lockvault = -1;

};

if(_typeOfCursorTarget == "Info_Board_EP1") then {

if (s_player_information < 0) then {

s_player_information = player addAction [localize "STR_EPOCH_ACTIONS_MURDERS", "\z\addons\dayz_code\actions\list_playerDeaths.sqf",[], 7, false, true, "",""];

};

} else {

player removeAction s_player_information;

s_player_information = -1;

};

if (_isMan and _isAlive and !_isZombie and !_isAnimal and !(_traderType in serverTraders)) then {

if (s_givemoney_dialog < 0) then {

s_givemoney_dialog = player addAction [format["Give Money to %1", (name _cursorTarget)], "Scripts\Gold_Coin_system\Give_Money\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

};

} else {

player removeAction s_givemoney_dialog;

s_givemoney_dialog = -1;

};

if(_typeOfCursorTarget in dayz_fuelpumparray) then {

if (s_player_fuelauto < 0) then {

_findNearestGens = nearestObjects [player, ["Generator_DZ"], 30];

_findNearestGen = [];

{

if (alive _x && (_x getVariable ["GeneratorRunning", false])) then {

_findNearestGen set [(count _findNearestGen),_x];

};

} count _findNearestGens;

_IsNearRunningGen = count (_findNearestGen);

if(_IsNearRunningGen > 0) then {

s_player_fuelauto = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",objNull, 0, false, true, "",""];

} else {

s_player_fuelauto = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""];

};

};

} else {

player removeAction s_player_fuelauto;

s_player_fuelauto = -1;

};

if(_typeOfCursorTarget in DZE_fueltruckarray && alive _cursorTarget) then {

if (s_player_fuelauto2 < 0) then {

if(isEngineOn _cursorTarget) then {

s_player_fuelauto2 = player addAction [localize "STR_EPOCH_ACTIONS_FILLVEH", "\z\addons\dayz_code\actions\fill_nearestVehicle.sqf",_cursorTarget, 0, false, true, "",""];

} else {

s_player_fuelauto2 = player addAction [format["%1",localize "STR_EPOCH_ACTIONS_NEEDPOWER"], "",[], 0, false, true, "",""];

};

};

} else {

player removeAction s_player_fuelauto2;

s_player_fuelauto2 = -1;

};

if ((_cursorTarget isKindOf "ModularItems") || (_cursorTarget isKindOf "Land_DZE_WoodDoor_Base") || (_cursorTarget isKindOf "CinderWallDoor_DZ_Base")) then {

if ((s_player_lastTarget select 0) != _cursorTarget) then {

if (s_player_upgrade_build > 0) then {

player removeAction s_player_upgrade_build;

s_player_upgrade_build = -1;

};

};

if (s_player_upgrade_build < 0) then {

s_player_lastTarget set [0,_cursorTarget];

s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "BuildVectors\action\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""];

};

} else {

player removeAction s_player_upgrade_build;

s_player_upgrade_build = -1;

};

if((_isDestructable || _cursorTarget isKindOf "Land_DZE_WoodDoorLocked_Base" || _cursorTarget isKindOf "CinderWallDoorLocked_DZ_Base") && (DZE_Lock_Door == _ownerID)) then {

if ((s_player_lastTarget select 1) != _cursorTarget) then {

if (s_player_downgrade_build > 0) then {

player removeAction s_player_downgrade_build;

s_player_downgrade_build = -1;

};

};

if (s_player_downgrade_build < 0) then {

s_player_lastTarget set [1,_cursorTarget];

s_player_downgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_REMLOCK",_text], "BuildVectors\action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];

};

} else {

player removeAction s_player_downgrade_build;

s_player_downgrade_build = -1;

};

if((_cursorTarget isKindOf "ModularItems" || _cursorTarget isKindOf "DZE_Housebase" || _typeOfCursorTarget == "LightPole_DZ") && (damage _cursorTarget >= DZE_DamageBeforeMaint)) then {

if ((s_player_lastTarget select 2) != _cursorTarget) then {

if (s_player_maint_build > 0) then {

player removeAction s_player_maint_build;

s_player_maint_build = -1;

};

};

if (s_player_maint_build < 0) then {

s_player_lastTarget set [2,_cursorTarget];

s_player_maint_build = player addAction [format[localize "STR_EPOCH_ACTIONS_MAINTAIN",_text], "\z\addons\dayz_code\actions\player_buildingMaint.sqf",_cursorTarget, -2, false, true, "",""];

};

} else {

player removeAction s_player_maint_build;

s_player_maint_build = -1;

};

if(_cursorTarget isKindOf "Generator_DZ") then {

if (s_player_fillgen < 0) then {

if((_cursorTarget getVariable ["GeneratorRunning", false])) then {

s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR1", "\z\addons\dayz_code\actions\stopGenerator.sqf",_cursorTarget, 0, false, true, "",""];

} else {

if((_cursorTarget getVariable ["GeneratorFilled", false])) then {

s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR2", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""];

} else {

if("ItemJerrycan" in _magazinesPlayer) then {

s_player_fillgen = player addAction [localize "STR_EPOCH_ACTIONS_GENERATOR3", "\z\addons\dayz_code\actions\fill_startGenerator.sqf",_cursorTarget, 0, false, true, "",""];

};

};

};

};

} else {

player removeAction s_player_fillgen;

s_player_fillgen = -1;

};

if(_isTent && _ownerID == dayz_characterID) then {

if ((s_player_sleep < 0) && (player distance _cursorTarget < 3)) then {

s_player_sleep = player addAction [localize "str_actions_self_sleep", "\z\addons\dayz_code\actions\player_sleep.sqf",_cursorTarget, 0, false, true, "",""];

};

} else {

player removeAction s_player_sleep;

s_player_sleep = -1;

};

_clothesTaken = cursorTarget getVariable["clothesTaken",false];

// Take clothes by Zabn @ BalotaBuddies.net

if (_isMan and !_isAlive and !_isZombie and !_isAnimal and !_clothesTaken) then {

if (s_player_clothes < 0) then {

s_player_clothes = player addAction [("")+("Take Clothes")+(""), "scripts\player_takeClothes.sqf",cursorTarget, -10, false, true, "",""];

};

} else {

player removeAction s_player_clothes;

s_player_clothes = -1;

};

if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {

if (s_player_repair_crtl < 0) then {

dayz_myCursorTarget = _cursorTarget;

_menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];

_menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];

s_player_repairActions set [count s_player_repairActions,_menu];

s_player_repairActions set [count s_player_repairActions,_menu1];

s_player_repair_crtl = 1;

} else {

{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];

s_player_repair_crtl = -1;

};

};

if (_isMan && !_isPZombie && _traderType in serverTraders) then {

if (s_player_parts_crtl < 0) then {

_humanity = player getVariable ["humanity",0];

_traderMenu = call compile format["menu_%1;",_traderType];

_low_high = "low";

_humanity_logic = false;

if((_traderMenu select 2) == "friendly") then {

_humanity_logic = (_humanity < -5000);

};

if((_traderMenu select 2) == "hostile") then {

_low_high = "high";

_humanity_logic = (_humanity > -5000);

};

if((_traderMenu select 2) == "hero") then {

_humanity_logic = (_humanity < 5000);

};

if(_humanity_logic) then {

_cancel = player addAction [format[localize "STR_EPOCH_ACTIONS_HUMANITY",_low_high], "\z\addons\dayz_code\actions\trade_cancel.sqf",["na"], 0, true, false, "",""];

s_player_parts set [count s_player_parts,_cancel];

} else {

{

_buy = player addAction [format["Trade %1 %2 for %3 %4",(_x select 3),(_x select 5),(_x select 2),(_x select 6)], "\z\addons\dayz_code\actions\trade_items_wo_db.sqf",[(_x select 0),(_x select 1),(_x select 2),(_x select 3),(_x select 4),(_x select 5),(_x select 6)], (_x select 7), true, true, "",""];

s_player_parts set [count s_player_parts,_buy];

} count (_traderMenu select 1);

_buyV = player addAction ["Advanced Trading", "zupa\advancedTrading\init.sqf",(_traderMenu select 0), 999, true, false, "",""];

s_player_parts set [count s_player_parts,_buyV];

// Database menu

_buy = player addAction [localize "STR_EPOCH_PLAYER_289", "\z\addons\dayz_code\actions\show_dialog.sqf",(_traderMenu select 0), 999, true, false, "",""];

s_player_parts set [count s_player_parts,_buy];

};

s_player_parts_crtl = 1;

};

} else {

{player removeAction _x} count s_player_parts;s_player_parts = [];

s_player_parts_crtl = -1;

};

if(dayz_tameDogs) then {

if (_isDog && _isAlive && (_hasRawMeat) && _ownerID == "0" && player getVariable ["dogID", 0] == 0) then {

if (s_player_tamedog < 0) then {

s_player_tamedog = player addAction [localize "str_actions_tamedog", "\z\addons\dayz_code\actions\tame_dog.sqf", _cursorTarget, 1, false, true, "", ""];

};

} else {

player removeAction s_player_tamedog;

s_player_tamedog = -1;

};

if (_isDog && _ownerID == dayz_characterID && _isAlive) then {

_dogHandle = player getVariable ["dogID", 0];

if (s_player_feeddog < 0 && _hasRawMeat) then {

s_player_feeddog = player addAction [localize "str_actions_feeddog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,0], 0, false, true,"",""];

};

if (s_player_waterdog < 0 && "ItemWaterbottle" in _magazinesPlayer) then {

s_player_waterdog = player addAction [localize "str_actions_waterdog","\z\addons\dayz_code\actions\dog\feed.sqf",[_dogHandle,1], 0, false, true,"",""];

};

if (s_player_staydog < 0) then {

_lieDown = _dogHandle getFSMVariable "_actionLieDown";

if (_lieDown) then { _text = "str_actions_liedog"; } else { _text = "str_actions_sitdog"; };

s_player_staydog = player addAction [localize _text,"\z\addons\dayz_code\actions\dog\stay.sqf", _dogHandle, 5, false, true,"",""];

};

if (s_player_trackdog < 0) then {

s_player_trackdog = player addAction [localize "str_actions_trackdog","\z\addons\dayz_code\actions\dog\track.sqf", _dogHandle, 4, false, true,"",""];

};

if (s_player_barkdog < 0) then {

s_player_barkdog = player addAction [localize "str_actions_barkdog","\z\addons\dayz_code\actions\dog\speak.sqf", _cursorTarget, 3, false, true,"",""];

};

if (s_player_warndog < 0) then {

_warn = _dogHandle getFSMVariable "_watchDog";

if (_warn) then { _text = (localize "str_epoch_player_247"); _warn = false; } else { _text = (localize "str_epoch_player_248"); _warn = true; };

s_player_warndog = player addAction [format[localize "str_actions_warndog",_text],"\z\addons\dayz_code\actions\dog\warn.sqf",[_dogHandle, _warn], 2, false, true,"",""];

};

if (s_player_followdog < 0) then {

s_player_followdog = player addAction [localize "str_actions_followdog","\z\addons\dayz_code\actions\dog\follow.sqf",[_dogHandle,true], 6, false, true,"",""];

};

} else {

player removeAction s_player_feeddog;

s_player_feeddog = -1;

player removeAction s_player_waterdog;

s_player_waterdog = -1;

player removeAction s_player_staydog;

s_player_staydog = -1;

player removeAction s_player_trackdog;

s_player_trackdog = -1;

player removeAction s_player_barkdog;

s_player_barkdog = -1;

player removeAction s_player_warndog;

s_player_warndog = -1;

player removeAction s_player_followdog;

s_player_followdog = -1;

};

};

} else {

player removeAction s_player_plotManagement;

s_player_plotManagement = -1;

{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];

s_player_repair_crtl = -1;

{player removeAction _x} count s_player_combi;s_player_combi = [];

dayz_myCursorTarget = objNull;

s_player_lastTarget = [objNull,objNull,objNull,objNull,objNull];

{player removeAction _x} count s_player_parts;s_player_parts = [];

s_player_parts_crtl = -1;

{player removeAction _x} count s_player_lockunlock;s_player_lockunlock = [];

s_player_lockUnlock_crtl = -1;

player removeAction s_player_checkGear;

s_player_checkGear = -1;

player removeAction s_player_SurrenderedGear;

s_player_SurrenderedGear = -1;

player removeAction s_player_forceSave;

s_player_forceSave = -1;

player removeAction s_player_flipveh;

s_player_flipveh = -1;

player removeAction s_player_sleep;

s_player_sleep = -1;

player removeAction s_player_deleteBuild;

s_player_deleteBuild = -1;

player removeAction s_player_butcher;

s_player_butcher = -1;

player removeAction s_player_cook;

s_player_cook = -1;

player removeAction s_player_boil;

s_player_boil = -1;

player removeAction s_player_fireout;

s_player_fireout = -1;

player removeAction s_player_packtent;

s_player_packtent = -1;

player removeAction s_player_fillfuel;

s_player_fillfuel = -1;

player removeAction s_player_studybody;

s_player_studybody = -1;

player removeAction s_player_tamedog;

s_player_tamedog = -1;

player removeAction s_player_feeddog;

s_player_feeddog = -1;

player removeAction s_player_waterdog;

s_player_waterdog = -1;

player removeAction s_player_staydog;

s_player_staydog = -1;

player removeAction s_player_trackdog;

s_player_trackdog = -1;

player removeAction s_player_barkdog;

s_player_barkdog = -1;

player removeAction s_player_warndog;

s_player_warndog = -1;

player removeAction s_player_followdog;

s_player_followdog = -1;

player removeAction s_player_unlockvault;

s_player_unlockvault = -1;

player removeAction s_player_packvault;

s_player_packvault = -1;

player removeAction s_player_lockvault;

s_player_lockvault = -1;

player removeAction s_player_information;

s_player_information = -1;

player removeAction s_player_fillgen;

s_player_fillgen = -1;

player removeAction s_player_upgrade_build;

s_player_upgrade_build = -1;

player removeAction s_player_maint_build;

s_player_maint_build = -1;

player removeAction s_player_downgrade_build;

s_player_downgrade_build = -1;

player removeAction s_player_towing;

s_player_towing = -1;

player removeAction s_player_fuelauto;

s_player_fuelauto = -1;

player removeAction s_player_fuelauto2;

s_player_fuelauto2 = -1;

player removeAction s_givemoney_dialog;

s_givemoney_dialog = -1;

player removeAction s_bank_dialog;

s_bank_dialog = -1;

player removeAction s_bank_dialog2;

s_bank_dialog2 = -1;

player removeAction s_player_packOBJ;

s_player_packOBJ = -1;

};

_dogHandle = player getVariable ["dogID", 0];

if (_dogHandle > 0) then {

_dog = _dogHandle getFSMVariable "_dog";

_ownerID = "0";

if (!isNull cursorTarget) then { _ownerID = cursorTarget getVariable ["CharacterID","0"]; };

if (_canDo && !_inVehicle && alive _dog && _ownerID != dayz_characterID) then {

if (s_player_movedog < 0) then {

s_player_movedog = player addAction [localize "str_actions_movedog", "\z\addons\dayz_code\actions\dog\move.sqf", player getVariable ["dogID", 0], 1, false, true, "", ""];

};

if (s_player_speeddog < 0) then {

_text = (localize "str_epoch_player_249");

_speed = 0;

if (_dog getVariable ["currentSpeed",1] == 0) then { _speed = 1; _text = (localize "str_epoch_player_250"); };

s_player_speeddog = player addAction [format[localize "str_actions_speeddog", _text], "\z\addons\dayz_code\actions\dog\speed.sqf",[player getVariable ["dogID", 0],_speed], 0, false, true, "", ""];

};

if (s_player_calldog < 0) then {

s_player_calldog = player addAction [localize "str_actions_calldog", "\z\addons\dayz_code\actions\dog\follow.sqf", [player getVariable ["dogID", 0], true], 2, false, true, "", ""];

};

};

} else {

player removeAction s_player_movedog;

s_player_movedog = -1;

player removeAction s_player_speeddog;

s_player_speeddog = -1;

player removeAction s_player_calldog;

s_player_calldog = -1;

};

antihack

Link to comment
Share on other sites

antihack

Some other place to look at the anti-hack? 

 

_ALLOWED_Dialogs = [-1,106,2200,6900,6901,6902,6903,55510,88890,420420,41144,711194];

// -1 Epoch Safe/Lockbox Keycode UI

// 106 Inventory (Gear)

// 2200 Blood Test

// 6900,6901,6902,6903 New Player (select Gender and such things)

// 420420 Epoch Trader

// 41144 Epoch Door Keycode UI

// 129 Diary

// 666,667 Clay Car Radio

// 4444 Radio Communication

// 65431,65432,65433,65434,65440,65441,65442 R3F ARTY Lift/Tow/Transport.

// 711194 Plot Management ()

_ALLOWED_Dialogs = _ALLOWED_Dialogs + [81000,20001,20002,20003,20004,20005,20006,118338,118339,711197,711195]; // adding some others from community addons

_cMenu =

[

"","RscMainMenu","RscMoveHigh","#WATCH","#WATCH0",

"RscWatchDir","RscDisplayClassSelecter","RscDisplayGenderSelect",

"RscDisplaySpawnSelecter","RscWatchMoreDir","#GETIN","RscStatus",

"RscCombatMode","RscFormations","RscTeam","RscSelectTeam","RscReply",

"RscCallSupport","#ACTION","#CUSTOM_RADIO","RscRadio","RscGroupRootMenu",

"BTC_Hud","PlotManagement"

];

Link to comment
Share on other sites

Mmmh i think this has nothing to do with antihack.. More like with the fact, that when you build a PlotPole it does not automatically add you ass friend, therefore you won't be able to manage it, because it has no value if nothing is inside the Inventory thingi..

To test that, please try building a PlotPole, then add yourself as a friend, wait 2 minutes and restart the server..

Link to comment
Share on other sites

Mmmh i think this has nothing to do with antihack.. More like with the fact, that when you build a PlotPole it does not automatically add you ass friend, therefore you won't be able to manage it, because it has no value if nothing is inside the Inventory thingi..

To test that, please try building a PlotPole, then add yourself as a friend, wait 2 minutes and restart the server..

Tested. After the restart I keep in the friend list in the plot. Is normal?

Link to comment
Share on other sites

Tested. After the restart I keep in the friend list in the plot. Is normal?

 

yeah.. Just tell your players to add themselfs as a plot friend or wait for an update on this :)

Link to comment
Share on other sites

yeah.. Just tell your players to add themselfs as a plot friend or wait for an update on this :)

One small problem, no player may itself add, just because I'm on the list in fn_selfActions.
 
if (s_player_plotManagement <0) then {
     _adminList = ["7656xxxxxxxxxx"]; // Add admins here if you admins to manage all able to plotpoles
 
I mean, does not appear in the scroll menu to anyone, just for me. So I'm having to add all the players on your friends list so that they can manage their plots.
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...