DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionUngagTarget.c
См. документацию.
2{
4 {
6 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_COVERHEAD_TARGET;
7 //m_FullBody = true;
8 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
9 m_Text = "#ungag_person";
10 }
11
13 {
14
17 }
18
19 override typename GetInputType()
20 {
22 }
23
24 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
25 {
26 PlayerBase targetPlayer;
27 if (Class.CastTo(targetPlayer, target.GetObject()))
28 {
29 if (IsWearingGag(targetPlayer) && null == player.GetHumanInventory().GetEntityInHands())
30 {
31 return true;
32 }
33 }
34 return false;
35 }
36
37 override void OnFinishProgressServer(ActionData action_data)
38 {
39 PlayerBase ntarget = PlayerBase.Cast(action_data.m_Target.GetObject());
40 if (CanReceiveAction(action_data.m_Target))
41 {
42 EntityAI attachment;
43 Class.CastTo(attachment, ntarget.GetInventory().FindAttachment(InventorySlots.MASK));
44
45 if (attachment && attachment.GetType() == "MouthRag")
46 {
47 UngagSelfLambda lamb = new UngagSelfLambda(attachment, "Rag", action_data.m_Player);
48 lamb.SetTransferParams(true, true, true, false, 1);
49 action_data.m_Player.ServerReplaceItemElsewhereWithNewInHands(lamb);
50 }
51 }
52 }
53
55 {
56 EntityAI attachment;
57 Class.CastTo(attachment, player.GetInventory().FindAttachment(InventorySlots.MASK));
58 if (attachment && attachment.GetType() == "MouthRag")
59 {
60 return true;
61 }
62 return false;
63 }
64};
ActionBase ActionData
Определения ActionBase.c:30
class ActionTargets ActionTarget
int m_StanceMask
Определения ActionBase.c:62
string m_Text
Определения ActionBase.c:58
ref CCIBase m_ConditionItem
Определения ActionBase.c:64
bool CanReceiveAction(ActionTarget target)
Определения ActionBase.c:793
ref CCTBase m_ConditionTarget
Определения ActionBase.c:65
void ActionContinuousBase()
Определения ActionContinuousBase.c:124
bool IsWearingGag(PlayerBase player)
Определения ActionUngagTarget.c:54
override void CreateConditionComponents()
Определения ActionUngagTarget.c:12
void ActionUngagTarget()
Определения ActionUngagTarget.c:3
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionUngagTarget.c:24
override void OnFinishProgressServer(ActionData action_data)
Определения ActionUngagTarget.c:37
override GetInputType()
Определения ActionUngagTarget.c:19
int m_CommandUID
Определения AnimatedActionBase.c:143
Определения CCINone.c:2
Определения CCTMan.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения Building.c:6
provides access to slot configuration
Определения InventorySlots.c:6
Определения InventoryItem.c:731
Определения PlayerBaseClient.c:2
const float DEFAULT
Определения ActionConstants.c:112
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.