DayZ 1.26
DayZ Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс ActionCraftBolts
+ Граф наследования:ActionCraftBolts:

Защищенные члены

void InitCuttingTypes ()
 
void ActionCraftBolts ()
 
override void CreateConditionComponents ()
 
bool IsCuttingType (Object item)
 
override bool ActionCondition (PlayerBase player, ActionTarget target, ItemBase item)
 
override void OnStartServer (ActionData action_data)
 
override void OnFinishProgressServer (ActionData action_data)
 

Защищенные данные

bool m_IsKnifeInHands
 
Ammunition_Base m_ResultEntity
 

Закрытые данные

const ref set< stringCUTTING_TYPES = new set<string>()
 

Дополнительные унаследованные члены

- Закрытые члены унаследованные от ActionContinuousBase
void OnStartAnimationLoopServer (ActionData action_data)
 
void OnStartAnimationLoopClient (ActionData action_data)
 
void OnEndAnimationLoopServer (ActionData action_data)
 
void OnEndAnimationLoopClient (ActionData action_data)
 
void OnFinishProgressServer (ActionData action_data)
 
void OnFinishProgressClient (ActionData action_data)
 

Подробное описание

Конструктор(ы)

◆ ActionCraftBolts()

void ActionCraftBolts ( )
inlineprotected
43 {
45 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_CRAFTING;
46 m_FullBody = true;
47 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH;
49
50 m_Text = "#STR_CraftBolt0";
51
53 }
bool m_FullBody
Definition ActionBase.c:61
string m_Text
Definition ActionBase.c:58
float m_SpecialtyWeight
Definition ActionBase.c:77
int m_StanceMask
Definition ActionBase.c:62
Definition ActionCraftBolts.c:2
void InitCuttingTypes()
Definition ActionCraftBolts.c:18
int m_CommandUID
Definition AnimatedActionBase.c:143
m_CallbackClass
Definition AnimatedActionBase.c:145
Definition EntityAI.c:95
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602

Перекрестные ссылки InitCuttingTypes(), AnimatedActionBase::m_CallbackClass, AnimatedActionBase::m_CommandUID, ActionBase::m_FullBody, ActionBase::m_SpecialtyWeight, ActionBase::m_StanceMask и ActionBase::m_Text.

Методы

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprotected
67 {
69 {
70 //knife in hands
71 if (target.GetObject())
72 return (target.GetObject().ClassName() == "WoodenStick");
73 }
74 else if (target.GetObject())
75 {
76 // material in hands
77 return IsCuttingType(target.GetObject());
78 }
79
80 return false;
81 }
bool IsCuttingType(Object item)
Definition ActionCraftBolts.c:61

Перекрестные ссылки IsCuttingType().

◆ CreateConditionComponents()

override void CreateConditionComponents ( )
inlineprotected
56 {
59 }
ref CCIBase m_ConditionItem
Definition ActionBase.c:64
ref CCTBase m_ConditionTarget
Definition ActionBase.c:65
Definition CCINonRuined.c:2
Definition CCTNonRuined.c:2

Перекрестные ссылки ActionBase::m_ConditionItem и ActionBase::m_ConditionTarget.

◆ InitCuttingTypes()

void InitCuttingTypes ( )
inlineprotected
19 {
20 CUTTING_TYPES.Clear();
21 CUTTING_TYPES.Insert("Sickle");
22 CUTTING_TYPES.Insert("KukriKnife");
23 CUTTING_TYPES.Insert("FangeKnife");
24 CUTTING_TYPES.Insert("KitchenKnife");
25 CUTTING_TYPES.Insert("SteakKnife");
26 CUTTING_TYPES.Insert("StoneKnife");
27 CUTTING_TYPES.Insert("Cleaver");
28 CUTTING_TYPES.Insert("CombatKnife");
29 CUTTING_TYPES.Insert("HuntingKnife");
30 CUTTING_TYPES.Insert("Machete");
31 CUTTING_TYPES.Insert("CrudeMachete");
32 CUTTING_TYPES.Insert("OrientalMachete");
33 CUTTING_TYPES.Insert("WoodAxe");
34 CUTTING_TYPES.Insert("Hatchet");
35 CUTTING_TYPES.Insert("FirefighterAxe");
36 CUTTING_TYPES.Insert("AK_Bayonet");
37 CUTTING_TYPES.Insert("M9A1_Bayonet");
38 CUTTING_TYPES.Insert("SKS_Bayonet");
39 CUTTING_TYPES.Insert("BoneKnife");
40 }
const ref set< string > CUTTING_TYPES
Definition ActionCraftBolts.c:13

Перекрестные ссылки CUTTING_TYPES.

Используется в ActionCraftBolts().

◆ IsCuttingType()

bool IsCuttingType ( Object item)
inlineprotected
62 {
63 return CUTTING_TYPES.Find(item.ClassName()) >= 0;
64 }

Перекрестные ссылки CUTTING_TYPES.

Используется в ActionCondition() и OnStartServer().

◆ OnFinishProgressServer()

override void OnFinishProgressServer ( ActionData action_data)
inlineprotected
92 {
95
96 bool added = false;
97
99 {
100 //knife in hands
101 knife = action_data.m_MainItem;
102 material = ItemBase.Cast(action_data.m_Target.GetObject());
103 }
104 else
105 {
106 // material in hands
107 material = action_data.m_MainItem;
108 knife = ItemBase.Cast(action_data.m_Target.GetObject());
109 }
110
111 if (!material || !knife)
112 return;
113
114 if (m_ResultEntity)
115 {
116 if (m_ResultEntity.GetAmmoCount() < m_ResultEntity.GetAmmoMax())
117 {
118 m_ResultEntity.ServerAddAmmoCount(1);
119 added = true;
120 }
121 }
122
123 if (!added)
124 {
125 m_ResultEntity = Ammunition_Base.Cast(action_data.m_Player.SpawnEntityOnGroundPos("Ammo_ImprovisedBolt_1", action_data.m_Player.GetPosition()));
126 m_ResultEntity.SetHealth("", "", material.GetHealth("", ""));
127 m_ResultEntity.ServerSetAmmoCount(1);
128 }
129
130 material.AddQuantity(-1);
131 knife.AddHealth("","",-3);
132 }
bool m_IsKnifeInHands
Definition ActionCraftBolts.c:15
Ammunition_Base m_ResultEntity
Definition ActionCraftBolts.c:16
ammo pile base
Definition AmmunitionPiles.c:3
Definition InventoryItem.c:731

Перекрестные ссылки m_IsKnifeInHands и m_ResultEntity.

◆ OnStartServer()

override void OnStartServer ( ActionData action_data)
inlineprotected
84 {
85 super.OnStartServer(action_data);
86
89 }

Перекрестные ссылки IsCuttingType(), m_IsKnifeInHands и m_ResultEntity.

Поля

◆ CUTTING_TYPES

const ref set<string> CUTTING_TYPES = new set<string>()
private

Используется в InitCuttingTypes() и IsCuttingType().

◆ m_IsKnifeInHands

bool m_IsKnifeInHands
protected

Используется в OnFinishProgressServer() и OnStartServer().

◆ m_ResultEntity

Ammunition_Base m_ResultEntity
protected

Используется в OnFinishProgressServer() и OnStartServer().


Объявления и описания членов класса находятся в файле: