Files
DayZ-Epoch/SQF/dayz_code/actions/userActionConditions.sqf
ebayShopper 90487cde10 Update player_fired.sqf
Vanilla commits:

70fc007062

f327c99b02
2017-11-22 12:49:06 -05:00

34 lines
1.8 KiB
Plaintext

#define CAN_DO (!r_drag_sqf && !r_player_unconscious && getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder") != 1)
#define HAS_TOOLBOX ("ItemToolbox" in items player)
#define IN_VEHICLE (vehicle player != player)
#define IS_ALIVE (damage _object < 1)
#define IS_DAMAGED (damage _object > 0)
#define IS_PZOMBIE (player isKindOf "PZombie_VB")
/*
(['Butcher',this] call userActionConditions)
Return - must be true for action to show.
*/
private ["_action","_object","_show"];
_action = _this select 0;
_object = _this select 1;
_show = switch _action do {
case "Butcher": {!alive _object && !IN_VEHICLE && CAN_DO && !(_object getVariable["meatHarvested",false]) && !IS_PZOMBIE};
case "Drink": {!IN_VEHICLE && CAN_DO && !dayz_isSwimming};
case "PushPlane": {!IN_VEHICLE && {IS_ALIVE} && {CAN_DO} && {count crew _object == 0} && {!isEngineOn _object} && {!IS_PZOMBIE}};
//case "Repair": {!IN_VEHICLE && {IS_ALIVE} && {CAN_DO} && {_object != dayz_myCursorTarget} && {HAS_TOOLBOX}};
//case "Salvage": {!IN_VEHICLE && {IS_ALIVE} && {CAN_DO} && {_object != dayz_myCursorTarget} && {HAS_TOOLBOX} && {DZE_salvageLocked or !locked _object}};
//Built Items (Fence,Gates)
//case "ObjectUpgrade": {CAN_DO && !IN_VEHICLE && !(_object getVariable["BuildLock",false])};
//case "ObjectMaintenance": {CAN_DO && !IN_VEHICLE && (_object getVariable["Maintenance",false] or IS_DAMAGED)};
//case "ObjectDisassembly": {CAN_DO && !IN_VEHICLE && HAS_TOOLBOX && !(_object getVariable["BuildLock",false]) && (((getPlayerUID player) in (_object getVariable["ownerArray",[]])) or (count (_object getVariable["ownerArray",[]]) == 0) or (typeOf _object in ["WoodenFence_1_foundation","WoodenGate_foundation"]))};
//Turrets
//case "AddAmmo": {IS_ALIVE && CAN_DO && IN_VEHICLE && (((assignedVehicleRole player) select 0) == 'Turret')};
default {false};
};
_show