Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
actionbandagetarget.c
Go to the documentation of this file.
2{
3 override void CreateActionComponent()
4 {
5 float effectivity = m_ActionData.m_MainItem.GetBandagingEffectivity();
6 float adjustedTimeSpent = 0;
7
8 if (effectivity > 0)
9 adjustedTimeSpent = UATimeSpent.BANDAGE / effectivity;
10
11 m_ActionData.m_ActionComponent = new CAContinuousRepeat(adjustedTimeSpent);
12 }
13}
14
16{
18 {
19 m_CallbackClass = ActionBandageTargetCB;
20 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_BANDAGETARGET;
21 m_FullBody = true;
22 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
23
24 m_Text = "#treat_persons_wound";
25 }
26
28 {
29 m_ConditionItem = new CCINonRuined();
30 m_ConditionTarget = new CCTMan(UAMaxDistances.DEFAULT);
31 }
32
33 override int GetStanceMask(PlayerBase player)
34 {
35 if (player.IsPlayerInStance(DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_PRONE))
36 return DayZPlayerConstants.STANCEMASK_CROUCH;
37 else
38 return DayZPlayerConstants.STANCEMASK_ERECT;
39 }
40
41 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
42 {
43 PlayerBase otherPlayer = PlayerBase.Cast(target.GetObject());
44 if (otherPlayer)
45 return otherPlayer.IsBleeding();
46
47 return false;
48 }
49
50 override void OnFinishProgressServer(ActionData action_data)
51 {
52 PlayerBase target = PlayerBase.Cast(action_data.m_Target.GetObject());
53
54 if (action_data.m_MainItem && target)
55 {
56 if (CanReceiveAction(action_data.m_Target))
57 ApplyBandage(action_data.m_MainItem, target);
58 }
59 }
60
61 override void OnFinishProgressClient(ActionData action_data)
62 {
63 GetGame().GetAnalyticsClient().OnActionBandageTarget();
64 }
65
66 override bool CanTargetBeInVehicle()
67 {
68 return true;
69 }
70}
ActionBandageTargetCB ActionContinuousBaseCB ActionBandageTarget()
int m_CommandUID
Definition actionbase.c:31
int m_StanceMask
Definition actionbase.c:33
override void ApplyBandage(ItemBase item, PlayerBase player)
ActionData m_ActionData
bool CanTargetBeInVehicle()
Definition actionbase.c:334
bool CanReceiveAction(ActionTarget target)
Definition actionbase.c:829
void CreateConditionComponents()
Definition actionbase.c:230
void OnFinishProgressClient(ActionData action_data)
void OnFinishProgressServer(ActionData action_data)
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition cctman.c:2
AnalyticsManagerClient GetAnalyticsClient()
Definition game.c:1568
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602
proto native CGame GetGame()
int GetStanceMask()