Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actiondigoutstash.c
Go to the documentation of this file.
1
class
ActionDigOutStashCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
m_ActionData
.m_ActionComponent =
new
CAContinuousTime
(
UATimeSpent
.
DIG_STASH
);
6
}
7
}
8
9
class
ActionDigOutStash
:
ActionContinuousBase
10
{
11
void
ActionDigOutStash
()
12
{
13
m_CallbackClass =
ActionDigOutStashCB
;
14
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_DIGUPCACHE;
15
m_FullBody =
true
;
16
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_ERECT;
17
m_SpecialtyWeight = UASoftSkillsWeight.ROUGH_LOW;
18
m_Text =
"#dig_stash"
;
19
}
20
21
override
void
CreateConditionComponents
()
22
{
23
m_ConditionTarget =
new
CCTObject
(
UAMaxDistances
.
DEFAULT
);
24
m_ConditionItem =
new
CCINonRuined
();
25
}
26
27
override
bool
Can
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item,
int
condition_mask)
28
{
29
if
(!super.Can(player, target, item, condition_mask))
30
return
false
;
31
32
return
player.CheckFreeSpace(
vector
.
Forward
, 1.0,
false
);
33
}
34
35
36
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item)
37
{
38
ItemBase
target_IB;
39
if
(
Class
.
CastTo
(target_IB, target.GetObject()))
40
{
41
if
(target_IB.CanBeDigged())
42
{
43
return
target_IB.IsInherited(UndergroundStash);
44
}
45
}
46
47
return
false
;
48
}
49
50
override
void
OnExecuteClient
(
ActionData
action_data)
51
{
52
super.OnExecuteClient(action_data);
53
54
SpawnParticleShovelRaise
(action_data);
55
}
56
57
override
void
OnExecuteServer
(
ActionData
action_data)
58
{
59
super.OnExecuteServer(action_data);
60
61
if
(!
g_Game
.IsMultiplayer())
62
{
63
SpawnParticleShovelRaise
(action_data);
64
}
65
}
66
67
void
SpawnParticleShovelRaise
(
ActionData
action_data)
68
{
69
ParticleManager
.GetInstance().PlayOnObject(
ParticleList
.
DIGGING_STASH
, action_data.m_Player);
70
}
71
72
override
void
OnFinishProgressServer
(
ActionData
action_data )
73
{
74
EntityAI
targetEntity =
EntityAI
.Cast(action_data.m_Target.GetObject());
75
if
(!targetEntity)
76
{
77
ErrorEx
(
"Cannot get entity="
+ targetEntity);
78
return
;
79
}
80
81
InventoryLocation
target_IL =
new
InventoryLocation
();
82
if
(!targetEntity.GetInventory().GetCurrentInventoryLocation(target_IL))
83
{
84
ErrorEx
(
"Cannot get inventory location of entity="
+ targetEntity);
85
return
;
86
}
87
88
// Dig out of stash
89
UndergroundStash stash;
90
if
(
Class
.
CastTo
(stash, targetEntity))
91
{
92
ItemBase
stashedItem = stash.
GetStashedItem
();
93
if
(stashedItem)
94
{
95
DigOutStashLambda
lambda(stash,
""
, action_data.m_Player);
96
action_data.m_Player.ServerReplaceItemWithNew(lambda);
97
}
98
else
99
g_Game
.ObjectDelete(stash);
100
}
101
102
//Apply tool damage
103
MiscGameplayFunctions.DealEvinronmentAdjustedDmg(action_data.m_MainItem, action_data.m_Player, 10);
104
}
105
106
override
string
GetAdminLogMessage
(
ActionData
action_data)
107
{
108
return
string
.
Format
(
"Player %1 Dug out %2 at position %3"
, action_data.m_Player, action_data.m_Target.GetObject(), action_data.m_Target.GetObject().GetPosition());
109
}
110
}
111
112
class
DigOutStashLambda
:
DropEquipAndDestroyRootLambda
113
{
114
void
DigOutStashLambda
(
EntityAI
old_item,
string
new_item_type,
PlayerBase
player) {}
115
116
override
void
CopyOldPropertiesToNew
(notnull
EntityAI
old_item,
EntityAI
new_item)
117
{
118
super.CopyOldPropertiesToNew(old_item, new_item);
119
}
120
}
m_CommandUID
int m_CommandUID
Definition
actionbase.c:31
m_StanceMask
int m_StanceMask
Definition
actionbase.c:33
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionDigOutStash
ActionDigOutStashCB ActionContinuousBaseCB ActionDigOutStash()
Definition
actiondigoutstash.c:11
SpawnParticleShovelRaise
void SpawnParticleShovelRaise(ActionData action_data)
Definition
actiondigoutstash.c:67
ActionTarget
class ActionTargets ActionTarget
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionBase::CreateConditionComponents
void CreateConditionComponents()
Definition
actionbase.c:236
ActionBase::Can
bool Can(PlayerBase player, ActionTarget target, ItemBase item, int condition_mask)
Definition
actionbase.c:873
ActionBase::GetAdminLogMessage
string GetAdminLogMessage(ActionData action_data)
Definition
actionbase.c:1340
ActionContinuousBaseCB
Definition
actioncontinuousbase.c:2
ActionContinuousBase
Definition
actioncontinuousbase.c:121
ActionContinuousBase::OnFinishProgressServer
void OnFinishProgressServer(ActionData action_data)
Definition
actioncontinuousbase.c:283
ActionDigOutStashCB
Definition
actiondigoutstash.c:2
ActionDigOutStashCB::CreateActionComponent
override void CreateActionComponent()
Definition
actiondigoutstash.c:3
AnimatedActionBase::OnExecuteClient
void OnExecuteClient(ActionData action_data)
Definition
animatedactionbase.c:179
AnimatedActionBase::OnExecuteServer
void OnExecuteServer(ActionData action_data)
Definition
animatedactionbase.c:175
AnimatedActionBase::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
animatedactionbase.c:240
CAContinuousTime
Definition
cacontinuoustime.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTObject
Definition
cctobject.c:2
Class
Super root of all classes in Enforce script.
Definition
enscript.c:11
DigOutStashLambda
Definition
actiondigoutstash.c:113
DigOutStashLambda::CopyOldPropertiesToNew
override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
Definition
actiondigoutstash.c:116
DigOutStashLambda::DigOutStashLambda
void DigOutStashLambda(EntityAI old_item, string new_item_type, PlayerBase player)
Definition
actiondigoutstash.c:114
DropEquipAndDestroyRootLambda::DropEquipAndDestroyRootLambda
void DropEquipAndDestroyRootLambda(EntityAI old_item, string new_item_type, PlayerBase player)
Definition
miscgameplayfunctions.c:119
EntityAI
Definition
inventoryitem.c:2
InventoryLocation
InventoryLocation.
Definition
inventorylocation.c:30
ItemBase
Definition
inventoryitem.c:742
ItemBase::GetStashedItem
ItemBase GetStashedItem()
Definition
undergroundstash.c:13
ParticleList
Definition
particlelist.c:12
ParticleList::DIGGING_STASH
static const int DIGGING_STASH
Definition
particlelist.c:97
PlayerBase
Definition
playerbaseclient.c:2
UAMaxDistances
Definition
actionconstants.c:110
UAMaxDistances::DEFAULT
const float DEFAULT
Definition
actionconstants.c:112
UATimeSpent
Definition
actionconstants.c:28
UATimeSpent::DIG_STASH
const float DIG_STASH
Definition
actionconstants.c:78
vector
Definition
enconvert.c:119
vector::Forward
static const vector Forward
Definition
enconvert.c:122
g_Game
DayZGame g_Game
Definition
dayzgame.c:3942
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
ErrorEx
enum ShapeType ErrorEx
Class::CastTo
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
string::Format
static proto string Format(string fmt, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
Gets n-th character from string.
ParticleManager
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor).
Definition
particlemanager.c:88
Games
Dayz
scripts
4_world
classes
useractionscomponent
actions
continuous
actiondigoutstash.c
Generated by
1.17.0