DayZ 1.29
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Pawn.c
См. документацию.
1#ifdef FEATURE_NETWORK_RECONCILIATION
2
4
9
13
14typedef Serializer PawnStateWriter;
15typedef Serializer PawnStateReader;
16
17typedef Serializer PawnMoveWriter;
18typedef Serializer PawnMoveReader;
19
25class PawnOwnerState
26{
27 protected void PawnOwnerState() {}
28 protected void ~PawnOwnerState() {}
29
30 proto native void SetMoveId(int value);
31 proto native int GetMoveId();
32
33 proto native int GetSimulationTimestamp();
34
35 proto native void SetPhysicsTimeStamp(int value);
36 proto native int GetPhysicsTimeStamp();
37
38 proto native void SetWaterTime(float value);
39 proto native float GetWaterTime();
40
41 protected event void Write(PawnStateWriter ctx)
42 {
43 }
44
45 protected event void Read(PawnStateReader ctx)
46 {
47 }
48
49#ifdef DIAG_DEVELOPER
50 protected event void DiagWrite(PawnStateWriter ctx)
51 {
52 }
53
54 protected event void DiagRead(PawnStateReader ctx)
55 {
56 }
57#endif
58
62 protected event int EstimateMaximumSize()
63 {
64 return 0;
65 }
66
67#ifdef DIAG_DEVELOPER
72 event void GetTransform(inout vector transform[4])
73 {
74 }
75#endif
76};
77
83class PawnMove
84{
85 protected void PawnMove() {}
86 protected void ~PawnMove() {}
87
88 proto native void SetMoveId(int value);
89 proto native int GetMoveId();
90
92 proto native void SetSimulationTimestamp(int value);
93 proto native int GetSimulationTimestamp();
94
96 proto native void SetTimeSlice(float value);
97 proto native float GetTimeSlice();
98
103 protected event void Write(PawnMoveWriter ctx, PawnMove prev)
104 {
105 }
106
111 protected event void Read(PawnMoveReader ctx, PawnMove prev)
112 {
113 }
114
118 protected event int EstimateMaximumSize()
119 {
120 return 0;
121 }
122
123#ifdef DIAG_DEVELOPER
128 event void GetTransform(inout vector transform[4])
129 {
130 }
131#endif
132};
133
138enum NetworkMoveStrategy
139{
141 NONE,
142
144 LATEST,
145
147 PHYSICS,
148};
149
154enum NetworkRewindType
155{
158 NOT_SET,
159
161 DROP,
162
164 REPLAY,
165
168};
169
174enum NetworkCompareResult
175{
177 APPROVE,
178
180 CORRECT,
181
183 FORCE_CORRECT
184};
185
191class Pawn : EntityAI
192{
194 proto native bool IsOwner();
195
197 proto native bool IsAuthority();
198
200 proto native bool IsAuthorityOwner();
201
203 proto native bool IsProxy();
204
206 proto native void ForceCorrection();
207
209 proto native PlayerIdentity GetOwnerIdentity();
210
212 proto native PawnOwnerState GetOwnerState();
213
215 proto native PawnMove GetNextMove();
216
218 proto native NetworkMoveStrategy GetNetworkMoveStrategy();
219
223 protected event void OnPossess()
224 {
225 }
226
230 protected event void OnUnPossess()
231 {
232 }
233
238 protected event typename GetOwnerStateType()
239 {
240 return PawnOwnerState;
241 }
242
247 protected event typename GetMoveType()
248 {
249 return PawnMove;
250 }
251
256 protected event void ObtainMove(/*inout*/ PawnMove pMove)
257 {
258 }
259
265 protected event NetworkCompareResult CompareMove(PawnMove pMove)
266 {
267 return NetworkCompareResult.APPROVE;
268 }
269
274 protected event void ConsumeMove(PawnMove pMove)
275 {
276 }
277
283 protected event bool ReplayMove(PawnMove pMove)
284 {
285 return true;
286 }
287
292 protected event void SimulateMove(PawnMove pMove)
293 {
294 }
295
300 protected event void ObtainState(/*inout*/ PawnOwnerState pState)
301 {
302 }
303
310 protected event void RewindState(PawnOwnerState pState, /*inout*/ PawnMove pMove, inout NetworkRewindType pRewindType)
311 {
312 }
313
319 protected event void ReplayAdditiveMove(/*inout*/ PawnMove pMove, /*const*/ PawnMove pDeltaMove)
320 {
321 }
322
327 protected event void ApplyAdditiveMove(PawnMove pDeltaMove)
328 {
329 }
330};
331
332#endif
override event void Read(PawnStateReader ctx)
Определения CarScript.c:144
override event void Write(PawnStateWriter ctx)
Определения CarScript.c:139
@ DROP
Определения EAnimSoundEventID.c:3
bool IsOwner()
Определения Hand_Events.c:60
bool IsProxy()
Определения Hand_Events.c:65
override event GetOwnerStateType()
Определения Transport.c:97
override event GetMoveType()
Определения Transport.c:103
Serialization general interface. Serializer API works with:
Определения Serializer.c:56
@ ADDITIVE
Определения EnDebug.c:137
@ NONE
body is not in simulation, nor in collision world
Определения SimulationState.c:15