Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actiondigworms.c
Go to the documentation of this file.
1
class
ActionDigWormsCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
float
time_spent;
6
time_spent =
UATimeSpent
.
DIG_WORMS
;
7
if
(
m_ActionData
.m_MainItem.KindOf(
"Knife"
))
8
time_spent = time_spent * 1.2;
9
10
if
(
m_ActionData
.m_Player.GetInColdArea())
11
time_spent *=
GameConstants
.
COLD_AREA_DIG_WORMS_MODIF
;
12
13
m_ActionData
.m_ActionComponent =
new
CAContinuousRepeat
(time_spent);
14
}
15
};
16
17
class
ActionDigWorms
:
ActionContinuousBase
18
{
19
void
ActionDigWorms
()
20
{
21
m_CallbackClass
=
ActionDigWormsCB
;
22
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_DIGGIN_WORMS;
23
m_FullBody
=
true
;
24
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_ERECT |
DayZPlayerConstants
.STANCEMASK_CROUCH;
25
m_SpecialtyWeight
= UASoftSkillsWeight.ROUGH_MEDIUM;
26
m_Text
=
"#dig_up_worms"
;
27
}
28
29
override
void
CreateConditionComponents
()
30
{
31
m_ConditionItem
=
new
CCINonRuined
;
32
m_ConditionTarget
=
new
CCTSurface
(
UAMaxDistances
.
DEFAULT
);
33
}
34
35
override
bool
Can
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item,
int
condition_mask)
36
{
37
if
(!super.Can(player, target, item, condition_mask))
38
return
false
;
39
40
return
player.CheckFreeSpace(
vector
.
Forward
, 0.8,
false
);
41
}
42
43
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item)
44
{
45
if
(player.IsPlacingLocal())
46
return
false
;
47
48
return
IsTargetFertile
(target) &&
IsPlayerOnGround
(player);
49
}
50
51
override
bool
ActionConditionContinue
(
ActionData
action_data)
52
{
53
return
IsPlayerOnGround
(action_data.m_Player);
54
}
55
56
override
bool
HasTarget
()
57
{
58
return
true
;
59
}
60
61
override
void
OnFinishProgressServer
(
ActionData
action_data)
62
{
63
int
count = action_data.m_MainItem.GetOnDigWormsAmount();
64
for
(
int
i = 0; i < count; i++)
65
{
66
/*
67
vector posHead;
68
MiscGameplayFunctions.GetHeadBonePos(action_data.m_Player,posHead);
69
vector posRandom = MiscGameplayFunctions.GetRandomizedPositionVerified(posHead,action_data.m_Target.GetCursorHitPos(),UAItemsSpreadRadius.NARROW,action_data.m_Player);
70
71
g_Game.CreateObjectEx("Worm", posRandom, ECE_PLACE_ON_SURFACE);
72
*/
73
g_Game
.CreateObjectEx(
"Worm"
, action_data.m_Target.GetCursorHitPos(),
ECE_PLACE_ON_SURFACE
);
74
}
75
76
MiscGameplayFunctions.DealEvinronmentAdjustedDmg(action_data.m_MainItem, action_data.m_Player, 4);
77
}
78
79
bool
IsTargetFertile
(
ActionTarget
target)
80
{
81
if
(target)
82
{
83
string
surface_type;
84
vector
position;
85
position = target.GetCursorHitPos();
86
87
g_Game
.SurfaceGetType(position[0], position[2], surface_type);
88
89
if
(
g_Game
.IsSurfaceFertile(surface_type))
90
{
91
return
true
;
92
}
93
}
94
95
return
false
;
96
}
97
98
bool
IsPlayerOnGround
(
PlayerBase
player)
99
{
100
vector
position = player.GetPosition();
101
float
heightDiff =
g_Game
.SurfaceY(position[0], position[2]);
102
heightDiff = position[1] - heightDiff;
103
104
return
heightDiff <= 0.4;
// Player is considered on ground
105
}
106
108
void
SetDiggignAnimation
(
ItemBase
item);
109
110
};
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionTarget
class ActionTargets ActionTarget
ECE_PLACE_ON_SURFACE
const int ECE_PLACE_ON_SURFACE
Definition
centraleconomy.c:37
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionBase::m_FullBody
bool m_FullBody
Definition
actionbase.c:67
ActionBase::m_Text
string m_Text
Definition
actionbase.c:64
ActionBase::m_ConditionItem
ref CCIBase m_ConditionItem
Definition
actionbase.c:70
ActionBase::m_SpecialtyWeight
float m_SpecialtyWeight
Definition
actionbase.c:83
ActionBase::m_ConditionTarget
ref CCTBase m_ConditionTarget
Definition
actionbase.c:71
ActionBase::m_StanceMask
int m_StanceMask
Definition
actionbase.c:68
ActionContinuousBaseCB
Definition
actioncontinuousbase.c:2
ActionContinuousBase::ActionContinuousBase
void ActionContinuousBase()
Definition
actioncontinuousbase.c:124
ActionDigWormsCB
Definition
actiondigworms.c:2
ActionDigWormsCB::CreateActionComponent
override void CreateActionComponent()
Definition
actiondigworms.c:3
ActionDigWorms::OnFinishProgressServer
override void OnFinishProgressServer(ActionData action_data)
Definition
actiondigworms.c:61
ActionDigWorms::IsTargetFertile
bool IsTargetFertile(ActionTarget target)
Definition
actiondigworms.c:79
ActionDigWorms::ActionConditionContinue
override bool ActionConditionContinue(ActionData action_data)
Definition
actiondigworms.c:51
ActionDigWorms::ActionDigWorms
void ActionDigWorms()
Definition
actiondigworms.c:19
ActionDigWorms::CreateConditionComponents
override void CreateConditionComponents()
Definition
actiondigworms.c:29
ActionDigWorms::Can
override bool Can(PlayerBase player, ActionTarget target, ItemBase item, int condition_mask)
Definition
actiondigworms.c:35
ActionDigWorms::SetDiggignAnimation
void SetDiggignAnimation(ItemBase item)
DEPRECATED - See ItemBase.OverrideActionAnimation() to override commands for items.
ActionDigWorms::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actiondigworms.c:43
ActionDigWorms::HasTarget
override bool HasTarget()
Definition
actiondigworms.c:56
ActionDigWorms::IsPlayerOnGround
bool IsPlayerOnGround(PlayerBase player)
Definition
actiondigworms.c:98
AnimatedActionBase::m_CommandUID
int m_CommandUID
Definition
animatedactionbase.c:143
AnimatedActionBase::m_CallbackClass
m_CallbackClass
Definition
animatedactionbase.c:145
CAContinuousRepeat
Definition
cacontinuousrepeat.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTSurface
Definition
cctsurface.c:2
GameConstants
Definition
constants.c:664
ItemBase
Definition
inventoryitem.c:742
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_WORMS
const float DIG_WORMS
Definition
actionconstants.c:79
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
GameConstants::COLD_AREA_DIG_WORMS_MODIF
const float COLD_AREA_DIG_WORMS_MODIF
(deg Celsius) temperature limit up to which player is allowed to dig garden plots
Definition
constants.c:795
Games
Dayz
scripts
4_world
classes
useractionscomponent
actions
continuous
actiondigworms.c
Generated by
1.17.0