Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actionwritepaper.c
Go to the documentation of this file.
1
class
ActionWritePaperCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
EnableStateChangeCallback
();
6
m_ActionData
.m_ActionComponent =
new
CAContinuousTime
(-1.0);
7
}
8
9
override
void
EndActionComponent
()
10
{
11
}
12
13
override
void
OnStateChange
(
int
pOldState,
int
pCurrentState)
14
{
15
if
(pCurrentState ==
STATE_NONE
&& (!
g_Game
.IsDedicatedServer()))
16
{
17
if
(
g_Game
.GetUIManager() &&
g_Game
.GetUIManager().IsMenuOpen(
MENU_NOTE
))
18
g_Game
.GetUIManager().FindMenu(
MENU_NOTE
).Close();
19
}
20
else
if
(pCurrentState ==
STATE_LOOP_LOOP
&& pOldState !=
STATE_LOOP_LOOP
&& (!
g_Game
.IsMultiplayer() ||
g_Game
.IsServer()))
21
{
22
ItemBase
paper_item;
23
if
(
m_ActionData
.m_MainItem.ConfigIsExisting(
"writingColor"
))
24
{
25
paper_item =
ItemBase
.Cast(
m_ActionData
.m_Target.GetObject());
26
}
27
else
28
{
29
paper_item =
ItemBase
.Cast(
m_ActionData
.m_MainItem);
30
}
31
Param1<string> text =
new
Param1<string>(paper_item.
GetWrittenNoteData
().
GetNoteText
());
32
paper_item.RPCSingleParam(
ERPCs
.RPC_WRITE_NOTE, text,
true
,
m_ActionData
.m_Player.GetIdentity());
33
}
34
}
35
};
36
38
class
ActionWritePaper
:
ActionContinuousBase
39
{
40
const
float
TARGET_DISTANCE
= 2;
41
42
void
ActionWritePaper
()
43
{
44
m_CallbackClass
=
ActionWritePaperCB
;
45
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_VIEWNOTE;
46
m_FullBody
=
true
;
47
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_CROUCH |
DayZPlayerConstants
.STANCEMASK_ERECT |
DayZPlayerConstants
.STANCEMASK_PRONE;
48
m_Text
=
"#write_note"
;
49
}
50
51
override
void
CreateConditionComponents
()
52
{
53
m_ConditionItem
=
new
CCINonRuined
;
54
m_ConditionTarget
=
new
CCTNone
;
//CCTNonRuined(TARGET_DISTANCE);
55
}
56
57
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item )
58
{
59
if
((item && item.ConfigIsExisting(
"writingColor"
) && target.GetObject() && Paper.Cast(target.GetObject())) || (target.GetObject() && target.GetObject().ConfigIsExisting(
"writingColor"
) && item && Paper.Cast(item)))
60
{
61
return
true
;
62
}
63
return
false
;
64
}
65
66
override
void
OnStartClient
(
ActionData
action_data )
67
{
68
if
(action_data.m_Target.GetObject().ConfigIsExisting(
"writingColor"
))
69
{
70
action_data.m_MainItem.GetWrittenNoteData().InitNoteInfo(
ItemBase
.Cast(action_data.m_Target.GetObject()),action_data.m_MainItem);
71
}
72
else
73
{
74
ItemBase
.Cast(action_data.m_Target.GetObject()).
GetWrittenNoteData
().
InitNoteInfo
(action_data.m_MainItem,
ItemBase
.Cast(action_data.m_Target.GetObject()));
75
}
76
}
77
78
override
void
OnStartServer
(
ActionData
action_data )
79
{
80
super.OnStartServer(action_data);
81
82
if
(action_data.m_Target.GetObject().ConfigIsExisting(
"writingColor"
))
83
{
84
action_data.m_MainItem.GetWrittenNoteData().InitNoteInfo(
ItemBase
.Cast(action_data.m_Target.GetObject()),action_data.m_MainItem);
85
}
86
else
87
{
88
ItemBase
.Cast(action_data.m_Target.GetObject()).
GetWrittenNoteData
().
InitNoteInfo
(action_data.m_MainItem,
ItemBase
.Cast(action_data.m_Target.GetObject()));
89
}
90
}
91
92
override
void
OnUpdate
(
ActionData
action_data)
93
{
94
super.OnUpdate(action_data);
95
96
if
(!
g_Game
.IsDedicatedServer())
97
{
98
if
(action_data.m_State ==
UA_FINISHED
&&
g_Game
.GetUIManager() && !
g_Game
.GetUIManager().IsMenuOpen(
MENU_NOTE
))
99
{
100
ActionManagerClient
.Cast(action_data.m_Player.GetActionManager()).
RequestEndAction
();
101
}
102
}
103
}
104
105
override
void
OnEndRequest
(
ActionData
action_data)
106
{
107
if
(action_data.m_Callback)
108
{
109
action_data.m_Callback.InternalCommand(
DayZPlayerConstants
.CMD_ACTIONINT_INTERRUPT);
110
}
111
}
112
};
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionTarget
class ActionTargets ActionTarget
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_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
ActionManagerClient
Definition
actionmanagerclient.c:5
ActionManagerClient::RequestEndAction
override void RequestEndAction()
Definition
actionmanagerclient.c:266
ActionWritePaperCB
Definition
actionwritepaper.c:2
ActionWritePaperCB::OnStateChange
override void OnStateChange(int pOldState, int pCurrentState)
Definition
actionwritepaper.c:13
ActionWritePaperCB::CreateActionComponent
override void CreateActionComponent()
Definition
actionwritepaper.c:3
ActionWritePaperCB::EndActionComponent
override void EndActionComponent()
Definition
actionwritepaper.c:9
ActionWritePaper::ActionWritePaper
void ActionWritePaper()
Definition
actionwritepaper.c:42
ActionWritePaper::OnUpdate
override void OnUpdate(ActionData action_data)
Definition
actionwritepaper.c:92
ActionWritePaper::OnStartClient
override void OnStartClient(ActionData action_data)
Definition
actionwritepaper.c:66
ActionWritePaper::TARGET_DISTANCE
const float TARGET_DISTANCE
Definition
actionwritepaper.c:40
ActionWritePaper::CreateConditionComponents
override void CreateConditionComponents()
Definition
actionwritepaper.c:51
ActionWritePaper::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actionwritepaper.c:57
ActionWritePaper::OnEndRequest
override void OnEndRequest(ActionData action_data)
Definition
actionwritepaper.c:105
ActionWritePaper::OnStartServer
override void OnStartServer(ActionData action_data)
Definition
actionwritepaper.c:78
AnimatedActionBase::m_CommandUID
int m_CommandUID
Definition
animatedactionbase.c:143
AnimatedActionBase::m_CallbackClass
m_CallbackClass
Definition
animatedactionbase.c:145
CAContinuousTime
Definition
cacontinuoustime.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTNone
Definition
cctnone.c:2
ItemBase
Definition
inventoryitem.c:742
ItemBase::GetWrittenNoteData
override WrittenNoteData GetWrittenNoteData()
Definition
paper.c:30
PlayerBase
Definition
playerbaseclient.c:2
WrittenNoteData::InitNoteInfo
void InitNoteInfo(ItemBase pen=null, ItemBase paper=null)
Definition
writtennotedata.c:58
WrittenNoteData::GetNoteText
string GetNoteText()
Definition
writtennotedata.c:73
g_Game
DayZGame g_Game
Definition
dayzgame.c:3942
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
ERPCs
ERPCs
Definition
erpcs.c:2
MENU_NOTE
const int MENU_NOTE
Definition
constants.c:190
UA_FINISHED
const int UA_FINISHED
Definition
constants.c:469
STATE_NONE
static const int STATE_NONE
example of implement of CancelCondition returns true it it should CANCEL the action
Definition
human.c:349
EnableStateChangeCallback
proto native void EnableStateChangeCallback()
enables state change callback OnStateChange
STATE_LOOP_LOOP
static const int STATE_LOOP_LOOP
Definition
human.c:353
Games
Dayz
scripts
4_world
classes
useractionscomponent
actions
singleuse
actionwritepaper.c
Generated by
1.17.0