Jump to content

Overlord

Member
  • Posts

    18
  • Joined

  • Last visited

Posts posted by Overlord

  1. Anyone know how to set the check for plotfriends on the plotpole check?

     

    private ["_plotReq","_proceed","_location","_dir","_classname","_item","_hasrequireditem","_missing","_hastoolweapon","_cancel","_reason","_started","_finished","_animState","_isMedic","_dis","_sfx","_hasbuilditem","_tmpbuilt","_onLadder","_isWater","_require","_text","_offset","_IsNearPlot","_isOk","_location1","_location2","_counter","_limit","_proceed","_num_removed","_position","_object","_canBuildOnPlot","_friendlies","_nearestPole","_ownerID","_findNearestPoles","_findNearestPole","_distance","_classnametmp","_ghost","_isPole","_needText","_lockable","_zheightchanged","_rotate","_combination_1","_combination_2","_combination_3","_combination_4","_combination","_combination_1_Display","_combinationDisplay","_zheightdirection","_abort","_isNear","_need","_needNear","_vehicle","_inVehicle","_requireplot","_objHDiff","_isLandFireDZ","_isTankTrap","_itemgemsspawn"];

    _plotReq = false; //Plotpole requirement to build enabled

     fnc_Pos_fired1 = {
    disableSerialization;
    _indexPic = lbCurSel 2667; // index of selection
    _returnTextPic = lbText [2667, _indexPic]; // name of selection
    hint format["BAR : [%1] \n [%2]",_indexPic,_returnTextPic];// display the value
    classnameChange = _returnTextPic;
    itemgems = "ItemObsidian"; // change made here to say what gem is use to pay
     };
     
      fnc_Pos_fired2 = {
    disableSerialization;
    _indexChair = lbCurSel 2668; // index of selection
    _returnTextChair = lbText [2668, _indexChair]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexChair,_returnTextChair];// display the value
     classnameChange = _returnTextChair;
    itemgems = "ItemSapphire"; // change made here to say what gem is use to pay
     };
     
       fnc_Pos_fired3 = {
    disableSerialization;
    _indexBed = lbCurSel 2669; // index of selection
    _returnTextBed = lbText [2669, _indexBed]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexBed,_returnTextBed];// display the value
     classnameChange = _returnTextBed;
    itemgems = "ItemCitrine"; // change made here to say what gem is use to pay
     };
     
       fnc_Pos_fired4 = {
    disableSerialization;
    _indexBath = lbCurSel 2670; // index of selection
    _returnTextBath = lbText [2670, _indexBath]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexBath,_returnTextBath];// display the value
     classnameChange = _returnTextBath;
    itemgems = "ItemTopaz"; // change made here to say what gem is use to pay
     };
     
       fnc_Pos_fired5 = {
    disableSerialization;
    _indexShelf = lbCurSel 2671; // index of selection
    _returnTextShelf = lbText [2671, _indexShelf]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexShelf,_returnTextShelf];// display the value
     classnameChange = _returnTextShelf;
    itemgems = "ItemAmethyst"; // change made here to say what gem is use to pay
     };
     
       fnc_Pos_fired6 = {
    disableSerialization;
    _indexMisc = lbCurSel 2672; // index of selection
    _returnTextMisc = lbText [2672, _indexMisc]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexMisc,_returnTextMisc];// display the value
     classnameChange = _returnTextMisc;
    itemgems = "ItemObsidian"; // change made here to say what gem is use to pay
     };
     
       fnc_Pos_fired7 = {
    disableSerialization;
    _indexTable = lbCurSel 2673; // index of selection
    _returnTextTable = lbText [2673, _indexTable]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexTable,_returnTextTable];// display the value
     classnameChange = _returnTextTable;
    itemgems = "ItemRuby"; // change made here to say what gem is use to pay
     };
     
        fnc_Pos_fired8 = {
    disableSerialization;
    _indexExt = lbCurSel 2674; // index of selection
    _returnTextExt = lbText [2674, _indexExt]; // name of selection
     hint format["BAR : [%1] \n [%2]",_indexExt,_returnTextExt];// display the value
     classnameChange = _returnTextExt;
    itemgems = "ItemEmerald"; // change made here to say what gem is use to pay
     };

    _itemgemsspawn = itemgems; // _itemgemsspawn define in private on top
    _classname = classnameChange;

    if(DZE_ActionInProgress) exitWith { cutText [(localize "str_epoch_player_40") , "PLAIN DOWN"]; };
    DZE_ActionInProgress = true;
     
    _onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
    _isWater =  dayz_isSwimming;
    _cancel = false;
    _reason = "";
    _canBuildOnPlot = false;
     
    _vehicle = vehicle player;
    _inVehicle = (_vehicle != player);
     
    DZE_Q = false;
    DZE_Z = false;
     
    DZE_Q_alt = false;
    DZE_Z_alt = false;
     
    DZE_Q_ctrl = false;
    DZE_Z_ctrl = false;
     
    DZE_5 = false;
    DZE_4 = false;
    DZE_6 = false;
     
    DZE_cancelBuilding = false;
     
    call gear_ui_init;
    closeDialog 1;
     
    if (_isWater) exitWith {DZE_ActionInProgress = false; cutText [localize "str_player_26", "PLAIN DOWN"];};
    if (_inVehicle) exitWith {DZE_ActionInProgress = false; cutText [(localize "str_epoch_player_42"), "PLAIN DOWN"];};
    if (_onLadder) exitWith {DZE_ActionInProgress = false; cutText [localize "str_player_21", "PLAIN DOWN"];};
    if (player getVariable["combattimeout", 0] >= time) exitWith {DZE_ActionInProgress = false; cutText [(localize "str_epoch_player_43"), "PLAIN DOWN"];};
     
    _item = _this;
     
    // Need Near Requirements
    _abort = false;
    _distance = 3;
    _reason = "";
     
     
    if(_abort) exitWith {
    cutText [format[(localize "str_epoch_player_135"),_reason,_distance], "PLAIN DOWN"];
    DZE_ActionInProgress = false;
    };
     
     
    _classnametmp = _classname;
    //_require =  getArray (configFile >> "cfgMagazines" >> _this >> "ItemActions" >> "Build" >> "require");
    _text =  getText (configFile >> "CfgVehicles" >> _classname >> "displayName");
    _ghost = getText (configFile >> "CfgVehicles" >> _classname >> "ghostpreview");
     
    _lockable = 0;
     
    _requireplot = DZE_requireplot;
    if(isNumber (configFile >> "CfgVehicles" >> _classname >> "requireplot")) then {
    _requireplot = getNumber(configFile >> "CfgVehicles" >> _classname >> "requireplot");
    };
     
    _isAllowedUnderGround = 1;
    if(isNumber (configFile >> "CfgVehicles" >> _classname >> "nounderground")) then {
    _isAllowedUnderGround = getNumber(configFile >> "CfgVehicles" >> _classname >> "nounderground");
    };
     
    _offset =  getArray (configFile >> "CfgVehicles" >> _classname >> "offset");
    if((count _offset) <= 0) then {
    _offset = [0,3.5,0]; //This is distance of object from player XYZ.. increase Y if you want an object to spawn further away from player
    };
     
    _isPole = (_classname == "Plastic_Pole_EP1_DZ");
    _isLandFireDZ = (_classname == "Land_Fire_DZ");
     
    _distance = DZE_PlotPole select 0;
    _needText = localize "str_epoch_player_246";
     
    if(_isPole) then {
    _distance = DZE_PlotPole select 1;
    };


    _proceed = true;
    // check for near plot
    _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], 30];
    _findNearestPole = [];
    {if (alive _x) then {_findNearestPole set [(count _findNearestPole),_x];};} foreach _findNearestPoles;

    _IsNearPlot = count (_findNearestPole);

    if(_IsNearPlot >= 1) then {
        _proceed = false;
        _plotReq = false;
        _nearestPole = _findNearestPole select 0;

        // Find owner
        _ownerID = _nearestPole getVariable["CharacterID","0"];
        
        // check if friendly to owner
        if(dayz_characterID != _ownerID) then {

            _friendlies        = player getVariable ["friendlyTo",[]];
            // check if friendly to owner
            if(!(_ownerID in _friendlies)) then {
                _proceed = false;
                } else {
                _proceed = true;
            };
            } else {
            _proceed = true;
        };
    };
    _missing = "";
     
    _location = [0,0,0];
    _isOk = true;
     
    // get inital players position
    _location1 = getPosATL player;
    _dir = getDir player;
     
    _object = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
     
    _object attachTo [player,_offset];
     
    _position = getPosATL _object;
     
    cutText [(localize "str_epoch_player_45"), "PLAIN DOWN"];
     
    _objHDiff = 0;

     
    while {_isOk} do {
        
        _zheightchanged = false;
        _zheightdirection = "";
        _rotate = false;
        
        if (DZE_Q) then {
        DZE_Q = false;
        _zheightdirection = "up";
        _zheightchanged = true;
        };
        if (DZE_Z) then {
        DZE_Z = false;
        _zheightdirection = "down";
        _zheightchanged = true;
        };
        if (DZE_Q_alt) then {
        DZE_Q_alt = false;
        _zheightdirection = "up_alt";
        _zheightchanged = true;
        };
        if (DZE_Z_alt) then {
        DZE_Z_alt = false;
        _zheightdirection = "down_alt";
        _zheightchanged = true;
        };
        if (DZE_Q_ctrl) then {
        DZE_Q_ctrl = false;
        _zheightdirection = "up_ctrl";
        _zheightchanged = true;
        };
        if (DZE_Z_ctrl) then {
        DZE_Z_ctrl = false;
        _zheightdirection = "down_ctrl";
        _zheightchanged = true;
        };
        if (DZE_4) then {
        _rotate = true;
        DZE_4 = false;
        _dir = 180;
        };
        if (DZE_6) then {
        _rotate = true;
        DZE_6 = false;
        _dir = 0;
        };
        
        if(_rotate) then {
        _object setDir _dir;
        _object setPosATL _position;
        //diag_log format["DEBUG Rotate BUILDING POS: %1", _position];
        };
        
        if(_zheightchanged) then {
        detach _object;
        
        _position = getPosATL _object;
        
        if(_zheightdirection == "up") then {
        _position set [2,((_position select 2)+0.1)];
        _objHDiff = _objHDiff + 0.1;
        };
        if(_zheightdirection == "down") then {
        _position set [2,((_position select 2)-0.1)];
        _objHDiff = _objHDiff - 0.1;
        };
        
        if(_zheightdirection == "up_alt") then {
        _position set [2,((_position select 2)+1)];
        _objHDiff = _objHDiff + 1;
        };
        if(_zheightdirection == "down_alt") then {
        _position set [2,((_position select 2)-1)];
        _objHDiff = _objHDiff - 1;
        };
        
        if(_zheightdirection == "up_ctrl") then {
        _position set [2,((_position select 2)+0.01)];
        _objHDiff = _objHDiff + 0.01;
        };
        if(_zheightdirection == "down_ctrl") then {
        _position set [2,((_position select 2)-0.01)];
        _objHDiff = _objHDiff - 0.01;
        };
        
        _object setDir (getDir _object);
        
        if((_isAllowedUnderGround == 0) and ((_position select 2) < 0)) then {
        _position set [2,0];
        };
        
        _object setPosATL _position;
        
        //diag_log format["DEBUG Change BUILDING POS: %1", _position];
        
        _object attachTo [player];
        
        };
        
        sleep 0.5;
        
        _location2 = getPosATL player;
        
        if(DZE_5) exitWith {
        _isOk = false;
        detach _object;
        _dir = getDir _object;
        _position = getPosATL _object;
        //diag_log format["DEBUG BUILDING POS: %1", _position];
        deleteVehicle _object;
        };
        
        if(_location1 distance _location2 > 5) exitWith {
        _isOk = false;
        _cancel = true;
        _reason = "You've moved to far away from where you started building (within 5 meters)";
        detach _object;
        deleteVehicle _object;
        };
        
        if(abs(_objHDiff) > 5) exitWith {
        _isOk = false;
        _cancel = true;
        _reason = "Cannot move up or down more than 5 meters";
        detach _object;
        deleteVehicle _object;
        };
        
        if (player getVariable["combattimeout", 0] >= time) exitWith {
        _isOk = false;
        _cancel = true;
        _reason = (localize "str_epoch_player_43");
        detach _object;
        deleteVehicle _object;
        };
        
        if (DZE_cancelBuilding) exitWith {
        _isOk = false;
        _cancel = true;
        _reason = "Cancelled building.";
        detach _object;
        deleteVehicle _object;
        };
    };
     
    //No building on roads unless toggled
    if (!DZE_BuildOnRoads) then {
    if (isOnRoad _position) then { _cancel = true; _reason = "Cannot build on a road."; };
    };
     
    // No building in trader zones
    if(!canbuild) then { _cancel = true; _reason = "Cannot build in a city."; };
     
    if (!_proceed) then {_cancel = true; _reason = "Someone's plotpole nearby";};
    if (_plotReq) then {_cancel = true; _reason = "Plotpole required to build here";};

    if(!_cancel) then {
     
    _classname = _classnametmp;
     
    // Start Build
    _tmpbuilt = createVehicle [_classname, _location, [], 0, "CAN_COLLIDE"];
     
    _tmpbuilt setdir _dir;
     
    // Get position based on object
    _location = _position;
     
    if((_isAllowedUnderGround == 0) and ((_location select 2) < 0)) then {
    _location set [2,0];
    };
     
    _tmpbuilt setPosATL _location;
     
     
    cutText [format[(localize "str_epoch_player_138"),_text], "PLAIN DOWN"];
     
    _limit = 1;
     
    if (DZE_StaticConstructionCount > 0) then {
    _limit = DZE_StaticConstructionCount;
    }
    else {
    if (isNumber (configFile >> "CfgVehicles" >> _classname >> "constructioncount")) then {
    _limit = getNumber(configFile >> "CfgVehicles" >> _classname >> "constructioncount");
    };
    };
     
    player playActionNow "Medic";
    [player,"repair",0,false,10] call dayz_zombieSpeak;
    [player,10,true,(getPosATL player)] spawn player_alertZombies;
    sleep 3;
     
    cutText [format[localize "str_build_01",_text], "PLAIN DOWN"];
     
    if (_isPole) then {
    [] spawn player_plotPreview;
    };
     
    _tmpbuilt setVariable ["OEMPos",_location,true];
     
    _tmpbuilt setVariable ["CharacterID",dayz_characterID,true];
     
    _charID = dayz_characterID;
    _activatingPlayer = player;
     
    PVDZE_obj_Publish = [dayz_characterID,_tmpbuilt,[_dir,_location],_classname];
    publicVariableServer "PVDZE_obj_Publish";

    // I know the code is prehaps not very good but that work
    // Test to see if the gem to pay is in inventory else we try to pay with the superior
    _removed=0;
    while {_removed == 0} do {
    _removed = ([player,_itemgemsspawn,1] call BIS_fnc_invRemove);
    if((_itempierre == "ItemRuby") and (_removed == 0)) then {
        _itempierre = "ItemEmerald";
        };
    if((_itempierre == "ItemSapphire") and (_removed == 0)) then {
        _itempierre = "ItemRuby";
        };
    if((_itempierre == "ItemAmethyst") and (_removed == 0)) then {
        _itempierre = "ItemSapphire";
        };
    if((_itempierre == "ItemCitrine") and (_removed == 0)) then {
        _itempierre = "ItemAmethyst";
        };
    if((_itempierre == "ItemTopaz") and (_removed == 0)) then {
        _itempierre = "ItemCitrine";
        };
    if((_itempierre == "ItemObsidian") and (_removed == 0)) then {
        _itempierre = "ItemTopaz";
        };
    };

    // just change text for on screen
    if(_itemgemsspawn == "ItemObsidian") then {
        _itemgemsspawn = "Obsidian";
        };
    if(_itemgemsspawn == "ItemTopaz") then {
        _itemgemsspawn = "Topaz";
        };
    if(_itemgemsspawn == "ItemCitrine") then {
        _itemgemsspawn = "Citrine";
        };
    if(_itemgemsspawn == "ItemAmethyst") then {
        _itemgemsspawn = "Amethyst";
        };
    if(_itemgemsspawn == "ItemSapphire") then {
        _itemgemsspawn = "Sapphire";
        };
    if(_itemgemsspawn == "ItemRuby") then {
        _itemgemsspawn = "Ruby";
        };
    if(_itemgemsspawn == "ItemEmerald") then {
        _itemgemsspawn = "Emerald";
        };

    cutText [format["%1 saved to database ! %2 delete from inventory !",_classname,_itemgemsspawn], "PLAIN DOWN",3];
    player reveal _tmpbuilt;
    DZE_ActionInProgress = false;
     
    } else {
    cutText [format[(localize "str_epoch_player_47"),_text,_reason], "PLAIN DOWN"];
    DZE_ActionInProgress = false;
    };
     
    DZE_ActionInProgress = false;

  2. Sounds like an Antihack Problem to me. Do you use Infistar or similar 3rd Party AH Software? If so you need to whitelist the selfaction functions (s_player_garage) and the dialog function (50003,50004) in the AHconfig.sqf, I would guess.

     

    Thanks Copper.  I thought i had those added.

  3. I have Plot Management, Door Management, and 0verheat vehicle garage installed without plot 4 life.  Everything works perfectly for me but other players report the garage menu showing then disappearing when trying to access it.  I don't know if it is an admin thing or not.  Does anyone know what would cause the menu to show then disappear for normal players?

  4. Everything is working great for me except i do not get money storage option on vehicles or storage items.  Can anyone see the problem in my fn_selfactions?

     

    scriptName "Functions\misc\fn_selfActions.sqf";

    /***********************************************************

        ADD ACTIONS FOR SELF

        - Function

        - [] call fnc_usec_selfActions;

    ************************************************************/

    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 {}; // Do not allow if any script is running.

    _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);

    _nearLight =     nearestObject [player,"LitObject"];

    _canPickLight = false;

    if (!isNull _nearLight) then {

        if (_nearLight distance player < 4) then {

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

        };

    };

    //Grab Flare

    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 {    //Has some kind of target

            _isAnimal = cursorTarget isKindOf "Animal";

            _isZombie = cursorTarget isKindOf "zZombie_base";

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

            _isMan = cursorTarget isKindOf "Man";

            // Pzombie Gut human corpse || animal

            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;

        };

    };

    // 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

    // Increase distance only if AIR || SHIP

    _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

        // set cursortarget to variable

        _cursorTarget = cursorTarget;

        // get typeof cursortarget once

        _typeOfCursorTarget = typeOf _cursorTarget;

        // hintsilent _typeOfCursorTarget;

        _isVehicle = _cursorTarget isKindOf "AllVehicles";

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

        _isnewstorage = _typeOfCursorTarget in DZE_isNewStorage;

        

        // get items && magazines only once

        _magazinesPlayer = magazines player;

        //boiled Water

        _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 = [];

        // find available keys

        _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;

        };

        // diag_log ("OWNERID = " + _ownerID + " CHARID = " + dayz_characterID + " " + str(_ownerID == dayz_characterID));

        

        // logic vars

        _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_maintain_area < 0) then {

                  s_player_maintain_area = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTAREA], "actions\maintain_area.sqf", "maintain", 5, false];

                 s_player_maintain_area_preview = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTPREV], "actions\maintain_area.sqf", "preview", 5, false];

             };

         } else {

                player removeAction s_player_maintain_area;

                s_player_maintain_area = -1;

                player removeAction s_player_maintain_area_preview;

                s_player_maintain_area_preview = -1;

         };*/

        // CURSOR TARGET ALIVE

        if(_isAlive) then {

            

            //Allow player to delete objects

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

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

                    _player_deleteBuild = true;

                };

            };

            

            //Allow owners to delete modulars

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

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

                                    _player_deleteBuild = true;

                            };

                    };

            //Allow owners to delete modular doors without locks

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

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

                                    _player_deleteBuild = true;

                            };        

                    };    

            // CURSOR TARGET VEHICLE

            if(_isVehicle) then {

                

                //flip vehicle small vehicles by your self && all other vehicles with help nearby

                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;

            };

            //diag_log format["CREW: %1 ALLOW: %2",(count (crew _cursorTarget)),_allowTow];

            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;

            };

            //diag_log format["HELI: %1 TARGET: %2",_found,_cursorTarget];

            _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;

            };

        };

        

        // Allow Owner to lock && unlock vehicle  

        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["<t color=#ff0000'>%1</t>",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];

                        if (_typeOfCursorTarget in ColourVehicles) then {

                                        private ["_paint"];

                                        _paint = player addAction ["<t color=#0059FF'>Paint Vehicle</t>", "Paint\player_paint_init.sqf", _cursorTarget, 2, true, true, "", "];

                                        s_player_lockunlock set [count s_player_lockunlock,_paint];

                                };

                        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 {

            //Allow player to force save

            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;

            };

        };

        

        

        //flip vehicle small vehicles by your self && all other vehicles with help nearby

        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;

        };

        

        //Allow player to fill jerrycan

        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;

        };

        

        // logic vars for addactions

        _player_butcher = false;

        _player_studybody = false;

        _player_SurrenderedGear = false;

        // CURSOR TARGET NOT ALIVE

        if (!_isAlive) then {

            // Gut animal/zed

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

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

                if (!_isHarvested) then {

                    _player_butcher = true;

                };

            };

            // Study body

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

                _player_studybody = true;

            }

        } else {

            // unit alive

            // gear access on surrendered player

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

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

                if (_isSurrendered) then {

                    _player_SurrenderedGear = true;

                };

            };

        };

        // Human Gut animal || zombie

        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;

        };

        // Study Body

        if (_player_studybody) then {

                if (s_player_studybody < 0) then {

                        s_player_studybody = player addAction [("<t color="#FF0000"">"+("Check Wallet") + "</t>"), "ZSC\actions\check_wallet.sqf",_cursorTarget, 0, false, true, "","];

                };

        } else {

                player removeAction s_player_studybody;

                s_player_studybody = -1;

        };

        // logic vars

        _player_cook = false;

        _player_boil = false;

        // CURSOR TARGET IS FIRE

        if (inflamed _cursorTarget) then {

            

            //Fireplace Actions check

            if (_hasRawMeat) then {

                _player_cook = true;    

            };

            

            // Boil water

            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;

        };

        //Fireplace Actions check

        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;

        };

        

        // Boil water

        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;

        };

        

        //Packing my tent

        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;

        };

        //Allow manage door

        if((_typeOfCursorTarget in DZE_DoorsLocked)) then {

        if (s_player_manageDoor >= 0 && door_management_last != _cursorTarget) then {

                player removeAction s_player_manageDoor;

                s_player_manageDoor = -1;

            };

            if (s_player_manageDoor < 0) then {

                door_management_last = _cursorTarget;

                s_player_manageDoor = player addAction ["<t color='#0059FF'>Manage Door</t>", "doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false];

            };

        } else {

            door_management_last = objNull;

            player removeAction s_player_manageDoor;

            s_player_manageDoor = -1;

        };

        

        //Allow owner to unlock vault

        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 ZSC_MoneyStorage && (player distance _cursorTarget < 5)) then {

            if (s_bank_dialog < 0) then {

                    s_bank_dialog = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];    

            };

        } else {

             player removeAction s_bank_dialog;

            s_bank_dialog = -1;

        };

        // cars

        if( _isVehicle && !_isMan &&_isAlive && !_isMan && !locked _cursorTarget && !(_cursorTarget isKindOf "Bicycle") && (player distance _cursorTarget < 5)) then {        

            if (s_bank_dialog2 < 0) then {

                s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

            };            

        } else {        

            player removeAction s_bank_dialog2;

            s_bank_dialog2 = -1;

        };    

        

    //Allow owner to change Door code

    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_ckc > 0) then {    

                    player removeAction s_player_ckc;

                    s_player_ckc = -1;

                };

            };

            if (s_player_ckc < 0) then {

                s_player_lastTarget set [1,_cursorTarget];    

                    s_player_ckc = player addaction["Set new Code", "ckc\ckc_startUI.sqf","",0,false,true,"", ""];

            };

        } else {

            player removeAction s_player_ckc;

            s_player_ckc = -1;

        };

    //Allow owner to change vault code

    _unlockedVault = ["VaultStorage"];

        if(typeOf(cursortarget) in _unlockedVault && _ownerID != "0" && (player distance _cursorTarget < 2)) then {

        

        if (s_player_Safe_ckc < 0) then {

        if ((typeOf(cursortarget) == "VaultStorage") &&(_ownerID == dayz_combination || _ownerID == dayz_playerUID)  ) then {

         

                    

                s_player_Safe_ckc = player addaction["Set new Code", "ckc\ckc_startSafeUI.sqf","",1,false,true,"", ""];

            };

            };

        } else {

            player removeAction s_player_Safe_ckc;

            s_player_Safe_ckc = -1;

        };

        //Allow owner to pack vault

        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["<t color=#ff0000'>%1</t>",(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;

        };

        

        //Player Deaths

        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)], "ZSC\actions\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

                };

        } else {

                player removeAction s_givemoney_dialog;

                s_givemoney_dialog = -1;

        };

        

        //Fuel Pump

        if(_typeOfCursorTarget in dayz_fuelpumparray) then {    

            if (s_player_fuelauto < 0) then {

                

                // check if Generator_DZ is running within 30 meters

                _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);

                

                // show that pump needs power if no generator nearby.

                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];

                };

            };

        } else {

            player removeAction s_player_fuelauto;

            s_player_fuelauto = -1;

        };

        //Fuel Pump on truck

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

            if (s_player_fuelauto2 < 0) then {

                // show that fuel truck pump needs power.

                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];

                };

            };

        } else {

            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;

        };

        // inplace upgrade tool

        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 = _cursorTarget;

                s_player_lastTarget set [0,_cursorTarget];

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

            };

        } else {

            player removeAction s_player_upgrade_build;

            s_player_upgrade_build = -1;

        };

        

        // downgrade system

        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], "custom\BuildVectors\action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];

            };

        } else {

            player removeAction s_player_downgrade_build;

            s_player_downgrade_build = -1;

        };

        // inplace maintenance tool

        //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;

        //};

        //Start Generator

        if(_cursorTarget isKindOf "Generator_DZ") then {

            if (s_player_fillgen < 0) then {

                

                // check if not running

                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 {

                // check if not filled && player has jerry.

                    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;

        };

        //Towing with tow truck

        /*

        if(_typeOfCursorTarget == "TOW_DZE") then {

            if (s_player_towing < 0) then {

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

                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true, "",""];                

                } else {

                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true, "",""];                

                };

            };

        } else {

            player removeAction s_player_towing;

            s_player_towing = -1;

        };

        */

        //Sleep

        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;

        };

        

        //Repairing Vehicles

        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;

            };

        };

        // All Traders

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

            

            if (s_player_parts_crtl < 0) then {

                // get humanity

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

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

                // diag_log ("TRADER = " + str(_traderMenu));

                

                _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 {

                    

                    // Static Menu

                    {

                        //diag_log format["DEBUG TRADER: %1", _x];

                        _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 ["<t color=#0059FF'>Advanced Trading</t>", "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 {

            

            //Dog

            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 {

        //Engineering

        {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;

        //Others

        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;

        //Dog

        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;

        

        // vault

        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_ckc;

        s_player_ckc = -1;

        player removeAction s_player_Safe_ckc;

        s_player_Safe_ckc = -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_player_manageDoor;

        s_player_manageDoor = -1; // u might also want to add this to variables reset in your variables.sqf

        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;

    };

    //Dog actions on player self

    _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;

    };

    //----------PACK BIKE START----------

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

    _isBike = typeOf cursorTarget in ["MMT_Civ"];

    if((_isBike) and _canDo) then {

    if (s_player_deploybike2 < 0) then {

            s_player_deploybike2 = player addaction[("<t color="#007ab7"">" + ("Pack Bike") +"</t>"),"pack.sqf","",5,false,true,"", "];

        };

    } else {

        player removeAction s_player_deploybike2;

        s_player_deploybike2 = -1;

    };

    //----------PACK BIKE END----------

    I went completely through the install again and everything is good.  I only get the option for money storage on the ural refuel.  No other vehicles or the storages get the option.  Has anyone else run into this problem?

     

    I tried changing where the option shows up and no luck.  I changed the 3 to 0 after _cursorTarget and still just get the option only on the ural refuel.  s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""]; 

  5. Everything is working great for me except i do not get money storage option on vehicles or storage items.  Can anyone see the problem in my fn_selfactions?

     

    scriptName "Functions\misc\fn_selfActions.sqf";

    /***********************************************************

        ADD ACTIONS FOR SELF

        - Function

        - [] call fnc_usec_selfActions;

    ************************************************************/

    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 {}; // Do not allow if any script is running.

    _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);

    _nearLight =     nearestObject [player,"LitObject"];

    _canPickLight = false;

    if (!isNull _nearLight) then {

        if (_nearLight distance player < 4) then {

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

        };

    };

    //Grab Flare

    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 {    //Has some kind of target

            _isAnimal = cursorTarget isKindOf "Animal";

            _isZombie = cursorTarget isKindOf "zZombie_base";

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

            _isMan = cursorTarget isKindOf "Man";

            // Pzombie Gut human corpse || animal

            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;

        };

    };

    // 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

    // Increase distance only if AIR || SHIP

    _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

        // set cursortarget to variable

        _cursorTarget = cursorTarget;

        // get typeof cursortarget once

        _typeOfCursorTarget = typeOf _cursorTarget;

        // hintsilent _typeOfCursorTarget;

        _isVehicle = _cursorTarget isKindOf "AllVehicles";

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

        _isnewstorage = _typeOfCursorTarget in DZE_isNewStorage;

        

        // get items && magazines only once

        _magazinesPlayer = magazines player;

        //boiled Water

        _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 = [];

        // find available keys

        _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;

        };

        // diag_log ("OWNERID = " + _ownerID + " CHARID = " + dayz_characterID + " " + str(_ownerID == dayz_characterID));

        

        // logic vars

        _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_maintain_area < 0) then {

                  s_player_maintain_area = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTAREA], "actions\maintain_area.sqf", "maintain", 5, false];

                 s_player_maintain_area_preview = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTPREV], "actions\maintain_area.sqf", "preview", 5, false];

             };

         } else {

                player removeAction s_player_maintain_area;

                s_player_maintain_area = -1;

                player removeAction s_player_maintain_area_preview;

                s_player_maintain_area_preview = -1;

         };*/

        // CURSOR TARGET ALIVE

        if(_isAlive) then {

            

            //Allow player to delete objects

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

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

                    _player_deleteBuild = true;

                };

            };

            

            //Allow owners to delete modulars

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

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

                                    _player_deleteBuild = true;

                            };

                    };

            //Allow owners to delete modular doors without locks

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

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

                                    _player_deleteBuild = true;

                            };        

                    };    

            // CURSOR TARGET VEHICLE

            if(_isVehicle) then {

                

                //flip vehicle small vehicles by your self && all other vehicles with help nearby

                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;

            };

            //diag_log format["CREW: %1 ALLOW: %2",(count (crew _cursorTarget)),_allowTow];

            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;

            };

            //diag_log format["HELI: %1 TARGET: %2",_found,_cursorTarget];

            _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;

            };

        };

        

        // Allow Owner to lock && unlock vehicle  

        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["<t color=#ff0000'>%1</t>",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];

                        if (_typeOfCursorTarget in ColourVehicles) then {

                                        private ["_paint"];

                                        _paint = player addAction ["<t color=#0059FF'>Paint Vehicle</t>", "Paint\player_paint_init.sqf", _cursorTarget, 2, true, true, "", "];

                                        s_player_lockunlock set [count s_player_lockunlock,_paint];

                                };

                        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 {

            //Allow player to force save

            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;

            };

        };

        

        

        //flip vehicle small vehicles by your self && all other vehicles with help nearby

        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;

        };

        

        //Allow player to fill jerrycan

        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;

        };

        

        // logic vars for addactions

        _player_butcher = false;

        _player_studybody = false;

        _player_SurrenderedGear = false;

        // CURSOR TARGET NOT ALIVE

        if (!_isAlive) then {

            // Gut animal/zed

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

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

                if (!_isHarvested) then {

                    _player_butcher = true;

                };

            };

            // Study body

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

                _player_studybody = true;

            }

        } else {

            // unit alive

            // gear access on surrendered player

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

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

                if (_isSurrendered) then {

                    _player_SurrenderedGear = true;

                };

            };

        };

        // Human Gut animal || zombie

        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;

        };

        // Study Body

        if (_player_studybody) then {

                if (s_player_studybody < 0) then {

                        s_player_studybody = player addAction [("<t color="#FF0000"">"+("Check Wallet") + "</t>"), "ZSC\actions\check_wallet.sqf",_cursorTarget, 0, false, true, "","];

                };

        } else {

                player removeAction s_player_studybody;

                s_player_studybody = -1;

        };

        // logic vars

        _player_cook = false;

        _player_boil = false;

        // CURSOR TARGET IS FIRE

        if (inflamed _cursorTarget) then {

            

            //Fireplace Actions check

            if (_hasRawMeat) then {

                _player_cook = true;    

            };

            

            // Boil water

            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;

        };

        //Fireplace Actions check

        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;

        };

        

        // Boil water

        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;

        };

        

        //Packing my tent

        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;

        };

        //Allow manage door

        if((_typeOfCursorTarget in DZE_DoorsLocked)) then {

        if (s_player_manageDoor >= 0 && door_management_last != _cursorTarget) then {

                player removeAction s_player_manageDoor;

                s_player_manageDoor = -1;

            };

            if (s_player_manageDoor < 0) then {

                door_management_last = _cursorTarget;

                s_player_manageDoor = player addAction ["<t color='#0059FF'>Manage Door</t>", "doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false];

            };

        } else {

            door_management_last = objNull;

            player removeAction s_player_manageDoor;

            s_player_manageDoor = -1;

        };

        

        //Allow owner to unlock vault

        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 ZSC_MoneyStorage && (player distance _cursorTarget < 5)) then {

            if (s_bank_dialog < 0) then {

                    s_bank_dialog = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];    

            };

        } else {

             player removeAction s_bank_dialog;

            s_bank_dialog = -1;

        };

        // cars

        if( _isVehicle && !_isMan &&_isAlive && !_isMan && !locked _cursorTarget && !(_cursorTarget isKindOf "Bicycle") && (player distance _cursorTarget < 5)) then {        

            if (s_bank_dialog2 < 0) then {

                s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

            };            

        } else {        

            player removeAction s_bank_dialog2;

            s_bank_dialog2 = -1;

        };    

        

    //Allow owner to change Door code

    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_ckc > 0) then {    

                    player removeAction s_player_ckc;

                    s_player_ckc = -1;

                };

            };

            if (s_player_ckc < 0) then {

                s_player_lastTarget set [1,_cursorTarget];    

                    s_player_ckc = player addaction["Set new Code", "ckc\ckc_startUI.sqf","",0,false,true,"", ""];

            };

        } else {

            player removeAction s_player_ckc;

            s_player_ckc = -1;

        };

    //Allow owner to change vault code

    _unlockedVault = ["VaultStorage"];

        if(typeOf(cursortarget) in _unlockedVault && _ownerID != "0" && (player distance _cursorTarget < 2)) then {

        

        if (s_player_Safe_ckc < 0) then {

        if ((typeOf(cursortarget) == "VaultStorage") &&(_ownerID == dayz_combination || _ownerID == dayz_playerUID)  ) then {

         

                    

                s_player_Safe_ckc = player addaction["Set new Code", "ckc\ckc_startSafeUI.sqf","",1,false,true,"", ""];

            };

            };

        } else {

            player removeAction s_player_Safe_ckc;

            s_player_Safe_ckc = -1;

        };

        //Allow owner to pack vault

        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["<t color=#ff0000'>%1</t>",(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;

        };

        

        //Player Deaths

        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)], "ZSC\actions\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];

                };

        } else {

                player removeAction s_givemoney_dialog;

                s_givemoney_dialog = -1;

        };

        

        //Fuel Pump

        if(_typeOfCursorTarget in dayz_fuelpumparray) then {    

            if (s_player_fuelauto < 0) then {

                

                // check if Generator_DZ is running within 30 meters

                _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);

                

                // show that pump needs power if no generator nearby.

                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];

                };

            };

        } else {

            player removeAction s_player_fuelauto;

            s_player_fuelauto = -1;

        };

        //Fuel Pump on truck

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

            if (s_player_fuelauto2 < 0) then {

                // show that fuel truck pump needs power.

                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];

                };

            };

        } else {

            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;

        };

        // inplace upgrade tool

        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 = _cursorTarget;

                s_player_lastTarget set [0,_cursorTarget];

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

            };

        } else {

            player removeAction s_player_upgrade_build;

            s_player_upgrade_build = -1;

        };

        

        // downgrade system

        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], "custom\BuildVectors\action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];

            };

        } else {

            player removeAction s_player_downgrade_build;

            s_player_downgrade_build = -1;

        };

        // inplace maintenance tool

        //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;

        //};

        //Start Generator

        if(_cursorTarget isKindOf "Generator_DZ") then {

            if (s_player_fillgen < 0) then {

                

                // check if not running

                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 {

                // check if not filled && player has jerry.

                    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;

        };

        //Towing with tow truck

        /*

        if(_typeOfCursorTarget == "TOW_DZE") then {

            if (s_player_towing < 0) then {

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

                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true, "",""];                

                } else {

                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true, "",""];                

                };

            };

        } else {

            player removeAction s_player_towing;

            s_player_towing = -1;

        };

        */

        //Sleep

        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;

        };

        

        //Repairing Vehicles

        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;

            };

        };

        // All Traders

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

            

            if (s_player_parts_crtl < 0) then {

                // get humanity

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

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

                // diag_log ("TRADER = " + str(_traderMenu));

                

                _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 {

                    

                    // Static Menu

                    {

                        //diag_log format["DEBUG TRADER: %1", _x];

                        _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 ["<t color=#0059FF'>Advanced Trading</t>", "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 {

            

            //Dog

            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 {

        //Engineering

        {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;

        //Others

        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;

        //Dog

        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;

        

        // vault

        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_ckc;

        s_player_ckc = -1;

        player removeAction s_player_Safe_ckc;

        s_player_Safe_ckc = -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_player_manageDoor;

        s_player_manageDoor = -1; // u might also want to add this to variables reset in your variables.sqf

        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;

    };

    //Dog actions on player self

    _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;

    };

    //----------PACK BIKE START----------

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

    _isBike = typeOf cursorTarget in ["MMT_Civ"];

    if((_isBike) and _canDo) then {

    if (s_player_deploybike2 < 0) then {

            s_player_deploybike2 = player addaction[("<t color="#007ab7"">" + ("Pack Bike") +"</t>"),"pack.sqf","",5,false,true,"", "];

        };

    } else {

        player removeAction s_player_deploybike2;

        s_player_deploybike2 = -1;

    };

    //----------PACK BIKE END----------

     

    Only one other thing does not look right but another mod changes the line in server_monitor.sqf.  Could this be causing me any issues with money storage not showing as an option?  Everything else is exactly how it should be edited.

    The edit comes from door management.    if ((count _intentory > 0) && !(typeOf( _object) in  DZE_DoorsLocked)) then {

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

                

                    /*ZSC*/

                    if( count (_intentory) > 3)then{

                    _object setVariable ["bankMoney", _intentory select 3, true];

                    }else{

                    _object setVariable ["bankMoney", 0, true];

                    };

                    /*ZSC*/

                    

                    if (_type in DZE_LockedStorage) then {

                        // Fill variables with loot

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

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

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

                    } else {

                        //Add weapons

                        _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;

                    

                        //Add Magazines

                        _objWpnTypes = (_intentory select 1) select 0;

                        _objWpnQty = (_intentory select 1) select 1;

                        _countr = 0;

                        {

                            if (_x == "BoltSteel") then { _x = "WoodenArrow" }; // Convert BoltSteel to 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;

                        //Add Backpacks

                        _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;

                    };

                };

  6. Everything is working great for me except i do not get money storage option on vehicles or storage items.  Can anyone see the problem in my fn_selfactions?

     

    scriptName "Functions\misc\fn_selfActions.sqf";
    /***********************************************************
        ADD ACTIONS FOR SELF
        - Function
        - [] call fnc_usec_selfActions;
    ************************************************************/
    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 {}; // Do not allow if any script is running.

    _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);

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

    //Grab Flare
    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 {    //Has some kind of target
            _isAnimal = cursorTarget isKindOf "Animal";
            _isZombie = cursorTarget isKindOf "zZombie_base";
            _isHarvested = cursorTarget getVariable["meatHarvested",false];
            _isMan = cursorTarget isKindOf "Man";
            // Pzombie Gut human corpse || animal
            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;
        };
    };

    // 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

    // Increase distance only if AIR || SHIP
    _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

        // set cursortarget to variable
        _cursorTarget = cursorTarget;

        // get typeof cursortarget once
        _typeOfCursorTarget = typeOf _cursorTarget;

        // hintsilent _typeOfCursorTarget;

        _isVehicle = _cursorTarget isKindOf "AllVehicles";
        _isVehicletype = _typeOfCursorTarget in ["ATV_US_EP1","ATV_CZ_EP1"];
        _isnewstorage = _typeOfCursorTarget in DZE_isNewStorage;
        
        // get items && magazines only once
        _magazinesPlayer = magazines player;

        //boiled Water
        _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 = [];
        // find available keys
        _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;
        };

        // diag_log ("OWNERID = " + _ownerID + " CHARID = " + dayz_characterID + " " + str(_ownerID == dayz_characterID));
        
        // logic vars
        _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_maintain_area < 0) then {
                  s_player_maintain_area = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTAREA], "actions\maintain_area.sqf", "maintain", 5, false];
                 s_player_maintain_area_preview = player addAction [format["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_MAINTPREV], "actions\maintain_area.sqf", "preview", 5, false];
             };
         } else {
                player removeAction s_player_maintain_area;
                s_player_maintain_area = -1;
                player removeAction s_player_maintain_area_preview;
                s_player_maintain_area_preview = -1;
         };*/

        // CURSOR TARGET ALIVE
        if(_isAlive) then {
            
            //Allow player to delete objects
            if(_isDestructable || _isWreck || _isRemovable || _isWreckBuilding) then {
                if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
                    _player_deleteBuild = true;
                };
            };
            
            //Allow owners to delete modulars
                    if(_isModular && (dayz_characterID == _ownerID)) then {
                            if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
                                    _player_deleteBuild = true;
                            };
                    };
            //Allow owners to delete modular doors without locks
                    if(_isModularDoor && (dayz_characterID == _ownerID)) then {
                            if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
                                    _player_deleteBuild = true;
                            };        
                    };    
            // CURSOR TARGET VEHICLE
            if(_isVehicle) then {
                
                //flip vehicle small vehicles by your self && all other vehicles with help nearby
                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;
            };

            //diag_log format["CREW: %1 ALLOW: %2",(count (crew _cursorTarget)),_allowTow];

            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;
            };

            //diag_log format["HELI: %1 TARGET: %2",_found,_cursorTarget];

            _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;
            };
        };
        
        // Allow Owner to lock && unlock vehicle  
        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["<t color=#ff0000'>%1</t>",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];
                        if (_typeOfCursorTarget in ColourVehicles) then {
                                        private ["_paint"];
                                        _paint = player addAction ["<t color=#0059FF'>Paint Vehicle</t>", "Paint\player_paint_init.sqf", _cursorTarget, 2, true, true, "", "];
                                        s_player_lockunlock set [count s_player_lockunlock,_paint];
                                };
                        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 {
            //Allow player to force save
            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;
            };
        };
        
        
        //flip vehicle small vehicles by your self && all other vehicles with help nearby
        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;
        };
        
        //Allow player to fill jerrycan
        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;
        };
        
        // logic vars for addactions
        _player_butcher = false;
        _player_studybody = false;
        _player_SurrenderedGear = false;

        // CURSOR TARGET NOT ALIVE
        if (!_isAlive) then {

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

            // Study body
            if (_isMan && !_isZombie && !_isAnimal) then {
                _player_studybody = true;
            }
        } else {
            // unit alive

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


        // Human Gut animal || zombie
        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;
        };

        // Study Body
        if (_player_studybody) then {
                if (s_player_studybody < 0) then {
                        s_player_studybody = player addAction [("<t color="#FF0000"">"+("Check Wallet") + "</t>"), "ZSC\actions\check_wallet.sqf",_cursorTarget, 0, false, true, "","];
                };
        } else {
                player removeAction s_player_studybody;
                s_player_studybody = -1;
        };

        // logic vars
        _player_cook = false;
        _player_boil = false;

        // CURSOR TARGET IS FIRE
        if (inflamed _cursorTarget) then {
            
            //Fireplace Actions check
            if (_hasRawMeat) then {
                _player_cook = true;    
            };
            
            // Boil water
            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;
        };

        //Fireplace Actions check
        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;
        };
        
        // Boil water
        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;
        };
        
        //Packing my tent
        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;
        };

        //Allow manage door
        if((_typeOfCursorTarget in DZE_DoorsLocked)) then {
        if (s_player_manageDoor >= 0 && door_management_last != _cursorTarget) then {
                player removeAction s_player_manageDoor;
                s_player_manageDoor = -1;
            };
            if (s_player_manageDoor < 0) then {
                door_management_last = _cursorTarget;
                s_player_manageDoor = player addAction ["<t color='#0059FF'>Manage Door</t>", "doorManagement\initDoorManagement.sqf", _cursorTarget, 5, false];
            };
        } else {
            door_management_last = objNull;
            player removeAction s_player_manageDoor;
            s_player_manageDoor = -1;
        };
        
        //Allow owner to unlock vault
        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 ZSC_MoneyStorage && (player distance _cursorTarget < 5)) then {
            if (s_bank_dialog < 0) then {
                    s_bank_dialog = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];    
            };
        } else {
             player removeAction s_bank_dialog;
            s_bank_dialog = -1;
        };

        // cars
        if( _isVehicle && !_isMan &&_isAlive && !_isMan && !locked _cursorTarget && !(_cursorTarget isKindOf "Bicycle") && (player distance _cursorTarget < 5)) then {        
            if (s_bank_dialog2 < 0) then {
                s_bank_dialog2 = player addAction ["Money Storage", "ZSC\actions\bank_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
            };            
        } else {        
            player removeAction s_bank_dialog2;
            s_bank_dialog2 = -1;
        };    
        
    //Allow owner to change Door code

    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_ckc > 0) then {    
                    player removeAction s_player_ckc;
                    s_player_ckc = -1;
                };
            };

            if (s_player_ckc < 0) then {
                s_player_lastTarget set [1,_cursorTarget];    
                    s_player_ckc = player addaction["Set new Code", "ckc\ckc_startUI.sqf","",0,false,true,"", ""];
            };
        } else {
            player removeAction s_player_ckc;
            s_player_ckc = -1;
        };



    //Allow owner to change vault code

    _unlockedVault = ["VaultStorage"];

        if(typeOf(cursortarget) in _unlockedVault && _ownerID != "0" && (player distance _cursorTarget < 2)) then {
        
        if (s_player_Safe_ckc < 0) then {
        if ((typeOf(cursortarget) == "VaultStorage") &&(_ownerID == dayz_combination || _ownerID == dayz_playerUID)  ) then {
         
                    
                s_player_Safe_ckc = player addaction["Set new Code", "ckc\ckc_startSafeUI.sqf","",1,false,true,"", ""];
            };
            };
        } else {
            player removeAction s_player_Safe_ckc;
            s_player_Safe_ckc = -1;

        };

        //Allow owner to pack vault
        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["<t color=#ff0000'>%1</t>",(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;
        };

        

        //Player Deaths
        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)], "ZSC\actions\give_player_dialog.sqf",_cursorTarget, 3, true, true, "", ""];
                };
        } else {
                player removeAction s_givemoney_dialog;
                s_givemoney_dialog = -1;
        };
        
        //Fuel Pump
        if(_typeOfCursorTarget in dayz_fuelpumparray) then {    
            if (s_player_fuelauto < 0) then {
                
                // check if Generator_DZ is running within 30 meters
                _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);
                
                // show that pump needs power if no generator nearby.
                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];
                };
            };
        } else {
            player removeAction s_player_fuelauto;
            s_player_fuelauto = -1;
        };

        //Fuel Pump on truck
        if(_typeOfCursorTarget in DZE_fueltruckarray && alive _cursorTarget) then {    
            if (s_player_fuelauto2 < 0) then {
                // show that fuel truck pump needs power.
                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["<t color=#ff0000'>%1</t>",localize "STR_EPOCH_ACTIONS_NEEDPOWER], "",[], 0, false, true, "",""];
                };
            };
        } else {
            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;

        };

        // inplace upgrade tool
        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 = _cursorTarget;
                s_player_lastTarget set [0,_cursorTarget];
                s_player_upgrade_build = player addAction [format[localize "STR_EPOCH_ACTIONS_UPGRADE",_text], "custom\BuildVectors\action\player_upgrade.sqf",_cursorTarget, -1, false, true, "",""];
            };
        } else {
            player removeAction s_player_upgrade_build;
            s_player_upgrade_build = -1;
        };
        
        // downgrade system
        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], "custom\BuildVectors\action\player_buildingDowngrade.sqf",_cursorTarget, -2, false, true, "",""];
            };
        } else {
            player removeAction s_player_downgrade_build;
            s_player_downgrade_build = -1;
        };

        // inplace maintenance tool
        //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;
        //};


        //Start Generator
        if(_cursorTarget isKindOf "Generator_DZ") then {
            if (s_player_fillgen < 0) then {
                
                // check if not running
                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 {
                // check if not filled && player has jerry.
                    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;
        };

        //Towing with tow truck
        /*
        if(_typeOfCursorTarget == "TOW_DZE") then {
            if (s_player_towing < 0) then {
                if(!(_cursorTarget getVariable ["DZEinTow", false])) then {
                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_ATTACH" "\z\addons\dayz_code\actions\tow_AttachStraps.sqf",_cursorTarget, 0, false, true, "",""];                
                } else {
                    s_player_towing = player addAction [localize "STR_EPOCH_ACTIONS_DETACH", "\z\addons\dayz_code\actions\tow_DetachStraps.sqf",_cursorTarget, 0, false, true, "",""];                
                };
            };
        } else {
            player removeAction s_player_towing;
            s_player_towing = -1;
        };
        */


        //Sleep
        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;
        };
        
        //Repairing Vehicles
        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;
            };
        };

        // All Traders
        if (_isMan && !_isPZombie && _traderType in serverTraders) then {
            
            if (s_player_parts_crtl < 0) then {

                // get humanity
                _humanity = player getVariable ["humanity",0];
                _traderMenu = call compile format["menu_%1;",_traderType];

                // diag_log ("TRADER = " + str(_traderMenu));
                
                _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 {
                    
                    // Static Menu
                    {
                        //diag_log format["DEBUG TRADER: %1", _x];
                        _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 ["<t color=#0059FF'>Advanced Trading</t>", "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 {
            
            //Dog
            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 {
        //Engineering
        {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;

        //Others
        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;
        //Dog
        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;
        
        // vault
        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_ckc;
        s_player_ckc = -1;
        player removeAction s_player_Safe_ckc;
        s_player_Safe_ckc = -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_player_manageDoor;
        s_player_manageDoor = -1; // u might also want to add this to variables reset in your variables.sqf
        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;
    };

    //Dog actions on player self
    _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;
    };

    //----------PACK BIKE START----------
    _weapons = [currentWeapon player] + (weapons player) + (magazines player);
    _isBike = typeOf cursorTarget in ["MMT_Civ"];

    if((_isBike) and _canDo) then {
    if (s_player_deploybike2 < 0) then {
            s_player_deploybike2 = player addaction[("<t color="#007ab7"">" + ("Pack Bike") +"</t>"),"pack.sqf","",5,false,true,"", "];
        };
    } else {
        player removeAction s_player_deploybike2;
        s_player_deploybike2 = -1;
    };
    //----------PACK BIKE END----------

  7. Can anyone tell me why it shows up like this in notepad++?

     

    raP       ¦_   version     Mission Z    Intro b[   OutroWin Î\   OutroLoose :^  ¦_   addOns A3_Soft_F_Car  A3_Soft_F_Quadbike  a3_soft_f_beta_quadbike  A3_Boat_F_Civilian_Boat  A3_Boat_F_Boat_Transport_01  A3_Air_F_Heli_Light_01  A3_Air_F_Heli_Heli_Transport_04  A3_Air_F_Heli_Heli_Transport_03  aia_chernarus_config  a3_characters_f_gamma  A3_Characters_F_OPFOR  A3_Characters_F_INDEP  A3_Characters_F_Civil  A3_epoch_config  A3_Modules_F_Curator_Curator  a3_characters_f  A3_Data_F_Curator_Virtual addOnsAuto a3_epoch_config  aia_chernarus_config randomSeed Ñ™·  Intel k   Groups š   Markers ZZ  b[   briefingName Epoch Mod resistanceWest     timeOfChanges €p  startWeather     startWind     forecastWeather     forecastWind     forecastWaves     wavesForced    windForced    year ó  month    day    hour    minute 7   startFogDecay ôýT<forecastFogDecay ôýT<š   eitems d    Item0 R   Item1 $       Item2 ö       Item3 È


       Item4 š   Item5 l   Item6 >
       Item7    Item8 â   Item9 ´   Item10 †   Item11 X   Item12 *   Item13 ü   Item14 Π  Item15     Item16 r   Item17 D   Item18    Item19 è   Item20 º   Item21 Œ   Item22 ^   Item23 0   Item24    Item25 Ô   Item26 ¦   Item27 x   Item28 J   Item29     Item30 î    Item31 À!   Item32 ’"   Item33 d#   Item34 6$   Item35 %   Item36 Ú%   Item37 ¬&   Item38 ~'   Item39 P(   Item40 ")   Item41 ô)   Item42 Æ*   Item43 ˜+   Item44 j,   Item45 <-   Item46 .   Item47 à.   Item48 ²/   Item49 „0   Item50 V1   Item51 (2   Item52 ú2   Item53 Ì3   Item54 ž4   Item55 p5   Item56 B6   Item57 7   Item58 æ7   Item59 ¸8   Item60 Š9   Item61 \:   Item62 .;   Item63  <   Item64 Ò<   Item65 ¤=   Item66 v>   Item67 H?   Item68 @   Item69 ì@   Item70 ¾A   Item71 B   Item72 bC   Item73 4D   Item74 E   Item75 ØE   Item76 ªF   Item77 |G   Item78 NH   Item79  I   Item80 òI   Item81 ÄJ   Item82 –K   Item83 hL   Item84 :M   Item85 N   Item86 ÞN   Item87 °O   Item88 ‚P   Item89 TQ   Item90 &R   Item91 øR   Item92 ÊS   Item93 œT   Item94 nU   Item95 @V   Item96 W   Item97 äW   Item98 ¶X   Item99 ˆY  ZZ   side CIV  Vehicles q  $       items     Item0 Ž  $           position zVDþ•º@ üDazimut vÙC special NONE id     side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?$       side CIV  Vehicles C      ö       items     Item0 `      ö           position R“DNÔº@+ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ö       side CIV  Vehicles
      È
       items     Item0 2
      È
           position "+€Dì›»@—ºüDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?È
       side CIV  Vehicles ç
      š   items     Item0   š       position ƒÅ€Dûß¼@7ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?š   side CIV  Vehicles ¹  l   items     Item0 Ö  l       position „D‰Íº@ó9ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?l   side CIV  Vehicles ‹  >
       items     Item0 ¨  >
           position ™^Dï°º@‡VýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?>
       side CIV  Vehicles ]
         items     Item0 z
             position 6j€D¬2¼@+_ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?   side CIV  Vehicles /  â   items     Item0 L  â       position Õ“€DYr¼@ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?â   side CIV  Vehicles   ´   items     Item0   ´       position -g€D¼@5ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?´   side CIV  Vehicles Ó  †   items     Item0 ð  †       position kÍ€DIè¼@—ýDazimut ÝŸC special NONE id        side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?†   side CIV  Vehicles ¥  X   items     Item0   X       position 9DÇAº@SØüDazimut ÝŸC special NONE id
       side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?X   side CIV  Vehicles w  *   items     Item0 ”  *       position ò5D°tº@;½üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?*   side CIV  Vehicles I  ü   items     Item0 f  ü       position #ÇD‰»@2ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ü   side CIV  Vehicles   Π  items     Item0 8  Π      position Ù‰D›Êº@OêüDazimut ÝŸC special NONE id
       side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Π  side CIV  Vehicles í      items     Item0
              position êÙD—»@óýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?    side CIV  Vehicles ¿  r   items     Item0 Ü  r       position …6€D>³»@lüDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?r   side CIV  Vehicles ‘  D   items     Item0 ®  D       position š¨Dêº@lüDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?D   side CIV  Vehicles c     items     Item0 €         position åH€DàØ»@?NüDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?   side CIV  Vehicles 5  è   items     Item0 R  è       position tG€DÒí»@fýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?è   side CIV  Vehicles   º   items     Item0 $  º       position qŽ€Dúz¼@ŸYýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?º   side CIV  Vehicles Ù  Œ   items     Item0 ö  Œ       position Ì€Dkx»@GýDazimut vÙC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Œ   side CIV  Vehicles «  ^   items     Item0 È  ^       position ;ÑD²»@‡ªüDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?^   side CIV  Vehicles }  0   items     Item0 š  0       position õ€DïU»@K¨üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?0   side CIV  Vehicles O     items     Item0 l         position žw€D¯E¼@oFýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?   side CIV  Vehicles !  Ô   items     Item0 >  Ô       position ŸD]àº@˜üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Ô   side CIV  Vehicles ó  ¦   items     Item0   ¦       position ¼T€D$ ¼@ÿKýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¦   side CIV  Vehicles Å  x   items     Item0 â  x       position ½´€D\Ƽ@¯PýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?x   side CIV  Vehicles —  J   items     Item0 ´  J       position -¶€D¯¸¼@#ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?J   side CIV  Vehicles i      items     Item0 †          position µ€D@P»@Û(ýDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?    side CIV  Vehicles ;   î    items     Item0 X   î        position K~Dľº@üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?î    side CIV  Vehicles
    !  À!   items     Item0 *!  À!       position …[€Dÿ»@›–üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?À!   side CIV  Vehicles ß!  ’"   items     Item0 ü!  ’"       position 5˜€DP{¼@W¤üDazimut ÝŸC special NONE id    side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?’"   side CIV  Vehicles ±"  d#   items     Item0 Î"  d#       position ŠÛDA»@³âüDazimut ÝŸC special NONE id     side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?d#   side CIV  Vehicles ƒ#  6$   items     Item0  #  6$       position Š~D¿º@?µüDazimut ÝŸC special NONE id !   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?6$   side CIV  Vehicles U$  %   items     Item0 r$  %       position Z9D-xº@ëîüDazimut ÝŸC special NONE id "   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?%   side CIV  Vehicles '%  Ú%   items     Item0 D%  Ú%       position 6P€DÜç»@ŸýDazimut ÝŸC special NONE id #   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Ú%   side CIV  Vehicles ù%  ¬&   items     Item0 &  ¬&       position M€D.d»@¯wýDazimut ÝŸC special NONE id $   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¬&   side CIV  Vehicles Ë&  ~'   items     Item0 è&  ~'       position ™>D‰º@“AýDazimut ÝŸC special NONE id %   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?~'   side CIV  Vehicles '  P(   items     Item0 º'  P(       position =€Dòh¼@‡uüDazimut ÝŸC special NONE id &   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?P(   side CIV  Vehicles o(  ")   items     Item0 Œ(  ")       position Åt€D¼2¼@ëýDazimut ÝŸC special NONE id '   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?")   side CIV  Vehicles A)  ô)   items     Item0 ^)  ô)       position TM€Dõá»@?µüDazimut vÙC special NONE id (   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ô)   side CIV  Vehicles *  Æ*   items     Item0 0*  Æ*       position Ü~Dɺ@7ÁüDazimut ÝŸC special NONE id )   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Æ*   side CIV  Vehicles å*  ˜+   items     Item0 +  ˜+       position Z´Döº@÷ÌüDazimut ÝŸC special NONE id *   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?˜+   side CIV  Vehicles ·+  j,   items     Item0 Ô+  j,       position )Dljº@G^ýDazimut ÝŸC special NONE id +   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?j,   side CIV  Vehicles ‰,  <-   items     Item0 ¦,  <-       position ž,€D
    ¡»@&ýDazimut ÝŸC special NONE id ,   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?<-   side CIV  Vehicles [-  .   items     Item0 x-  .       position ùKDž¦º@/pýDazimut ÝŸC special NONE id -   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?.   side CIV  Vehicles -.  à.   items     Item0 J.  à.       position ʨD”ûº@«RýDazimut ÝŸC special NONE id .   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?à.   side CIV  Vehicles ÿ.  ²/   items     Item0 /  ²/       position Íž€D9“¼@>ýDazimut ÝŸC special NONE id /   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?²/   side CIV  Vehicles Ñ/  „0   items     Item0 î/  „0       position (€DŠ»@ƒ?ýDazimut ÝŸC special NONE id 0   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?„0   side CIV  Vehicles £0  V1   items     Item0 À0  V1       position N?€D<Å»@«    ýDazimut ÝŸC special NONE id 1   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?V1   side CIV  Vehicles u1  (2   items     Item0 ’1  (2       position š
    D«Pº@ƒ/ýDazimut ÝŸC special NONE id 2   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?(2   side CIV  Vehicles G2  ú2   items     Item0 d2  ú2       position &€Du»@;ÛüDazimut ÝŸC special NONE id 3   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ú2   side CIV  Vehicles 3  Ì3   items     Item0 63  Ì3       position YÚD 5»@fýDazimut ÝŸC special NONE id 4   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Ì3   side CIV  Vehicles ë3  ž4   items     Item0 4  ž4       position ,€DÂf»@ƒuüDazimut ÝŸC special NONE id 5   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ž4   side CIV  Vehicles ½4  p5   items     Item0 Ú4  p5       position Ý!€D3¤»@ÛoýDazimut ÝŸC special NONE id 6   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?p5   side CIV  Vehicles 5  B6   items     Item0 ¬5  B6       position Ua€Dì
    ¼@ûÿüDazimut ÝŸC special NONE id 7   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?B6   side CIV  Vehicles a6  7   items     Item0 ~6  7       position ݪ€D¡¼@ ýDazimut ÝŸC special NONE id 8   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?7   side CIV  Vehicles 37  æ7   items     Item0 P7  æ7       position ªMD®Žº@ÿ$ýDazimut ÝŸC special NONE id 9   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?æ7   side CIV  Vehicles 8  ¸8   items     Item0 "8  ¸8       position R0D”º@çŒýDazimut ÝŸC special NONE id :   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¸8   side CIV  Vehicles ×8  Š9   items     Item0 ô8  Š9       position ð3€DkÀ»@VýDazimut ÝŸC special NONE id ;   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Š9   side CIV  Vehicles ©9  \:   items     Item0 Æ9  \:       position Ý5€Dæ±»@—üDazimut vÙC special NONE id <   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?\:   side CIV  Vehicles {:  .;   items     Item0 ˜:  .;       position ¦<€DÌ¿»@ÿÔüDazimut ÝŸC special NONE id =   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?.;   side CIV  Vehicles M;   <   items     Item0 j;   <       position Å €D*E»@¯ÈüDazimut ÝŸC special NONE id >   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™? <   side CIV  Vehicles <  Ò<   items     Item0 <<  Ò<       position M«€Dj¢¼@³ðüDazimut ÝŸC special NONE id ?   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?Ò<   side CIV  Vehicles ñ<  ¤=   items     Item0 =  ¤=       position     YDž˜º@[×üDazimut ÝŸC special NONE id @   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¤=   side CIV  Vehicles Ã=  v>   items     Item0 à=  v>       position ºŠD™åº@wlýDazimut ÝŸC special NONE id A   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?v>   side CIV  Vehicles •>  H?   items     Item0 ²>  H?       position ›‡€D8^¼@c.ýDazimut ÝŸC special NONE id B   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?H?   side CIV  Vehicles g?  @   items     Item0 „?  @       position ZuD‹Øº@W†ýDazimut ÝŸC special NONE id C   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?@   side CIV  Vehicles 9@  ì@   items     Item0 V@  ì@       position þ?€Dл@¯;ýDazimut ÝŸC special NONE id D   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ì@   side CIV  Vehicles A  ¾A   items     Item0 (A  ¾A       position ‹†€D"W¼@ûüDazimut ÝŸC special NONE id E   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¾A   side CIV  Vehicles ÝA  B   items     Item0 úA  B       position šiD•©º@3ýDazimut ÝŸC special NONE id F   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?B   side CIV  Vehicles ¯B  bC   items     Item0 ÌB  bC       position …­€Dô¦¼@K½üDazimut ÝŸC special NONE id G   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?bC   side CIV  Vehicles C  4D   items     Item0 žC  4D       position Ý€DØr»@?]ýDazimut ÝŸC special NONE id H   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?4D   side CIV  Vehicles SD  E   items     Item0 pD  E       position -g€Då¼@¯züDazimut ÝŸC special NONE id I   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?E   side CIV  Vehicles %E  ØE   items     Item0 BE  ØE       position íDj>»@‡IýDazimut ÝŸC special NONE id J   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ØE   side CIV  Vehicles ÷E  ªF   items     Item0 F  ªF       position c€Du¼@?ÍüDazimut ÝŸC special NONE id K   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ªF   side CIV  Vehicles ÉF  |G   items     Item0 æF  |G       position zºDœ»@_~ýDazimut ÝŸC special NONE id L   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?|G   side CIV  Vehicles ›G  NH   items     Item0 ¸G  NH       position !€DI‡»@YüDazimut ÝŸC special NONE id M   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?NH   side CIV  Vehicles mH   I   items     Item0 ŠH   I       position ýˆ€D$\¼@OÂüDazimut ÝŸC special NONE id N   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™? I   side CIV  Vehicles ?I  òI   items     Item0 \I  òI       position ™DÉ\º@ÛýDazimut ÝŸC special NONE id O   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?òI   side CIV  Vehicles J  ÄJ   items     Item0 .J  ÄJ       position j¹DPûº@'ýDazimut ÝŸC special NONE id P   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ÄJ   side CIV  Vehicles ãJ  –K   items     Item0  K  –K       position n,€D”ž»@/òüDazimut ÝŸC special NONE id Q   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?–K   side CIV  Vehicles µK  hL   items     Item0 ÒK  hL       position ¾N€DÚä»@÷ëüDazimut ÝŸC special NONE id R   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?hL   side CIV  Vehicles ‡L  :M   items     Item0 ¤L  :M       position Rð~D0º@sùüDazimut ÝŸC special NONE id S   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?:M   side CIV  Vehicles YM  N   items     Item0 vM  N       position •€DÔF»@ïùüDazimut ÝŸC special NONE id T   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?N   side CIV  Vehicles +N  ÞN   items     Item0 HN  ÞN       position õº€Dz¼@¿ÐüDazimut ÝŸC special NONE id U   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ÞN   side CIV  Vehicles ýN  °O   items     Item0 O  °O       position t€Di2¼@ÓàüDazimut ÝŸC special NONE id V   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?°O   side CIV  Vehicles ÏO  ‚P   items     Item0 ìO  ‚P       position ÏD…»@·}üDazimut ÝŸC special NONE id W   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?‚P   side CIV  Vehicles ¡P  TQ   items     Item0 ¾P  TQ       position }~€D£F¼@k‘üDazimut ÝŸC special NONE id X   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?TQ   side CIV  Vehicles sQ  &R   items     Item0 Q  &R       position ͘€D‡|¼@›ÙüDazimut ÝŸC special NONE id Y   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?&R   side CIV  Vehicles ER  øR   items     Item0 bR  øR       position ú9DÐxº@›‹üDazimut ÝŸC special NONE id Z   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?øR   side CIV  Vehicles S  ÊS   items     Item0 4S  ÊS       position ÊøD3<»@sbüDazimut ÝŸC special NONE id [   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ÊS   side CIV  Vehicles éS  œT   items     Item0 T  œT       position ÍY€Dû»@cüDazimut ÝŸC special NONE id \   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?œT   side CIV  Vehicles »T  nU   items     Item0 ØT  nU       position 2
    DâGº@‡£üDazimut ÝŸC special NONE id ]   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?nU   side CIV  Vehicles U  @V   items     Item0 ªU  @V       position %¥€DÍ•¼@w†üDazimut ÝŸC special NONE id ^   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?@V   side CIV  Vehicles _V  W   items     Item0 |V  W       position •"€DiŠ»@/‡üDazimut ÝŸC special NONE id _   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?W   side CIV  Vehicles 1W  äW   items     Item0 NW  äW       position ùs€D1¼@‹±üDazimut ÝŸC special NONE id `   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?äW   side CIV  Vehicles X  ¶X   items     Item0  X  ¶X       position „G€DÖ»@ï}üDazimut ÝŸC special NONE id a   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?¶X   side CIV  Vehicles ÕX  ˆY   items     Item0 òX  ˆY       position öDd9»@׌üDazimut ÝŸC special NONE id b   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ˆY   side CIV  Vehicles §Y  ZZ   items     Item0 ÄY  ZZ       position ƒ†€DW¼@÷düDazimut ÝŸC special NONE id c   side CIV vehicle VirtualMan_EPOCH player PLAY CDG leader    skill š™?ZZ   items     Item0 Z   Item1 ÈZ   Item2 [  b[   position DÅÙE =¢C¨gF name center type Empty ÈZ   position =€D    RðüD name respawn_east type Empty angle 4Þ¼A[   position 5€DN{»@§ðüD name respawn_west type Empty angle 4Þ¼Ab[   addOns aia_chernarus_config addOnsAuto aia_chernarus_config randomSeed C›Ò  Intel Æ[  Î\   timeOfChanges áDstartWeather š™™>startWind ÍÌÌ=startWaves ÍÌÌ=forecastWeather š™™>forecastWind ÍÌÌ=forecastWaves ÍÌÌ=forecastLightnings ÍÌÌ=year ó  month    day    hour    minute     startFogDecay ôýT<forecastFogDecay ôýT<Î\   addOns aia_chernarus_config addOnsAuto aia_chernarus_config randomSeed êG  Intel 2]  :^   timeOfChanges áDstartWeather š™™>startWind ÍÌÌ=startWaves ÍÌÌ=forecastWeather š™™>forecastWind ÍÌÌ=forecastWaves ÍÌÌ=forecastLightnings ÍÌÌ=year ó  month    day    hour    minute     startFogDecay ôýT<forecastFogDecay ôýT<:^   addOns aia_chernarus_config addOnsAuto aia_chernarus_config randomSeed ¤  Intel ž^  ¦_   timeOfChanges áDstartWeather š™™>startWind ÍÌÌ=startWaves ÍÌÌ=forecastWeather š™™>forecastWind ÍÌÌ=forecastWaves ÍÌÌ=forecastLightnings ÍÌÌ=year ó  month    day    hour    minute     startFogDecay ôýT<forecastFogDecay ôýT<¦_    

  8. sometimes, when you have two doors very near to to each other, and you look from the first to the second... the "Manage Door" action wont refresh, so the second door will show the list of the first one.

     

    here is a fix for that:

     

     

    1. in "fn_selfActions.sqf", put:

            if (s_player_manageDoor >= 0 && door_management_last != _cursorTarget) then {
                player removeAction s_player_manageDoor;
                s_player_manageDoor = -1;
            };

    AFTER

        if (_typeOfCursorTarget in DZE_DoorsLocked) then {

    2. also in "fn_selfActions.sqf", put:

                door_management_last = _cursorTarget;

    AFTER

            if (s_player_manageDoor < 0) then {

    3. still in "fn_selfActions.sqf", put:

            door_management_last = objNull;

    BETWEEN this:

        } else {
            player removeAction s_player_manageDoor;
            s_player_manageDoor = -1;
        };
    

    so it will look like this:

        } else {
            door_management_last = objNull;
            player removeAction s_player_manageDoor;
            s_player_manageDoor = -1;
        };

    4. and in "variabls.sqf" put:

        door_management_last = objNull;

    AFTER

        s_player_manageDoor = -1;

    this change will force the script to check if the current door youre looking at is still the same. if not: it refreshes the action with the new door as parameter.

    Thank you Bang for this but there is another problem.   This makes it to where i can manage doors and use the eyescan once i add myself to them but i am admin so i can do all doors.  Players that set their doors cant manage them and cant use the eyescan unless i add them to the door.

  9. I already have that added in but it still gives me the message.  Here is my player_upgrade.sqf

    /*
    	DayZ Base Building Upgrades
    	Made for DayZ Epoch please ask permission to use/edit/distrubute email [email protected].
    */
    private ["_location","_dir","_classname","_missing","_text","_proceed","_num_removed","_object","_missingQty","_itemIn","_countIn","_qty","_removed","_removed_total","_tobe_removed_total","_objectID","_objectUID","_temp_removed_array","_textMissing","_newclassname","_requirements","_obj","_upgrade","_lockable","_combination_1","_combination_2","_combination_3","_combination","_objectCharacterID","_canBuildOnPlot","_friendlies","_nearestPole","_ownerID","_distance","_needText","_findNearestPoles","_findNearestPole","_IsNearPlot"];
    
    if(DZE_ActionInProgress) exitWith { cutText [(localize "str_epoch_player_52") , "PLAIN DOWN"]; };
    DZE_ActionInProgress = true;
    
    player removeAction s_player_upgrade_build;
    s_player_upgrade_build = 1;
    
    
    _distance = 30;
    _needText = localize "str_epoch_player_246";
    
    // check for near plot
    _findNearestPoles = nearestObjects [(vehicle player), ["Plastic_Pole_EP1_DZ"], _distance];
    _findNearestPole = [];
    
    {
    	if (alive _x) then {
    		_findNearestPole set [(count _findNearestPole),_x];
    	};
    } count _findNearestPoles;
    
    _IsNearPlot = count (_findNearestPole);
    
    _canBuildOnPlot = false;
    
    if(_IsNearPlot == 0) then {
    	_canBuildOnPlot = true;
    } else {
    	
    	// check nearby plots ownership && then for friend status
    	_nearestPole = _findNearestPole select 0;
    
    	// Find owner 
    	_ownerID = _nearestPole getVariable["CharacterID","0"];
    
    	// diag_log format["DEBUG BUILDING: %1 = %2", dayz_characterID, _ownerID];
    
    	// check if friendly to owner
    	if(dayz_characterID == _ownerID) then {
    		_canBuildOnPlot = true;		
    	} else {
    		_friendlies		= player getVariable ["friendlyTo",[]];
    		// check if friendly to owner
    		if(_ownerID in _friendlies) then {
    			_canBuildOnPlot = true;
    		};
    	};
    };
    
    // exit if not allowed due to plot pole
    if(!_canBuildOnPlot) exitWith {  DZE_ActionInProgress = false; cutText [format[(localize "str_epoch_player_157"),_needText,_distance] , "PLAIN DOWN"]; };
    
    // get cursortarget from addaction
    _obj = _this select 3;
    
    // Find objectID
    _objectID 	= _obj getVariable ["ObjectID","0"];
    
    // Find objectUID
    _objectUID	= _obj getVariable ["ObjectUID","0"];
    
    if(_objectID == "0" && _objectUID == "0") exitWith {DZE_ActionInProgress = false; s_player_upgrade_build = -1; cutText [(localize "str_epoch_player_50"), "PLAIN DOWN"];};
    
    // Get classname
    _classname = typeOf _obj;
    
    // Find display name
    _text = getText (configFile >> "CfgVehicles" >> _classname >> "displayName");
    
    // Find next upgrade
    _upgrade = getArray (configFile >> "CfgVehicles" >> _classname >> "upgradeBuilding");
    
    if ((count _upgrade) > 0) then {
    
    	_newclassname = _upgrade select 0;
    
    	_lockable = 0;
    	if(isNumber (configFile >> "CfgVehicles" >> _newclassname >> "lockable")) then {
    		_lockable = getNumber(configFile >> "CfgVehicles" >> _newclassname >> "lockable");
    	};
    
    	_requirements = _upgrade select 1;
    	
    	_missingQty = 0;
    	_missing = "";
    	
    	_proceed = true;
    	{
    		_itemIn = _x select 0;
    		_countIn = _x select 1;
    		_qty = { (_x == _itemIn) || (configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn) } count magazines player;
    		if(_qty < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _qty); _proceed = false; };
    	} forEach _requirements;
    	
    	if (_proceed) then {
    		[1,1] call dayz_HungerThirst;
    		player playActionNow "Medic";
    		[player,20,true,(getPosATL player)] spawn player_alertZombies;
    	
    		_temp_removed_array = [];
    		_removed_total = 0;
    		_tobe_removed_total = 0;
    		
    		{
    			_removed = 0;
    			_itemIn = _x select 0;
    			_countIn = _x select 1;
    			// diag_log format["Recipe Finish: %1 %2", _itemIn,_countIn];
    			_tobe_removed_total = _tobe_removed_total + _countIn;
    
    			{					
    				if( (_removed < _countIn) && ((_x == _itemIn) || configName(inheritsFrom(configFile >> "cfgMagazines" >> _x)) == _itemIn)) then {
    					_num_removed = ([player,_x] call BIS_fnc_invRemove);
    					_removed = _removed + _num_removed;
    					_removed_total = _removed_total + _num_removed;
    					if(_num_removed >= 1) then {
    						_temp_removed_array set [count _temp_removed_array,_x];
    					};
    				};
    		
    			} forEach magazines player;
    
    		} forEach _requirements;
    
    		// all parts removed proceed
    		if (_tobe_removed_total == _removed_total) then {
    			
    			// Get position
    			_location	= _obj getVariable["OEMPos",(getposATL _obj)];
    
    			// Get direction
    			_dir = getDir _obj;
    
    			// Current charID
    			_objectCharacterID 	= _obj getVariable ["CharacterID","0"];
    
    			_classname = _newclassname;
    			
    			// Create new object 
    			_object = createVehicle [_classname, [0,0,0], [], 0, "CAN_COLLIDE"];
    
    			// Set direction
    			_object setDir _dir;
    
    			// Set location
    			_object setPosATL _location;
    
    			if (_lockable == 3) then {
    
    				_combination_1 = floor(random 10);
    				_combination_2 = floor(random 10);
    				_combination_3 = floor(random 10);
    				_combination = format["%1%2%3",_combination_1,_combination_2,_combination_3];
    				
    				_objectCharacterID = _combination;
    				
    				cutText [format[(localize "str_epoch_player_158"),_combination,_text], "PLAIN DOWN", 5];
    			} else {	
    				cutText [format[(localize "str_epoch_player_159"),_text], "PLAIN DOWN", 5];
    			};
    
    			PVDZE_obj_Swap = [_objectCharacterID,_object,[_dir,_location],_classname,_obj,player];
    			publicVariableServer "PVDZE_obj_Swap";
    
    			player reveal _object;
                _friendUID = getPlayerUID player;
                _friendName = name  player;
                _friends = [[_friendUID,_friendName]] ; 
    
    
                _object setVariable ["doorfriends", _friends, true];
                PVDZE_veh_Update = [_object,"gear"];
                publicVariableServer "PVDZE_veh_Update";
                PVDZE_veh_Update call server_updateObject;			
    			
    		} else {
    		
    			{player addMagazine _x;} count _temp_removed_array;
    			cutText [format[(localize "str_epoch_player_145"),_removed_total,_tobe_removed_total], "PLAIN DOWN"];
    		
    		};
    	} else {
    		_textMissing = getText(configFile >> "CfgMagazines" >> _missing >> "displayName");
    		cutText [format[(localize "str_epoch_player_146"),_missingQty, _textMissing], "PLAIN DOWN"];
    	};
    
    } else {
    	cutText [(localize "str_epoch_player_82"), "PLAIN DOWN"];
    };
    
    DZE_ActionInProgress = false;
    s_player_upgrade_build = -1;
    
  10. Hey, awesome script :)

     

    but got still problems with it. Iam NOT using the plot4live script because after install that, a few of my other scripts doesnt work.

     

    So i tried this without plot4live.

     

    i followed the instructions and i can still open the doors with the manuel option (combination lock).

     

    But when i use the Eye scanner i got: "Eye Scan FAILED."

    And when i tried to manage i got: "You do not have the rights to manage."

     

    any ideas?

    I am having the exact same issue.  I tried removing the lock and putting the lock back on the door but still get the same message.  Anyone have a fix for this?

×
×
  • Create New...