DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ Load()

bool ArrowManagerPlayer::Load ( ParamsReadContext ctx)
inlineprivate

См. определение в файле ArrowManagerPlayer.c строка 75

76 {
77 int version;
78 if (!ctx.Read(version))
79 {
80 return false;
81 }
82
83 int count;
84 if (!ctx.Read(count))
85 {
86 return false;
87 }
88
89 for (int i = 0; i < count; i++)
90 {
91
92 if (version >= 1)
93 {
94 int hash;
95 if (!ctx.Read(hash))
96 {
97 return false;
98 }
99
100 float angleF[3];
101 float posF[3];
102 float value;
103
104 if (!ctx.Read(value))
105 {
106 return false;
107 }
108 angleF[0] = value;
109
110 if (!ctx.Read(value))
111 {
112 return false;
113 }
114 angleF[1] = value;
115
116 if (!ctx.Read(value))
117 {
118 return false;
119 }
120 angleF[2] = value;
121
122 if (!ctx.Read(value))
123 {
124 return false;
125 }
126 posF[0] = value;
127
128 if (!ctx.Read(value))
129 {
130 return false;
131 }
132 posF[1] = value;
133
134 if (!ctx.Read(value))
135 {
136 return false;
137 }
138 posF[2] = value;
139
140 vector angle = "0 0 0";
141 vector pos = "0 0 0";
142
143 angle = vector.ArrayToVec(angleF);
144 pos = vector.ArrayToVec(posF);
145
146 int pivot;
147 if (!ctx.Read(pivot))
148 {
149 return false;
150 }
151
152 if (version >= 2)
153 {
154 #ifdef SERVER
156 #else
158 #endif
159
160 typename arrowType = GetArrowTypeFromHash(hash);
161 EntityAI arrow = EntityAI.Cast(GetGame().CreateObjectEx(arrowType.ToString(), pos, spawnFlags));
162 if (arrow)
163 {
164 arrow.SetQuantityToMinimum();
165 arrow.SetYawPitchRoll(angle);
166 m_Owner.AddChild(arrow, pivot);
167 }
168 }
169 }
170
171 }
172
173 return true;
174 }
class LogManager EntityAI
const int ECE_LOCAL
Определения CentralEconomy.c:24
const int ECE_KEEPHEIGHT
Определения CentralEconomy.c:27
const int ECE_DYNAMIC_PERSISTENCY
Определения CentralEconomy.c:32
EntityAI m_Owner
Определения ArrowManagerBase.c:5
static GetArrowTypeFromHash(int hash)
Определения ArrowManagerPlayer.c:28
proto bool Read(void value_in)
static vector ArrayToVec(float arr[])
Convert static array of floats into a vector.
Определения EnConvert.c:502
proto native CGame GetGame()

Перекрестные ссылки vector::ArrayToVec(), ECE_DYNAMIC_PERSISTENCY, ECE_KEEPHEIGHT, ECE_LOCAL, GetArrowTypeFromHash(), GetGame(), ArrowManagerBase::m_Owner и Serializer::Read().

Используется в ManBase::OnStoreLoad().