Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
actioncoverheadtarget.c
Go to the documentation of this file.
8
10{
12 {
14 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_COVERHEAD_TARGET;
15 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
16 //m_Animation = "INJECTEPIPENS";
17 m_SpecialtyWeight = UASoftSkillsWeight.ROUGH_LOW;
18 m_Text = "#put_on_targets_head";
19 }
20
27
28 override bool ActionCondition( PlayerBase player, ActionTarget target, ItemBase item )
29 {
30 PlayerBase targetPlayer;
31 Class.CastTo(targetPlayer, target.GetObject());
32 if ( !IsWearingHeadgear(targetPlayer) )
33 {
34 return true;
35 }
36
37 return false;
38 }
39
40 override void OnFinishProgressServer( ActionData action_data )
41 {
42 PlayerBase ntarget;
43
44 if (Class.CastTo(ntarget, action_data.m_Target.GetObject()) && CanReceiveAction(action_data.m_Target))
45 {
46 CoverHeadOfTargetPlayerLambda lambda = new CoverHeadOfTargetPlayerLambda(action_data.m_MainItem, "BurlapSackCover", ntarget);
47 action_data.m_Player.ServerReplaceItemInHandsWithNewElsewhere(lambda);
48 }
49 }
50
52 {
53 if ( player.GetInventory().FindAttachment(InventorySlots.HEADGEAR) )
54 {
55 return true;
56 }
57 return false;
58 }
59};
60
62{
64
65 void CoverHeadOfTargetPlayerLambda (EntityAI old_item, string new_item_type, PlayerBase player)
66 {
67 m_TargetPlayer = player;
68
70 targetAtt.SetAttachment(m_TargetPlayer, NULL, InventorySlots.HEADGEAR);
71 OverrideNewLocation(targetAtt);
72 }
73};
ActionBase ActionData
Definition actionbase.c:30
class ActionTargets ActionTarget
ActionData m_ActionData
string m_Text
Definition actionbase.c:64
ref CCIBase m_ConditionItem
Definition actionbase.c:70
float m_SpecialtyWeight
Definition actionbase.c:83
ref CCTBase m_ConditionTarget
Definition actionbase.c:71
bool CanReceiveAction(ActionTarget target)
Definition actionbase.c:805
int m_StanceMask
Definition actionbase.c:68
override void CreateActionComponent()
override void OnFinishProgressServer(ActionData action_data)
bool IsWearingHeadgear(PlayerBase player)
override void CreateConditionComponents()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition cctman.c:2
Super root of all classes in Enforce script.
Definition enscript.c:11
void CoverHeadOfTargetPlayerLambda(EntityAI old_item, string new_item_type, PlayerBase player)
InventoryLocation.
proto native void SetAttachment(notnull EntityAI parent, EntityAI e, int slotId)
provides access to slot configuration
const float DEFAULT
const float COVER_HEAD
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.