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

◆ GetSoundCategory()

override string ActionBuildPartHandsGeneric::GetSoundCategory ( ActionData action_data)

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

551 : ActionReciveData
552{
553 string m_PartType;
554}
555
556class BuildPartActionData : ActionData
557{
558 string m_PartType;
559};
560
562{
563 override void CreateActionComponent()
564 {
565 float time = SetCallbackDuration(m_ActionData.m_MainItem);
566 m_ActionData.m_ActionComponent = new CAContinuousTime(time);
567 }
568
569 float SetCallbackDuration(ItemBase item)
570 {
571 #ifdef DIAG_DEVELOPER
572 if (m_ActionData.m_Player.GetConstructionActionData().GetFastConstructionMode() == EConstructionDebugModes.FAST)
573 return 1;
574 #endif
575
576 if (item) //TODO: configure and evaluate item suitability?
577 return UATimeSpent.BASEBUILDING_CONSTRUCT_MEDIUM;
578 else
579 return UATimeSpent.BASEBUILDING_CONSTRUCT_SLOW;
580 }
581};
582
584{
585 void ActionBuildPart()
586 {
587 m_CallbackClass = ActionBuildPartCB;
588 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_ASSEMBLE;
589 m_FullBody = true;
590 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
591
592 m_SpecialtyWeight = UASoftSkillsWeight.ROUGH_HIGH;
593 m_LockTargetOnUse = false;
594 m_Text = "#build";
595 }
596
597 override void CreateConditionComponents()
598 {
599 m_ConditionItem = new CCINonRuined;
600 m_ConditionTarget = new CCTCursor;
601 }
602
603 override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
604 {
605 ConstructionActionData cad = player.GetConstructionActionData();
607 if (part)
608 {
609 string overrideText = part.GetBuildTextOverride();
610 if (overrideText == string.Empty)
611 m_Text = "#build "+ part.GetName();
612 else
613 m_Text = overrideText;
614
615 #ifdef DIAG_DEVELOPER
616 if (DiagMenu.GetBool(DiagMenuIDs.BASEBUILDING_FULLDEBUG))
617 {
618 m_Text = "dbgBuild | part classname: " + part.GetPartName();
619 }
620 #endif
621 }
622 }
623
624 override void InitInfoData()
625 {
626 m_InfoData = new ActionInfoDataConstructionPossible();
627 }
628
629 override bool CanBeUsedLeaning()
630 {
631 return false;
632 }
633
634 override bool CanBeUsedInFreelook()
635 {
636 return false;
637 }
638
639 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
640 {
641 #ifdef DIAG_DEVELOPER
642 if (player.GetConstructionActionData().GetFastConstructionMode() == EConstructionDebugModes.INSTANT)
643 return false;
644 #endif
645
646 EntityAI ent;
647 if (!Class.CastTo(ent,target.GetObject()))
648 return false;
649
650 if (player.IsPlacingLocal() || player.IsPlacingServer())
651 return false;
652
653 //Action not allowed if player has broken legs
654 if (player.GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
655 return false;
656
657 if (!ent.CanUseConstruction() || !ent.CanUseConstructionBuild())
658 return false;
659
660 if ((!GetGame().IsDedicatedServer()))
661 {
662 if (!PositioningCheck(player, target))
663 return false;
664
665 if (MiscGameplayFunctions.ComplexBuildCollideCheckClient(player, target, item, m_VariantID))
666 return GatherInfoData(player,target,item);
667
668 return false;
669 }
670 return true;
671 }
672
673 override bool ActionConditionContinue(ActionData action_data)
674 {
675 EntityAI ent = EntityAI.Cast(action_data.m_Target.GetObject());
676 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
677 string part_name = BuildPartActionData.Cast(action_data).m_PartType;
678 CollisionCheckData check_data = new CollisionCheckData;
679
680 check_data.m_PartName = part_name;
681 check_data.m_AdditionalExcludes.Insert(action_data.m_Player);
682
683 bool canBuild = construction.CanBuildPart(part_name, action_data.m_MainItem, true);
684 #ifdef DIAG_DEVELOPER
685 if (action_data.m_Player.GetConstructionActionData().GetFastConstructionMode())
686 canBuild = true;
687 #endif
688 if (GetGame().IsServer())
689 {
690 bool collides = construction.IsCollidingEx(check_data);
691
692 return !collides && canBuild;
693 }
694 else
695 {
696 return canBuild;
697 }
698 }
699
700 override void OnFinishProgressServer(ActionData action_data)
701 {
702 EntityAI ent = EntityAI.Cast(action_data.m_Target.GetObject());
703 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
704
705 string partName = BuildPartActionData.Cast(action_data).m_PartType;
706 ConstructionPart part = construction.GetConstructionPart(partName);
708
709 checkData.m_PartName = partName;
710 checkData.m_AdditionalExcludes.Insert(action_data.m_Player);
711
712 bool canBuild = construction.CanBuildPart(partName, action_data.m_MainItem, UseMainItem()); //TODO: do we need to check it here when ActionVariantManager already does it?
713 #ifdef DIAG_DEVELOPER
714 if (action_data.m_Player.GetConstructionActionData().GetFastConstructionMode())
715 canBuild = true;
716 #endif
717 if (!construction.IsCollidingEx(checkData) && canBuild)
718 {
719 //build
720 construction.BuildPartServerEx(action_data.m_Player, partName, AT_BUILD_PART);
721
722 #ifdef DIAG_DEVELOPER
723 //skip tool/hand damage on debug action
724 if (action_data.m_Player.GetConstructionActionData().GetFastConstructionMode())
725 return;
726 #endif
727
728 //add damage to tool or hands
729 if (action_data.m_MainItem)
730 {
731 if (part.DamageToolOnBuild())
732 action_data.m_MainItem.DecreaseHealth(UADamageApplied.BUILD, false);
733 }
734 else
735 {
736 if (part.DamageHandsOnBuild())
737 {
738 EntityAI gloves = action_data.m_Player.GetInventory().FindAttachment(InventorySlots.GLOVES);
739 if (gloves && gloves.GetHealthLevel() < 4)
740 {
741 gloves.AddHealth("","", PlayerConstants.GLOVES_DAMAGE_HAND_CONSTRUCTION);
742 }
743 else if (Math.RandomFloat01() < PlayerConstants.CHANCE_TO_BLEED_HAND_CONSTRUCTION)
744 {
745 if (Math.RandomFloat01() < 0.5)
746 action_data.m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("LeftForeArmRoll");
747 else
748 action_data.m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("RightForeArmRoll");
749 action_data.m_Player.RequestSoundEventEx(EPlayerSoundEventID.INJURED_LIGHT); //play sound regardless?
750 }
751 }
752 }
753 }
754 }
755
756 override string GetSoundCategory(ActionData action_data)
757 {
758 return "Base_building";
759 }
760
761 override ActionData CreateActionData()
762 {
763 BuildPartActionData action_data = new BuildPartActionData;
764 return action_data;
765 }
766
767 //setup
768 override bool SetupAction(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data = NULL)
769 {
770 if (super.SetupAction(player, target, item, action_data, extra_data))
771 {
772 if (!g_Game.IsDedicatedServer())
773 {
774 ComposeBuildActionDataClient(player,target,item,action_data,extra_data);
775 }
776
777 SetBuildingAnimationEx(player, target, item, action_data, extra_data);
778 return true;
779 }
780
781 return false;
782 }
783
784 protected void ComposeBuildActionDataClient(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data = NULL)
785 {
786 ConstructionActionData cad = action_data.m_Player.GetConstructionActionData();
788 BuildPartActionData.Cast(action_data).m_PartType = part.GetPartName();
789 }
790
791 protected void SetBuildingAnimationEx(PlayerBase player, ActionTarget target, ItemBase item, ActionData action_data, Param extra_data = NULL)
792 {
793 if (!item)
794 return;
795
796 switch (item.Type())
797 {
798 case Pickaxe:
799 case Shovel:
800 case FarmingHoe:
801 case FieldShovel:
802 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_DIG;
803 break;
804 case Pliers:
805 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_INTERACT;
806 break;
807 case SledgeHammer:
808 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_MINEROCK;
809 break;
810 case BrickTrowel:
811 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_BRICKTROWEL;
812 break;
813 default:
814 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_ASSEMBLE;
815 break;
816 }
817 }
818
819 override void WriteToContext(ParamsWriteContext ctx, ActionData action_data)
820 {
821 super.WriteToContext(ctx, action_data);
822
823 ctx.Write(BuildPartActionData.Cast(action_data).m_PartType);
824 }
825
826 override bool ReadFromContext(ParamsReadContext ctx, out ActionReciveData action_recive_data)
827 {
828 action_recive_data = new BuildPartActionReciveData;
829 super.ReadFromContext(ctx, action_recive_data);
830
831 string part_type;
832 if (ctx.Read(part_type))
833 {
834 BuildPartActionReciveData.Cast(action_recive_data).m_PartType = part_type;
835 return true;
836 }
837 else
838 {
839 return false;
840 }
841 }
842
843 override void HandleReciveData(ActionReciveData action_recive_data, ActionData action_data)
844 {
845 super.HandleReciveData(action_recive_data, action_data);
846
847 BuildPartActionData.Cast(action_data).m_PartType = BuildPartActionReciveData.Cast(action_recive_data).m_PartType;
848 }
849
850 override string GetAdminLogMessage(ActionData action_data)
851 {
852 string partName = BuildPartActionData.Cast(action_data).m_PartType;
853
854 string itemName = "hands";
855 if (action_data.m_MainItem)
856 itemName = action_data.m_MainItem.GetDisplayName();
857
858 string message = string.Format("Built %1 on %2 with %3", partName, action_data.m_Target.GetObject().GetDisplayName(), itemName);
859 return message;
860 }
861
862 protected void ClearInfoData()
863 {
865 }
866
867 protected bool GatherInfoData(PlayerBase player, ActionTarget target, ItemBase item)
868 {
870
871 ActionInfoDataConstructionPossible info = ActionInfoDataConstructionPossible.Cast(m_InfoData);
872 ConstructionActionData cad = player.GetConstructionActionData();
874 info.SetConstructionPart(part);
875 info.SetTool(item);
876
877 info.m_InfoContextMask |= EConstructionInfoCategories.MATERIALS_PRESENCE; //material info should always be visible
878 info.m_InfoContextMask |= EConstructionInfoCategories.TOOL_PRESENCE; //tools info should always be visible
879
880 return info.CanDisplayInfo();
881 }
882
884 protected bool PositioningCheck(PlayerBase player, ActionTarget target)
885 {
886 EntityAI ent = EntityAI.Cast(target.GetObject());
887 BaseBuildingBase bbb = BaseBuildingBase.Cast(ent);
888 ConstructionActionData cad = player.GetConstructionActionData();
890
891 if (part)
892 {
893 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
894 if (!ent.IsPlayerInsideEx(player, part.GetPartName()))
895 {
896 if (bbb && !bbb.MustBeBuiltFromOutside())
897 return false;
898 else if (!bbb)
899 return false;
900 }
901 if (!construction.ConstructionDirectionCheck(player, part, EConstructionDirCheckType.INDOORS))
902 return false;
903 if (!construction.ConstructionInsiderBoxCheck(player, part))
904 return false;
905
906 return true;
907 }
908 return false;
909 }
910
912 protected ConstructionPart GetTargetPart(ConstructionActionData cad)
913 {
915 }
916
918 //deprecated//
920 [Obsolete("Use 'SetBuildingAnimationEx' instead")]
921 protected void SetBuildingAnimation(ItemBase item)
922 {
923 SetBuildingAnimationEx(null,null,item,null);
924 }
925}
926
928{
930 {
931 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_DEPLOY_2HD;
932 }
933
934 override void CreateConditionComponents()
935 {
936 m_ConditionItem = new CCINone;
937 m_ConditionTarget = new CCTCursor;
938 }
939
940 override bool UseMainItem()
941 {
942 return false;
943 }
944
945 override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
946 {
947 ConstructionActionData cad = player.GetConstructionActionData();
949 if (part)
950 {
951 string overrideText = part.GetBuildTextOverride();
952 if (overrideText == string.Empty)
953 m_Text = "#build "+ part.GetName();
954 else
955 m_Text = overrideText;
956
957 #ifdef DIAG_DEVELOPER
958 if (DiagMenu.GetBool(DiagMenuIDs.BASEBUILDING_FULLDEBUG))
959 {
960 m_Text = "dbgBuild | part classname: " + part.GetPartName() + " with hands";
961 }
962 #endif
963 }
964 }
965
966 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
967 {
968 #ifdef DIAG_DEVELOPER
969 if (player.GetConstructionActionData().GetFastConstructionMode() == EConstructionDebugModes.INSTANT)
970 return false;
971 #endif
972
973 if (item)
974 return false;
975
976 EntityAI ent;
977 if (!Class.CastTo(ent,target.GetObject()))
978 return false;
979
980 if (player.IsPlacingLocal() || player.IsPlacingServer())
981 return false;
982
983 //Action not allowed if player has broken legs
984 if (player.GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
985 return false;
986
987 bool handConstructionCondition = ent.CanUseHandConstruction();
988 #ifdef DIAG_DEVELOPER
989 if (player.GetConstructionActionData().GetFastConstructionMode())
990 handConstructionCondition = true;
991 #endif
992
993 if (!ent.CanUseConstruction() || !ent.CanUseConstructionBuild() || !handConstructionCondition)
994 return false;
995
996 if ((!GetGame().IsDedicatedServer()))
997 {
998 if (!PositioningCheck(player, target))
999 return false;
1000
1001 if (MiscGameplayFunctions.ComplexBuildCollideCheckClient(player, target, item, m_VariantID))
1002 return GatherInfoData(player,target,item);
1003
1004 return false;
1005 }
1006 return true;
1007 }
1008
1009 override bool ActionConditionContinue(ActionData action_data)
1010 {
1011 EntityAI ent = EntityAI.Cast(action_data.m_Target.GetObject());
1012 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
1013 string part_name = BuildPartActionData.Cast(action_data).m_PartType;
1014 CollisionCheckData check_data = new CollisionCheckData;
1015
1016 check_data.m_PartName = part_name;
1017 check_data.m_AdditionalExcludes.Insert(action_data.m_Player);
1018
1019 bool canBuild = construction.CanBuildPart(part_name, null, false);
1020 #ifdef DIAG_DEVELOPER
1021 if (action_data.m_Player.GetConstructionActionData().GetFastConstructionMode())
1022 canBuild = true;
1023 #endif
1024 if (GetGame().IsServer())
1025 {
1026 bool collides = construction.IsCollidingEx(check_data);
1027
1028 return !collides && canBuild;
1029 }
1030 else
1031 {
1032 return canBuild;
1033 }
1034 }
1035
1036 override protected bool GatherInfoData(PlayerBase player, ActionTarget target, ItemBase item)
1037 {
1038 ClearInfoData();
1039
1040 ActionInfoDataConstructionPossible info = ActionInfoDataConstructionPossible.Cast(m_InfoData);
1041 ConstructionActionData cad = player.GetConstructionActionData();
1043 info.SetConstructionPart(part);
1044 info.SetTool(item);
1045
1046 info.m_InfoContextMask |= EConstructionInfoCategories.MATERIALS_PRESENCE; //material info should always be visible
1047 /*
1048 int actionMask = part.GetBuildActionTypeMask();
1049 actionMask &= ~EConstructionTools.TOOL_HANDS;
1050 if (actionMask != 0)
1051 info.m_InfoContextMask |= EConstructionInfoCategories.TOOL_PRESENCE; //tools info ONLY when also buildable by one!
1052 */
1053 info.m_InfoContextMask |= EConstructionInfoCategories.TOOL_PRESENCE; //tools info should always be visible
1054
1055 return info.CanDisplayInfo();
1056 }
1057
1058 override protected void ComposeBuildActionDataClient(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data = NULL)
1059 {
1060 ConstructionActionData cad = action_data.m_Player.GetConstructionActionData();
1061 BuildPartActionData.Cast(action_data).m_PartType = cad.GetBuildPartHandsGenericAtIndex(m_VariantID).GetPartName();
1062 }
1063
1065 override protected ConstructionPart GetTargetPart(ConstructionActionData cad)
1066 {
1068 }
1069
1071 override protected void SetBuildingAnimationEx(PlayerBase player, ActionTarget target, ItemBase item, ActionData action_data, Param extra_data = NULL)
1072 {
1073 if (item)
1074 return;
1075
1076 BuildPartActionData buildData;
1077 if (Class.CastTo(buildData, action_data))
1078 {
1079 EntityAI ent = EntityAI.Cast(action_data.m_Target.GetObject());
1080 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
1081 ConstructionPart part = construction.GetConstructionPart(buildData.m_PartType);
1082 int animOverrideID = part.GetHandBuildFBAnimOverride();
1083
1084 if (animOverrideID >= 0)
1085 m_CommandUID = animOverrideID;
1086 else
1087 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_DEPLOY_2HD;
1088 }
1089 }
1090}
1091
1092// Deprecated
class LogManager EntityAI
const int AT_BUILD_PART
bool m_FullBody
Определения ActionBase.c:60
string m_Text
Определения ActionBase.c:57
bool ActionConditionContinue(ActionData action_data)
Определения ActionBase.c:436
ref ActionInfoDataBase m_InfoData
Определения ActionBase.c:70
void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBase.c:1342
int m_VariantID
Определения ActionBase.c:67
void CreateConditionComponents()
Определения ActionBase.c:245
bool m_LockTargetOnUse
Определения ActionBase.c:59
ref CCIBase m_ConditionItem
Определения ActionBase.c:63
float m_SpecialtyWeight
Определения ActionBase.c:77
ref CCTBase m_ConditionTarget
Определения ActionBase.c:64
bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBase.c:441
bool UseMainItem()
Определения ActionBase.c:417
int m_StanceMask
Определения ActionBase.c:61
BuildPartActionReciveData m_PartType
void ComposeBuildActionDataClient(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data=NULL)
Определения ActionBuildPart.c:579
bool GatherInfoData(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBuildPart.c:662
bool PositioningCheck(PlayerBase player, ActionTarget target)
Can build from the inside only, if applicable.
Определения ActionBuildPart.c:679
void ClearInfoData()
Определения ActionBuildPart.c:657
override bool UseMainItem()
Определения ActionBuildPart.c:390
ConstructionPart GetTargetPart(ConstructionActionData cad)
Does not work on server, since variants are not updated there (invoker does not invoke)
Определения ActionBuildPart.c:707
ActionBuildPart ActionContinuousBase ActionBuildPartHandsGeneric()
Определения ActionBuildPart.c:379
void SetBuildingAnimationEx(PlayerBase player, ActionTarget target, ItemBase item, ActionData action_data, Param extra_data=NULL)
here we base anims on targeted part
Определения ActionBuildPart.c:586
void ActionTarget(Object object, Object parent, int componentIndex, vector cursorHitPos, float utility, string surfaceName="")
Определения ActionTargets.c:125
void BaseBuildingBase()
Определения BaseBuildingBase.c:1326
void ConstructionBase(EntityAI parent)
Определения ConstructionBase.c:58
void CollisionCheckData()
Определения ConstructionBase.c:1923
EConstructionInfoCategories
Определения ConstructionConstants.c:2
void ConstructionPart(string name, string part_name, string main_part_name, int id, bool is_built, bool is_base, bool is_gate, array< string > required_parts)
Определения ConstructionPart.c:531
DayZGame g_Game
Определения DayZGame.c:4074
eBrokenLegs
Определения EBrokenLegs.c:2
DiagMenuIDs
Определения EDiagMenuIDs.c:2
class GP5GasMask extends MaskBase ItemBase
Empty
Определения Hand_States.c:14
EPlayerSoundEventID
Определения PlayerSoundEventHandler.c:3
ActionData m_ActionData
Определения AnimatedActionBase.c:3
void ActionBuildPart()
Определения ActionBuildPart.c:35
override bool SetupAction(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data=NULL)
Определения ActionBuildPart.c:218
override bool CanBeUsedInFreelook()
Определения ActionBuildPart.c:84
void ComposeBuildActionDataClient(PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data=NULL)
Определения ActionBuildPart.c:234
override bool CanBeUsedLeaning()
Определения ActionBuildPart.c:79
bool PositioningCheck(PlayerBase player, ActionTarget target)
Can build from the inside only, if applicable.
Определения ActionBuildPart.c:334
override void CreateConditionComponents()
Определения ActionBuildPart.c:47
override string GetSoundCategory(ActionData action_data)
Определения ActionBuildPart.c:206
override bool ReadFromContext(ParamsReadContext ctx, out ActionReciveData action_recive_data)
Определения ActionBuildPart.c:276
void SetBuildingAnimation(ItemBase item)
Определения ActionBuildPart.c:371
override bool ActionConditionContinue(ActionData action_data)
Определения ActionBuildPart.c:123
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBuildPart.c:89
void SetBuildingAnimationEx(PlayerBase player, ActionTarget target, ItemBase item, ActionData action_data, Param extra_data=NULL)
Определения ActionBuildPart.c:241
override ActionData CreateActionData()
Определения ActionBuildPart.c:211
ConstructionPart GetTargetPart(ConstructionActionData cad)
Does not work on server, since variants are not updated there (invoker does not invoke)
Определения ActionBuildPart.c:362
override void WriteToContext(ParamsWriteContext ctx, ActionData action_data)
Определения ActionBuildPart.c:269
override void InitInfoData()
Определения ActionBuildPart.c:74
override string GetAdminLogMessage(ActionData action_data)
Определения ActionBuildPart.c:300
override void OnFinishProgressServer(ActionData action_data)
Определения ActionBuildPart.c:150
bool GatherInfoData(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBuildPart.c:317
void ClearInfoData()
Определения ActionBuildPart.c:312
override void HandleReciveData(ActionReciveData action_recive_data, ActionData action_data)
Определения ActionBuildPart.c:293
override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionBuildPart.c:53
float SetCallbackDuration(ItemBase item)
Определения ActionBuildPart.c:19
override void CreateActionComponent()
Определения ActionBuildPart.c:13
PlayerBase m_Player
Определения ActionBase.c:40
ref ActionTarget m_Target
Определения ActionBase.c:39
ItemBase m_MainItem
Определения ActionBase.c:35
Определения ActionBase.c:22
int m_InfoContextMask
Определения ActionPartInfo.c:211
int m_CommandUID
Определения AnimatedActionBase.c:147
override bool MustBeBuiltFromOutside()
Определения ShelterSite.c:80
ConstructionPart GetBuildPartHandsGenericAtIndex(int idx)
Определения ConstructionActionData.c:364
ConstructionPart GetBuildPartAtIndex(int idx)
Определения ConstructionActionData.c:346
int GetHandBuildFBAnimOverride()
Определения ConstructionPart.c:253
string GetPartName()
Определения ConstructionPart.c:198
string GetBuildTextOverride()
Определения ConstructionPart.c:315
string GetName()
Определения ConstructionPart.c:193
bool DamageHandsOnBuild()
Определения ConstructionPart.c:218
bool DamageToolOnBuild()
Определения ConstructionPart.c:213
proto bool Write(void value_out)
proto bool Read(void value_in)
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
Serializer ParamsReadContext
Определения gameplay.c:15
Serializer ParamsWriteContext
Определения gameplay.c:16
DayZGame GetGame()
Определения gameplay.c:636
void Obsolete(string msg="")
Определения EnScript.c:371
proto void Insert(int index, string input)
Inserts a string into the n-th index, increasing the string length by the size of the input.