DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
Man.c
См. документацию.
1#ifdef FEATURE_NETWORK_RECONCILIATION
2class Person extends Pawn
3{
5};
6#endif
7
8#ifdef FEATURE_NETWORK_RECONCILIATION
9class Man extends Person
10#else
11class Man extends EntityAI
12#endif
13{
20
21 proto native owned string GetCurrentWeaponMode();
22
24 proto native void SetSpeechRestricted(bool state);
26 proto native bool IsSpeechRestricted();
27
29 proto native void SetFaceTexture(string texture_name);
31 proto native void SetFaceMaterial(string material_name);
32
33 proto native bool IsSoundInsideBuilding();
34 proto native bool IsCameraInsideVehicle();
35
36 proto native owned string GetMasterAttenuation();
37 proto native void SetMasterAttenuation(string masterAttenuation);
38
39 void Man()
40 {
41 SetFlags(EntityFlags.TOUCHTRIGGERS, false);
42 }
43
44 override bool IsMan()
45 {
46 return true;
47 }
48
49 override bool IsHealthVisible()
50 {
51 return false;
52 }
53
55 {
56 return true;
57 }
58
62
64 {
65 if (IsAlive())
66 return EPlayerStates.ALIVE;
67
68 return EPlayerStates.DEAD;
69 }
70
72
76 //Called when an item is removed from the cargo of this item
78 //Called when an item is moved around in the cargo of this item
80
88
89
97
99 {
100 SetWeightDirty();
102 m_OnItemAddedToHands.Invoke( item, this );
103 }
104
106 {
107 SetWeightDirty();
109 m_OnItemRemovedFromHands.Invoke( item, this );
110 }
111
113 bool JunctureDropEntity (notnull EntityAI item)
114 {
115 return DropEntityImpl(InventoryMode.JUNCTURE, this, item);
116 }
117
118 override bool PredictiveDropEntity (notnull EntityAI item)
119 {
121 {
122 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveDropEntity input data not sent yet, cannot allow another input action");
123 return false;
124 }
125
126 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
127 return JunctureDropEntity(item);
128 else
129 return DropEntityImpl(InventoryMode.PREDICTIVE, this, item);
130 }
131
132 override bool LocalDropEntity (notnull EntityAI item)
133 {
134 return DropEntityImpl(InventoryMode.LOCAL, this, item);
135 }
136
137 override bool ServerDropEntity (notnull EntityAI item)
138 {
139 return DropEntityImpl(InventoryMode.SERVER, this, item);
140 }
141
142 protected bool DropEntityImpl (InventoryMode mode, notnull EntityAI owner, notnull EntityAI item)
143 {
144 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::DropEntity(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
145 bool code = GetHumanInventory().DropEntity(mode, owner, item);
147 return code;
148 }
149
150
151 override bool CanDropEntity (notnull EntityAI item) { return true; }
152
154
155 bool NeedInventoryJunctureFromServer (notnull EntityAI item, EntityAI currParent, EntityAI newParent) { return false; }
156
159 {
160 TakeEntityToHandsImpl(InventoryMode.JUNCTURE, item);
161 }
162
164 {
166 {
167 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityToHands input data not sent yet, cannot allow another input action");
168 return;
169 }
170
171 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
173 else
174 TakeEntityToHandsImpl(InventoryMode.PREDICTIVE, item);
175 }
176
178 {
180 }
181
183 {
185 }
186
188 {
189 if (!GetGame().IsDedicatedServer() )
190 {
192 il.SetHands(this, item);
193 //GetInventory().AddInventoryReservationEx(item, il ,GameInventory.c_InventoryReservationTimeoutShortMS);
194 }
195
196 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2Hands(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
198
200 if (item.GetInventory().GetCurrentInventoryLocation(src_item))
201 {
202 if (itemInHands == null)
203 {
205 hand_dst.SetHands(this, item);
206 GetHumanInventory().TakeToDst(mode, src_item, hand_dst);
207 }
208 else if (GetHumanInventory().CanSwapEntitiesEx(itemInHands, item))
209 GetInventory().SwapEntities(mode, itemInHands, item);
211 }
212 }
213
214
216 {
217 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Destroy IH=" + GetHumanInventory().GetEntityInHands());
220 }
221
223 {
224 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Stash IH=" + GetHumanInventory().GetEntityInHands());
226 {
227 Print("[inv] PredictiveMoveItemFromHandsToInventory input data not sent yet, cannot allow another input action");
228 return;
229 }
230
231 InventoryMode invMode = InventoryMode.PREDICTIVE;
232
233 if (NeedInventoryJunctureFromServer( GetHumanInventory().GetEntityInHands(), this, this))
234 invMode = InventoryMode.JUNCTURE;
235
237 if (GetHumanInventory().GetEntityInHands().m_OldLocation && GetHumanInventory().GetEntityInHands().m_OldLocation.IsValid())
238 {
240 GetHumanInventory().GetEntityInHands().GetInventory().GetCurrentInventoryLocation(invLoc);
241 //old location is somewhere on player
242 if (GetHumanInventory().GetEntityInHands().m_OldLocation.GetParent() && GetHumanInventory().GetEntityInHands().m_OldLocation.GetParent().GetHierarchyRootPlayer())
243 {
244 if (GetHumanInventory().LocationCanMoveEntity(invLoc, GetHumanInventory().GetEntityInHands().m_OldLocation))
245 {
246 if (GetHumanInventory().TakeToDst(invMode, invLoc,GetHumanInventory().GetEntityInHands().m_OldLocation))
247 {
249 return;
250 }
251 }
252 }
253 }
254
257 }
258
261 {
262 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Replace !HND lambda=" + lambda.DumpToString());
263 bool code = GetHumanInventory().ReplaceItemWithNew(mode, lambda);
265 return code;
266 }
267
272
277
278
281 {
282 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Replace !HND->HND lambda=" + lambda.DumpToString());
283 bool code = GetHumanInventory().ReplaceItemElsewhereWithNewInHands(mode, lambda);
285 return code;
286 }
287
292
297
298
301 {
302 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Replace HND->HND lambda=" + lambda.DumpToString());
303 bool code = GetHumanInventory().ReplaceItemInHandsWithNew(mode, lambda);
305 return code;
306 }
307
312
317
318
321 {
322 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Replace HND->elsewhere lambda=" + lambda.DumpToString());
323 bool code = GetHumanInventory().ReplaceItemInHandsWithNewElsewhere(mode, lambda);
325 return code;
326 }
327
332
337
338
341 {
342 return TakeEntityToInventoryImpl(InventoryMode.JUNCTURE, flags, item);
343 }
344
346 {
348 {
349 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityToInventory input data not sent yet, cannot allow another input action");
350 return false;
351 }
352
353 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
354 return JunctureTakeEntityToInventory(flags, item);
355 else
356 return TakeEntityToInventoryImpl(InventoryMode.PREDICTIVE, flags, item);
357 }
358
360 {
361 return TakeEntityToInventoryImpl(InventoryMode.LOCAL, flags, item);
362 }
363
365 {
366 return TakeEntityToInventoryImpl(InventoryMode.SERVER, flags, item);
367 }
368
370 {
371 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2Inv(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
372 bool code = GetHumanInventory().TakeEntityToInventory(mode, flags, item);
374 return code;
375 }
376
377
380 {
381 return TakeEntityToCargoImpl(InventoryMode.JUNCTURE, item);
382 }
383
384 override bool PredictiveTakeEntityToCargo (notnull EntityAI item)
385 {
387 {
388 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityToCargo input data not sent yet, cannot allow another input action");
389 return false;
390 }
391
392 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
393 return JunctureTakeEntityToCargo(item);
394 else
395 return TakeEntityToCargoImpl(InventoryMode.PREDICTIVE, item);
396 }
397
398 override bool LocalTakeEntityToCargo (notnull EntityAI item)
399 {
400 return TakeEntityToCargoImpl(InventoryMode.LOCAL, item);
401 }
402
403 override bool ServerTakeEntityToCargo (notnull EntityAI item)
404 {
405 return TakeEntityToCargoImpl(InventoryMode.SERVER, item);
406 }
407
408 protected bool TakeEntityToCargoImpl (InventoryMode mode, notnull EntityAI item)
409 {
410 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2Cgo(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
411 bool code = GetHumanInventory().TakeEntityToCargo(mode, item);
413 return code;
414 }
415
416
419 {
420 return TakeEntityAsAttachmentImpl(InventoryMode.JUNCTURE, item);
421 }
422
423 override bool PredictiveTakeEntityAsAttachment (notnull EntityAI item)
424 {
426 {
427 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityAsAttachment input data not sent yet, cannot allow another input action");
428 return false;
429 }
430
431 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
433 else
434 return TakeEntityAsAttachmentImpl(InventoryMode.PREDICTIVE, item);
435 }
436
437 override bool LocalTakeEntityAsAttachment (notnull EntityAI item)
438 {
439 return TakeEntityAsAttachmentImpl(InventoryMode.LOCAL, item);
440 }
441
442 override bool ServerTakeEntityAsAttachment (notnull EntityAI item)
443 {
444 return TakeEntityAsAttachmentImpl(InventoryMode.SERVER, item);
445 }
446
447 protected bool TakeEntityAsAttachmentImpl (InventoryMode mode, notnull EntityAI item)
448 {
449 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2Att(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
450 bool code = GetHumanInventory().TakeEntityAsAttachment(mode, item);
452 return code;
453 }
454
455
457 bool JunctureTakeEntityAsAttachmentEx (notnull EntityAI item, int slot)
458 {
459 return TakeEntityAsAttachmentExImpl(InventoryMode.JUNCTURE, item, slot);
460 }
461
462 override bool PredictiveTakeEntityAsAttachmentEx (notnull EntityAI item, int slot)
463 {
465 {
466 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityAsAttachmentEx input data not sent yet, cannot allow another input action");
467 return false;
468 }
469
470 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), this))
471 return JunctureTakeEntityAsAttachmentEx(item, slot);
472 else
473 return TakeEntityAsAttachmentExImpl(InventoryMode.PREDICTIVE, item, slot);
474 }
475
476 override bool LocalTakeEntityAsAttachmentEx (notnull EntityAI item, int slot)
477 {
478 return TakeEntityAsAttachmentExImpl(InventoryMode.LOCAL, item, slot);
479 }
480
481 override bool ServerTakeEntityAsAttachmentEx (notnull EntityAI item, int slot)
482 {
483 return TakeEntityAsAttachmentExImpl(InventoryMode.SERVER, item, slot);
484 }
485
486 protected bool TakeEntityAsAttachmentExImpl (InventoryMode mode, notnull EntityAI item, int slot)
487 {
488 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2AttEx(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
489 bool code = GetHumanInventory().TakeEntityAsAttachmentEx(mode, item, slot);
491 return code;
492 }
493
494
496 bool JunctureSwapEntities (notnull EntityAI item1, notnull EntityAI item2)
497 {
498 return SwapEntitiesImpl(InventoryMode.JUNCTURE, item1, item2);
499 }
500
501 bool PredictiveSwapEntities (notnull EntityAI item1, notnull EntityAI item2)
502 {
504 {
505 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveSwapEntities input data not sent yet, cannot allow another input action");
506 return false;
507 }
508
509 bool need_j1 = NeedInventoryJunctureFromServer(item1, item1.GetHierarchyParent(), item2.GetHierarchyParent());
510 bool need_j2 = NeedInventoryJunctureFromServer(item2, item2.GetHierarchyParent(), item1.GetHierarchyParent());
511 if (need_j1 || need_j2)
512 return SwapEntitiesImpl(InventoryMode.JUNCTURE, item1, item2);
513 else
514 return SwapEntitiesImpl(InventoryMode.PREDICTIVE, item1, item2);
515 }
516
517 bool LocalSwapEntities (notnull EntityAI item1, notnull EntityAI item2)
518 {
519 return SwapEntitiesImpl(InventoryMode.LOCAL, item1, item2);
520 }
521
522 bool ServerSwapEntities (notnull EntityAI item1, notnull EntityAI item2)
523 {
524 return SwapEntitiesImpl(InventoryMode.SERVER, item1, item2);
525 }
526
527 protected bool SwapEntitiesImpl (InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2)
528 {
529 bool code;
530 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::SwapImpl(" + typename.EnumToString(InventoryMode, mode) + ") item1=" + Object.GetDebugName(item1) + " item2=" + item2.GetDebugName(this));
531 if (!GameInventory.CanSwapEntitiesEx(item1, item2))
532 Error("[inv] (Man@" + this + ") SwapEntitiesImpl - cannot swap items!");
533
534 code = GetHumanInventory().SwapEntities(mode, item1, item2);
535
537 if (!code)
538 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " SwapEntitiesImpl - cannot swap or forceswap");
539 return code;
540 }
541
542
544 bool JunctureForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
545 {
546 return ForceSwapEntitiesImpl(InventoryMode.JUNCTURE, item1, item2, item2_dst);
547 }
548
549 bool PredictiveForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
550 {
552 {
553 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveForceSwapEntities input data not sent yet, cannot allow another input action");
554 return false;
555 }
556
557 bool need_j1 = NeedInventoryJunctureFromServer(item1, item1.GetHierarchyParent(), item2.GetHierarchyParent());
558 bool need_j2 = NeedInventoryJunctureFromServer(item2, item2.GetHierarchyParent(), item1.GetHierarchyParent());
559 if (need_j1 || need_j2)
560 return ForceSwapEntitiesImpl(InventoryMode.JUNCTURE, item1, item2, item2_dst);
561 else
562 return ForceSwapEntitiesImpl(InventoryMode.PREDICTIVE, item1, item2, item2_dst);
563 }
564
565 bool LocalForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
566 {
567 return ForceSwapEntitiesImpl(InventoryMode.LOCAL, item1, item2, item2_dst);
568 }
569
570 bool ServerForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
571 {
572 return ForceSwapEntitiesImpl(InventoryMode.SERVER, item1, item2, item2_dst);
573 }
574
575 protected bool ForceSwapEntitiesImpl (InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
576 {
577 bool code = false;
578 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ForceSwapImpl(" + typename.EnumToString(InventoryMode, mode) + ") item1=" + Object.GetDebugName(item1) + " item2=" + item2.GetDebugName(this));
579 code = GetHumanInventory().ForceSwapEntities(mode, item1, item2, item2_dst);
580
582 if (!code)
583 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ForceSwapEntitiesImpl - cannot Forceswap");
584 return code;
585 }
586
587
590 {
591 return TakeEntityToTargetInventoryImpl(InventoryMode.JUNCTURE, target, flags, item);
592 }
593
594 override bool PredictiveTakeEntityToTargetInventory (notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
595 {
597 {
598 Print("[inv] " + GetSimulationTimeStamp() + " ::PredictiveTakeEntityToTargetInventory input data not sent yet, cannot allow another input action");
599 return false;
600 }
601
602 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), target))
603 return JunctureTakeEntityToTargetInventory(target, flags, item);
604 else
605 return TakeEntityToTargetInventoryImpl(InventoryMode.PREDICTIVE, target, flags, item);
606 }
607
609 {
610 if( GetInventory().CanAddAttachment( item ) )
611 {
613 }
614 else
615 {
616 for( int i = 0; i < item.GetInventory().GetSlotIdCount(); i++ )
617 {
618 int slot_id = item.GetInventory().GetSlotId(i);
619 EntityAI slot_item = GetInventory().FindAttachment( slot_id );
620 if( slot_item && GetInventory().CanSwapEntitiesEx( item, slot_item ) )
621 {
622 return PredictiveSwapEntities(item, slot_item);
623 }
624 }
625 }
626 return false;
627 }
628
629 override bool LocalTakeEntityToTargetInventory (notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
630 {
631 return TakeEntityToTargetInventoryImpl(InventoryMode.LOCAL, target, flags, item);
632 }
633
634 protected bool TakeEntityToTargetInventoryImpl (InventoryMode mode, notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
635 {
636 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2TargetInv(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
637 bool code = GetInventory().TakeEntityToTargetInventory(mode, target, flags, item);
639 return code;
640 }
641
642
644 bool JunctureTakeEntityToTargetCargoEx (notnull CargoBase cargo, notnull EntityAI item, int row, int col)
645 {
646 return TakeEntityToTargetCargoExImpl(InventoryMode.JUNCTURE, cargo, item, row, col);
647 }
648
649 override bool PredictiveTakeEntityToTargetCargoEx (notnull CargoBase cargo, notnull EntityAI item, int row, int col)
650 {
652 {
653 Print("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::PredictiveTakeEntityToTargetCargoEx input data not sent yet, cannot allow another input action");
654 return false;
655 }
656
657 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), cargo.GetCargoOwner()))
658 return JunctureTakeEntityToTargetCargoEx(cargo, item, row, col);
659 else
660 return TakeEntityToTargetCargoExImpl(InventoryMode.PREDICTIVE, cargo, item, row, col);
661 }
662
663 override bool LocalTakeEntityToTargetCargoEx (notnull CargoBase cargo, notnull EntityAI item, int row, int col)
664 {
665 return TakeEntityToTargetCargoExImpl(InventoryMode.LOCAL, cargo, item, row, col);
666 }
667
668 override bool ServerTakeEntityToTargetCargoEx (notnull CargoBase cargo, notnull EntityAI item, int row, int col)
669 {
670 return TakeEntityToTargetCargoExImpl(InventoryMode.SERVER, cargo, item, row, col);
671 }
672
673 protected bool TakeEntityToTargetCargoExImpl (InventoryMode mode, notnull CargoBase cargo, notnull EntityAI item, int row, int col)
674 {
675 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2TargetCgoEx(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
676 bool code = GetInventory().TakeEntityToTargetCargoEx(mode, cargo, item, row, col);
678 return code;
679 }
680
681
683 bool JunctureTakeEntityToTargetCargo (notnull EntityAI target, notnull EntityAI item)
684 {
685 return TakeEntityToTargetCargoImpl(InventoryMode.JUNCTURE, target, item);
686 }
687
688 override bool PredictiveTakeEntityToTargetCargo (notnull EntityAI target, notnull EntityAI item)
689 {
691 {
692 Print("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::PredictiveTakeEntityToTargetCargo input data not sent yet, cannot allow another input action");
693 return false;
694 }
695
696 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), target))
697 return JunctureTakeEntityToTargetCargo(target, item);
698 else
699 return TakeEntityToTargetCargoImpl(InventoryMode.PREDICTIVE, target, item);
700 }
701
702 override bool LocalTakeEntityToTargetCargo (notnull EntityAI target, notnull EntityAI item)
703 {
704 return TakeEntityToTargetCargoImpl(InventoryMode.LOCAL, target, item);
705 }
706
707 override bool ServerTakeEntityToTargetCargo (notnull EntityAI target, notnull EntityAI item)
708 {
709 if (IsAlive())
710 return TakeEntityToTargetCargoImpl(InventoryMode.SERVER, target, item);
711 else
712 return TakeEntityToTargetCargoImpl(InventoryMode.SERVER, target, item);
713 }
714
715 protected bool TakeEntityToTargetCargoImpl (InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
716 {
717 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " Take2TargetCgo(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
718
719 bool code = GetInventory().TakeEntityToTargetInventory(mode, target, FindInventoryLocationType.CARGO, item);
721 return code;
722 }
723
724
726 bool JunctureTakeEntityToTargetAttachmentEx (notnull EntityAI target, notnull EntityAI item, int slot)
727 {
728 return TakeEntityToTargetAttachmentExImpl(InventoryMode.JUNCTURE, target, item, slot);
729 }
730
731 override bool PredictiveTakeEntityToTargetAttachmentEx (notnull EntityAI target, notnull EntityAI item, int slot)
732 {
734 {
735 Print("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::PredictiveTakeEntityToTargetAttachmentEx input data not sent yet, cannot allow another input action");
736 return false;
737 }
738
739 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), target))
740 return JunctureTakeEntityToTargetAttachmentEx(target, item, slot);
741 else
742 return TakeEntityToTargetAttachmentExImpl(InventoryMode.PREDICTIVE, target, item, slot);
743 }
744
745 override bool LocalTakeEntityToTargetAttachmentEx (notnull EntityAI target, notnull EntityAI item, int slot)
746 {
747 return TakeEntityToTargetAttachmentExImpl(InventoryMode.LOCAL, target, item, slot);
748 }
749
750 override bool ServerTakeEntityToTargetAttachmentEx (notnull EntityAI target, notnull EntityAI item, int slot)
751 {
752 return TakeEntityToTargetAttachmentExImpl(InventoryMode.SERVER, target, item, slot);
753 }
754
755 protected bool TakeEntityToTargetAttachmentExImpl (InventoryMode mode, notnull EntityAI target, notnull EntityAI item, int slot)
756 {
757 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2TargetAtt(" + typename.EnumToString(InventoryMode, mode) + ") item=" + Object.GetDebugName(item));
758 bool code = GetInventory().TakeEntityAsTargetAttachmentEx(mode, target, item, slot);
760 return code;
761 }
762
763
765 bool JunctureTakeEntityToTargetAttachment (notnull EntityAI target, notnull EntityAI item)
766 {
767 return TakeEntityToTargetAttachmentImpl(InventoryMode.JUNCTURE, target, item);
768 }
769
770 override bool PredictiveTakeEntityToTargetAttachment (notnull EntityAI target, notnull EntityAI item)
771 {
773 {
774 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeEntityToTargetAttachment input data not sent yet, cannot allow another input action");
775 return false;
776 }
777
778 if (NeedInventoryJunctureFromServer(item, item.GetHierarchyParent(), target))
779 return JunctureTakeEntityToTargetAttachment(target, item);
780 else
781 return TakeEntityToTargetAttachmentImpl(InventoryMode.PREDICTIVE, target, item);
782 }
783
784 override bool LocalTakeEntityToTargetAttachment (notnull EntityAI target, notnull EntityAI item)
785 {
786 return TakeEntityToTargetAttachmentImpl(InventoryMode.LOCAL, target, item);
787 }
788
789 override bool ServerTakeEntityToTargetAttachment (notnull EntityAI target, notnull EntityAI item)
790 {
791 return TakeEntityToTargetAttachmentImpl(InventoryMode.SERVER, target, item);
792 }
793
794 protected bool TakeEntityToTargetAttachmentImpl (InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
795 {
797 if( target.GetInventory().FindFreeLocationFor( item, FindInventoryLocationType.ATTACHMENT, il) )
798 {
799 return TakeEntityToTargetAttachmentExImpl(mode, target, item, il.GetSlot());
800 }
801 return false;
802 }
803
804
807 {
808 return TakeToDstImpl(InventoryMode.JUNCTURE, src, dst);
809 }
810
811 override bool PredictiveTakeToDst (notnull InventoryLocation src, notnull InventoryLocation dst)
812 {
814 {
815 Print("[inv] " + GetSimulationTimeStamp() + " Man@" + this + " ::PredictiveTakeToDst input data not sent yet, cannot allow another input action");
816 return false;
817 }
818
819 if (NeedInventoryJunctureFromServer(src.GetItem(), src.GetParent(), dst.GetParent()))
820 return JunctureTakeToDst(src, dst);
821 else
822 return TakeToDstImpl(InventoryMode.PREDICTIVE, src, dst);
823 }
824
825 override bool LocalTakeToDst (notnull InventoryLocation src, notnull InventoryLocation dst)
826 {
827 return TakeToDstImpl(InventoryMode.LOCAL, src, dst);
828 }
829
830 override bool ServerTakeToDst (notnull InventoryLocation src, notnull InventoryLocation dst)
831 {
832 return TakeToDstImpl(InventoryMode.SERVER, src, dst);
833 }
834
835 protected bool TakeToDstImpl (InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
836 {
837 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS = " + GetSimulationTimeStamp() + " ::Take2Dst(" + typename.EnumToString(InventoryMode, mode) + ") src=" + InventoryLocation.DumpToStringNullSafe(src) + " dst=" + InventoryLocation.DumpToStringNullSafe(dst));
838 bool code = GetHumanInventory().TakeToDst(mode, src, dst);
840 return code;
841 }
842
844
846 {
847
848 }
849
850 override bool CanBeSkinned()
851 {
852 return !GetIsFrozen();
853 }
854
855 override bool DisableVicinityIcon()
856 {
857 return true;
858 }
859
861
864
867 proto native bool StatRegister( string name );
869
872 proto native float StatGet( string name );
874
878 proto void StatGetCounter( string name, out string value );
880
884 proto void StatGetAsTime( string name, out string value );
886
890 proto native void StatUpdate( string name, float value );
892
896 proto native void StatUpdateByTime( string name );
898
902 proto native void StatUpdateByPosition( string name );
904
908 proto native void StatUpdateByGivenPos( string name, vector pos );
912 proto native void StatInvokeUpdate();
916 proto native void StatSyncToClient();
918
920 {
921 return false;
922 }
923
924 void SetInventorySoftLock(bool status);
925
928 {
929 return Transport.Cast(GetParent()) != null;
930 }
931
933 bool PhysicalPredictiveDropItem(EntityAI entity, bool heavy_item_only = true);
934 void SetProcessUIWarning(bool state);
935 void OnGameplayDataHandlerSync(); //depricated, sync now happens before the player is created, calling of this event still happens for legacy reasons
937};
void syncDebugPrint(string s)
Определения Debug.c:1
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
Определения Inventory.c:22
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
override bool TakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
Определения DayZPlayerInventory.c:1655
EPlayerStates
Определения EPlayerStates.c:2
FindInventoryLocationType
flags for searching locations in inventory
Определения InventoryLocation.c:17
represents base for cargo storage for entities
Определения Cargo.c:7
bool ReplaceItemInHandsWithNewImpl(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
hand replace
Определения Man.c:300
override bool ServerTakeEntityToTargetAttachment(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:789
override bool IsHealthVisible()
Определения Man.c:49
proto native void StatUpdateByTime(string name)
Updates stat counter by time.
override bool PredictiveTakeToDst(notnull InventoryLocation src, notnull InventoryLocation dst)
Определения Man.c:811
void AddItemToDelete(EntityAI item)
override bool LocalTakeEntityToTargetInventory(notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:629
override bool PredictiveTakeEntityToInventory(FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:345
override bool LocalTakeToDst(notnull InventoryLocation src, notnull InventoryLocation dst)
Определения Man.c:825
override bool PredictiveTakeEntityAsAttachment(notnull EntityAI item)
Определения Man.c:423
bool JunctureTakeEntityToTargetCargoEx(notnull CargoBase cargo, notnull EntityAI item, int row, int col)
to target cgo ex juncture
Определения Man.c:644
ref ScriptInvoker m_OnItemAddedToHands
Определения Man.c:77
bool JunctureTakeEntityAsAttachment(notnull EntityAI item)
as att juncture
Определения Man.c:418
bool TakeEntityToCargoImpl(InventoryMode mode, notnull EntityAI item)
Определения Man.c:408
bool ServerReplaceItemInHandsWithNewElsewhere(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:333
override bool PredictiveTakeEntityAsAttachmentEx(notnull EntityAI item, int slot)
Определения Man.c:462
void UpdateInventoryMenu()
bool JunctureTakeEntityToTargetCargo(notnull EntityAI target, notnull EntityAI item)
to target cgo juncture
Определения Man.c:683
bool IsUnconsciousStateOnly()
uncon command might be still in progress but state already changed (for simple checks only - eg....
bool LocalReplaceItemElsewhereWithNewInHands(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:288
override bool PredictiveDropEntity(notnull EntityAI item)
Определения Man.c:118
override bool ServerTakeEntityToTargetCargo(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:707
override bool ServerTakeEntityToCargo(notnull EntityAI item)
Определения Man.c:403
bool JunctureDropEntity(notnull EntityAI item)
drop juncture
Определения Man.c:113
bool LocalReplaceItemInHandsWithNewElsewhere(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:328
ScriptInvoker GetOnItemAddedToHands()
Определения Man.c:81
void Man()
Определения Man.c:39
bool IsInventorySoftLocked()
Определения Man.c:919
void SetInventorySoftLock(bool status)
override bool PredictiveTakeEntityToTargetInventory(notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:594
bool LocalReplaceItemInHandsWithNew(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:308
override bool LocalTakeEntityToInventory(FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:359
bool IsInTransport()
returns true if man is in transport, false otherwise
Определения Man.c:927
proto native void StatSyncToClient()
override bool ServerTakeEntityToTargetAttachmentEx(notnull EntityAI target, notnull EntityAI item, int slot)
Определения Man.c:750
bool ServerSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
Определения Man.c:522
override bool LocalTakeEntityAsAttachmentEx(notnull EntityAI item, int slot)
Определения Man.c:476
void LocalDestroyEntityInHands()
Определения Man.c:215
int GetPlayerState()
Определения Man.c:63
proto native void SetMasterAttenuation(string masterAttenuation)
override bool PredictiveTakeEntityToTargetAttachmentEx(notnull EntityAI target, notnull EntityAI item, int slot)
Определения Man.c:731
void JunctureTakeEntityToHands(notnull EntityAI item)
hand juncture
Определения Man.c:158
bool SwapEntitiesImpl(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2)
Определения Man.c:527
override bool ServerTakeEntityToInventory(FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:364
bool ReplaceItemWithNewImpl(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
!hand -> !hand replace
Определения Man.c:260
bool JunctureTakeEntityAsAttachmentEx(notnull EntityAI item, int slot)
as att ex juncture
Определения Man.c:457
bool ReplaceItemElsewhereWithNewInHandsImpl(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
!hand replace -> hand
Определения Man.c:280
void TakeEntityToHandsImpl(InventoryMode mode, EntityAI item)
Определения Man.c:187
bool ServerReplaceItemWithNew(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:273
override bool LocalTakeEntityToTargetAttachmentEx(notnull EntityAI target, notnull EntityAI item, int slot)
Определения Man.c:745
proto native float StatGet(string name)
Gets counter value of the specified stat type.
void OnItemInHandsChanged()
Определения Man.c:153
override bool LocalTakeEntityToTargetAttachment(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:784
override bool PredictiveTakeEntityToTargetCargo(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:688
proto native owned string GetMasterAttenuation()
override bool PredictiveTakeEntityToTargetAttachment(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:770
bool PredictiveForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
Определения Man.c:549
bool JunctureSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
swap juncture
Определения Man.c:496
bool JunctureTakeEntityToTargetInventory(notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
to target inv juncture
Определения Man.c:589
proto native void StatInvokeUpdate()
override bool CanBeSkinned()
Определения Man.c:850
proto native EntityAI GetDrivingVehicle()
Returns vehicle which this Man object is driving. If this Man object isn't as driver of any vehicle i...
void ServerTakeEntityToHands(EntityAI item)
Определения Man.c:182
void LocalTakeEntityToHands(EntityAI item)
Определения Man.c:177
bool TakeEntityAsAttachmentExImpl(InventoryMode mode, notnull EntityAI item, int slot)
Определения Man.c:486
override bool CanDropEntity(notnull EntityAI item)
Определения Man.c:151
override bool IsMan()
Определения Man.c:44
override bool ServerTakeEntityToTargetCargoEx(notnull CargoBase cargo, notnull EntityAI item, int row, int col)
Определения Man.c:668
bool LocalSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
Определения Man.c:517
proto native owned string GetCurrentWeaponMode()
void EEItemIntoHands(EntityAI item)
Определения Man.c:98
bool PhysicalPredictiveDropItem(EntityAI entity, bool heavy_item_only=true)
proto native void SetFaceTexture(string texture_name)
Texture that is used on the Man's face and hands.
void StopDeathDarkeningEffect()
bool PredictiveTakeOrSwapAttachment(notnull EntityAI item)
Определения Man.c:608
proto void StatGetCounter(string name, out string value)
Gets counter value as string of the specified stat type.
override bool HasFixedActionTargetCursorPosition()
Определения Man.c:54
override bool DisableVicinityIcon()
Определения Man.c:855
bool JunctureTakeEntityToCargo(notnull EntityAI item)
to cgo juncture
Определения Man.c:379
bool TakeEntityToTargetAttachmentExImpl(InventoryMode mode, notnull EntityAI target, notnull EntityAI item, int slot)
Определения Man.c:755
bool JunctureTakeEntityToInventory(FindInventoryLocationType flags, notnull EntityAI item)
to inv juncture
Определения Man.c:340
bool ServerReplaceItemElsewhereWithNewInHands(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:293
bool LocalForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
Определения Man.c:565
bool JunctureTakeEntityToTargetAttachmentEx(notnull EntityAI target, notnull EntityAI item, int slot)
to target att ex juncture
Определения Man.c:726
bool JunctureTakeToDst(notnull InventoryLocation src, notnull InventoryLocation dst)
to dst juncture
Определения Man.c:806
proto native void SetSpeechRestricted(bool state)
Set speech restriction.
proto native void SetFaceMaterial(string material_name)
Material that is used on the Man's face and hands.
proto native bool IsCameraInsideVehicle()
bool ForceSwapEntitiesImpl(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
Определения Man.c:575
override bool ServerTakeToDst(notnull InventoryLocation src, notnull InventoryLocation dst)
Определения Man.c:830
proto native bool StatRegister(string name)
override bool LocalTakeEntityToTargetCargoEx(notnull CargoBase cargo, notnull EntityAI item, int row, int col)
Определения Man.c:663
bool TakeToDstImpl(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
Определения Man.c:835
bool JunctureTakeEntityToTargetAttachment(notnull EntityAI target, notnull EntityAI item)
to target att juncture
Определения Man.c:765
bool ServerForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
Определения Man.c:570
override bool LocalTakeEntityAsAttachment(notnull EntityAI item)
Определения Man.c:437
override bool LocalTakeEntityToCargo(notnull EntityAI item)
Определения Man.c:398
override bool LocalTakeEntityToTargetCargo(notnull EntityAI target, notnull EntityAI item)
Определения Man.c:702
override bool ServerDropEntity(notnull EntityAI item)
Определения Man.c:137
proto native void StatUpdate(string name, float value)
Updates stat counter with given value.
proto native PlayerIdentity GetIdentity()
Returns player's identity.
bool NeedInventoryJunctureFromServer(notnull EntityAI item, EntityAI currParent, EntityAI newParent)
Определения Man.c:155
proto native bool IsSpeechRestricted()
Check if player has resctricted speech.
bool TakeEntityToTargetAttachmentImpl(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
Определения Man.c:794
proto native UAInterface GetInputInterface()
Returns player's input interface.
override bool ServerTakeEntityAsAttachment(notnull EntityAI item)
Определения Man.c:442
proto native void StatUpdateByPosition(string name)
Updates stat counter by player's actual position.
bool JunctureForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
ForceSwap juncture.
Определения Man.c:544
bool CanPlaceItem(EntityAI item)
void SetProcessUIWarning(bool state)
ref ScriptInvoker m_OnItemRemovedFromHands
Определения Man.c:79
bool IsUnconscious()
void JunctureDeleteItem(EntityAI item)
Определения Man.c:845
bool DropEntityImpl(InventoryMode mode, notnull EntityAI owner, notnull EntityAI item)
Определения Man.c:142
bool TakeEntityToTargetCargoImpl(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
Определения Man.c:715
bool TakeEntityToTargetCargoExImpl(InventoryMode mode, notnull CargoBase cargo, notnull EntityAI item, int row, int col)
Определения Man.c:673
void Transport()
Определения Transport.c:66
proto void StatGetAsTime(string name, out string value)
Gets counter value as formatted time string of the specified stat type.
bool ServerReplaceItemInHandsWithNew(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:313
override bool ServerTakeEntityAsAttachmentEx(notnull EntityAI item, int slot)
Определения Man.c:481
proto native bool IsSoundInsideBuilding()
void PredictiveMoveItemFromHandsToInventory()
Определения Man.c:222
proto native HumanInventory GetHumanInventory()
override bool LocalDropEntity(notnull EntityAI item)
Определения Man.c:132
void OnGameplayDataHandlerSync()
void EEItemOutOfHands(EntityAI item)
Определения Man.c:105
bool TakeEntityToTargetInventoryImpl(InventoryMode mode, notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:634
ScriptInvoker GetOnItemRemovedFromHands()
Определения Man.c:90
void PredictiveTakeEntityToHands(EntityAI item)
Определения Man.c:163
override bool PredictiveTakeEntityToCargo(notnull EntityAI item)
Определения Man.c:384
bool TakeEntityAsAttachmentImpl(InventoryMode mode, notnull EntityAI item)
Определения Man.c:447
proto native void StatUpdateByGivenPos(string name, vector pos)
Updates stat counter by given position.
bool PredictiveSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
Определения Man.c:501
override bool PredictiveTakeEntityToTargetCargoEx(notnull CargoBase cargo, notnull EntityAI item, int row, int col)
Определения Man.c:649
bool ReplaceItemInHandsWithNewElsewhereImpl(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
hand replace2
Определения Man.c:320
bool LocalReplaceItemWithNew(ReplaceItemWithNewLambdaBase lambda)
Определения Man.c:268
bool TakeEntityToInventoryImpl(InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)
Определения Man.c:369
Определения Building.c:6
static bool CanSwapEntitiesEx(notnull EntityAI item1, notnull EntityAI item2)
Определения Inventory.c:628
bool TakeEntityAsAttachment(InventoryMode mode, notnull EntityAI item)
Определения Inventory.c:1177
bool TakeEntityToCargo(InventoryMode mode, notnull EntityAI item)
moves item to cargo of this intentory
Определения Inventory.c:1079
script counterpart to engine's class Inventory
Определения Inventory.c:79
override bool ReplaceItemWithNew(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
Определения HumanInventory.c:451
override bool TakeEntityAsAttachmentEx(InventoryMode mode, notnull EntityAI item, int slot)
Определения HumanInventory.c:298
bool ReplaceItemInHandsWithNewElsewhere(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
Определения HumanInventory.c:535
proto native EntityAI GetEntityInHands()
bool ReplaceItemElsewhereWithNewInHands(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
Определения HumanInventory.c:460
override bool TakeEntityToInventory(InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)
Определения HumanInventory.c:245
override bool LocalDestroyEntity(notnull EntityAI item)
Определения HumanInventory.c:425
override bool DropEntity(InventoryMode mode, EntityAI owner, notnull EntityAI item)
Определения HumanInventory.c:139
bool ReplaceItemInHandsWithNew(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
Определения HumanInventory.c:530
override bool TakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
Определения HumanInventory.c:235
override bool ForceSwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
Определения HumanInventory.c:372
override bool SwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2)
Определения HumanInventory.c:328
inventory for plain man/human
Определения HumanInventory.c:10
proto native void SetHands(notnull EntityAI parent, EntityAI e)
sets current inventory location type to Hands
static string DumpToStringNullSafe(InventoryLocation loc)
Определения InventoryLocation.c:226
proto native int GetSlot()
returns slot id if current type is Attachment
InventoryLocation.
Определения InventoryLocation.c:29
static bool IsSyncLogEnable()
Определения Debug.c:678
Определения Debug.c:594
Определения ObjectTyped.c:2
The class that will be instanced (moddable)
Определения gameplay.c:389
base class for transformation operations (creating one item from another)
Определения ReplaceItemWithNewLambdaBase.c:5
proto static native bool CanStoreInputUserData()
Returns true when the channel is free, AND the InputBuffer is NOT full (same as '!...
Определения gameplay.c:121
ScriptInvoker Class provide list of callbacks usage:
Определения tools.c:116
Определения UAInput.c:97
Определения EnConvert.c:106
override string GetDebugName()
Определения dayzplayer.c:1170
proto native CGame GetGame()
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90
proto void Print(void var)
Prints content of variable to console/log.
proto native void SetFlags(ShapeFlags flags)
EntityFlags
Entity flags.
Определения EnEntity.c:115
proto native Widget GetParent()
Get parent of the Effect.
Определения Effect.c:407