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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

742{
746
747 void Hatchback_02()
748 {
749 //m_dmgContactCoef = 0.070;
750
751 m_EngineStartOK = "Hatchback_02_engine_start_SoundSet";
752 m_EngineStartBattery = "Hatchback_02_engine_failed_start_battery_SoundSet";
753 m_EngineStartPlug = "Hatchback_02_engine_failed_start_sparkplugs_SoundSet";
754 m_EngineStartFuel = "Hatchback_02_engine_failed_start_fuel_SoundSet";
755 m_EngineStop = "Hatchback_02_engine_stop_SoundSet";
756 m_EngineStopFuel = "Hatchback_02_engine_stop_fuel_SoundSet";
757
758 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
759 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
760
761 m_CarHornShortSoundName = "Hatchback_02_Horn_Short_SoundSet";
762 m_CarHornLongSoundName = "Hatchback_02_Horn_SoundSet";
763
764 SetEnginePos("0 0.7 1.4");
765 }
766
767 override void EEInit()
768 {
769 super.EEInit();
770
771 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
772 {
774 m_UTSSettings.m_ManualUpdate = true;
776 m_UTSSettings.m_TemperatureCap = 0;
777 m_UTSSettings.m_RangeFull = 0.5;
778 m_UTSSettings.m_RangeMax = 2;
779
782 }
783 }
784
785 override void OnEngineStart()
786 {
787 super.OnEngineStart();
788
789 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
790 {
791 m_UTSource.SetDefferedActive(true, 20.0);
792 }
793 }
794
795 override void OnEngineStop()
796 {
797 super.OnEngineStop();
798
799 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
800 {
801 m_UTSource.SetDefferedActive(false, 10.0);
802 }
803 }
804
805 override void EOnPostSimulate(IEntity other, float timeSlice)
806 {
807 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
808 {
809 if (m_UTSource.IsActive())
810 {
812 }
813 }
814 }
815
816 override int GetAnimInstance()
817 {
818 return VehicleAnimInstances.GOLF;
819 }
820
821 override int GetSeatAnimationType(int posIdx)
822 {
823 switch (posIdx)
824 {
825 case 0:
826 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
827 case 1:
828 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
829 case 2:
830 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
831 case 3:
832 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
833 }
834
835 return 0;
836 }
837
838 // Override for car-specific light type
840 {
841 return CarRearLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02RearLight));
842 }
843
844 // Override for car-specific light type
846 {
847 return CarLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02FrontLight));
848 }
849
850 override bool CanReleaseAttachment(EntityAI attachment)
851 {
852 if (!super.CanReleaseAttachment(attachment))
853 {
854 return false;
855 }
856
857 if (EngineIsOn() || GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED)
858 {
859 string attType = attachment.GetType();
860 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
861 {
862 return false;
863 }
864 }
865
866 return true;
867 }
868
869 override protected bool CanManipulateSpareWheel(string slotSelectionName)
870 {
871 return GetCarDoorsState("Hatchback_02_Trunk") != CarDoorState.DOORS_CLOSED;
872 }
873
874 override bool CanDisplayAttachmentCategory( string category_name )
875 {
876 //super
877 if ( !super.CanDisplayAttachmentCategory( category_name ) )
878 return false;
879 //
880
881 category_name.ToLower();
882 if ( category_name.Contains("engine") )
883 {
884 if ( GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED )
885 return false;
886 }
887
888 return true;
889 }
890
891 override bool CanDisplayCargo()
892 {
893 if ( !super.CanDisplayCargo() )
894 return false;
895
896 if ( GetCarDoorsState("Hatchback_02_Trunk") == CarDoorState.DOORS_CLOSED )
897 return false;
898
899 return true;
900 }
901
902 override int GetCarDoorsState(string slotType)
903 {
904 CarDoor carDoor;
905
906 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
907 if (!carDoor)
908 {
909 return CarDoorState.DOORS_MISSING;
910 }
911
912 switch (slotType)
913 {
914 case "Hatchback_02_Door_1_1":
915 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
916
917 case "Hatchback_02_Door_2_1":
918 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
919
920 case "Hatchback_02_Door_1_2":
921 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
922
923 case "Hatchback_02_Door_2_2":
924 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
925
926 case "Hatchback_02_Hood":
927 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
928
929 case "Hatchback_02_Trunk":
930 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
931 }
932
933 return CarDoorState.DOORS_MISSING;
934 }
935
936
937 override bool CrewCanGetThrough(int posIdx)
938 {
939 switch (posIdx)
940 {
941 case 0:
942 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
943 {
944 return false;
945 }
946
947 return true;
948
949 case 1:
950 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
951 {
952 return false;
953 }
954
955 return true;
956
957 case 2:
958 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
959 {
960 return false;
961 }
962
963 return true;
964
965 case 3:
966 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
967 {
968 return false;
969 }
970
971 return true;
972 }
973
974 return false;
975 }
976
977 override string GetDoorSelectionNameFromSeatPos(int posIdx)
978 {
979 switch( posIdx )
980 {
981 case 0:
982 return "doors_driver";
983 break;
984 case 1:
985 return "doors_codriver";
986 break;
987 case 2:
988 return "doors_cargo1";
989 break;
990 case 3:
991 return "doors_cargo2";
992 break;
993 }
994
995 return super.GetDoorSelectionNameFromSeatPos(posIdx);
996 }
997
998 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
999 {
1000 switch( posIdx )
1001 {
1002 case 0:
1003 return "Hatchback_02_Door_1_1";
1004 break;
1005 case 1:
1006 return "Hatchback_02_Door_2_1";
1007 break;
1008 case 2:
1009 return "Hatchback_02_Door_1_2";
1010 break;
1011 case 3:
1012 return "Hatchback_02_Door_2_2";
1013 break;
1014 }
1015
1016 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1017 }
1018
1019 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1020 {
1021 switch (ctrl)
1022 {
1023 case CarSoundCtrl.DOORS:
1024 float newValue = 0;
1025 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
1026 {
1027 newValue += 0.25;
1028 }
1029
1030 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1031 {
1032 newValue += 0.25;
1033 }
1034
1035 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1036 {
1037 newValue += 0.25;
1038 }
1039
1040 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1041 {
1042 newValue += 0.25;
1043 }
1044
1045 return Math.Clamp(newValue, 0, 1);
1046 break;
1047 }
1048
1049 return super.OnSound(ctrl, oldValue);
1050 }
1051
1052 override string GetAnimSourceFromSelection( string selection )
1053 {
1054 switch( selection )
1055 {
1056 case "doors_driver":
1057 return "DoorsDriver";
1058 case "doors_codriver":
1059 return "DoorsCoDriver";
1060 case "doors_cargo1":
1061 return "DoorsCargo1";
1062 case "doors_cargo2":
1063 return "DoorsCargo2";
1064 case "doors_hood":
1065 return "DoorsHood";
1066 case "doors_trunk":
1067 return "DoorsTrunk";
1068 }
1069
1070 return "";
1071 }
1072
1073
1074 override bool IsVitalTruckBattery()
1075 {
1076 return false;
1077 }
1078
1079 override bool IsVitalGlowPlug()
1080 {
1081 return false;
1082 }
1083
1084 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1085 {
1086 switch (currentSeat)
1087 {
1088 case 0:
1089 return nextSeat == 1;
1090 case 1:
1091 return nextSeat == 0;
1092 case 2:
1093 return nextSeat == 3;
1094 case 3:
1095 return nextSeat == 2;
1096 }
1097
1098 return false;
1099 }
1100
1101 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1102 {
1103 switch (pCurrentSeat)
1104 {
1105 case 0:
1106 return pDoorsSelection == "DoorsDriver";
1107 case 1:
1108 return pDoorsSelection == "DoorsCoDriver";
1109 case 2:
1110 return pDoorsSelection == "DoorsCargo1";
1111 case 3:
1112 return pDoorsSelection == "DoorsCargo2";
1113 }
1114
1115 return false;
1116 }
1117
1118 override void OnDebugSpawn()
1119 {
1120 SpawnUniversalParts();
1121 SpawnAdditionalItems();
1122 FillUpCarFluids();
1123
1124 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1125 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1126 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1127 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1128
1129 GetInventory().CreateInInventory("Hatchback_02_Door_1_1");
1130 GetInventory().CreateInInventory("Hatchback_02_Door_1_2");
1131 GetInventory().CreateInInventory("Hatchback_02_Door_2_1");
1132 GetInventory().CreateInInventory("Hatchback_02_Door_2_2");
1133 GetInventory().CreateInInventory("Hatchback_02_Hood");
1134 GetInventory().CreateInInventory("Hatchback_02_Trunk");
1135
1136 //-----IN CAR CARGO
1137 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1138 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1139 }
1140}
1141
1142class Hatchback_02_Black extends Hatchback_02
1143{
1144 override void OnDebugSpawn()
1145 {
1146 SpawnUniversalParts();
1147 SpawnAdditionalItems();
1148 FillUpCarFluids();
1149
1150 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1151 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1152 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1153 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1154
1155 GetInventory().CreateInInventory("Hatchback_02_Door_1_1_Black");
1156 GetInventory().CreateInInventory("Hatchback_02_Door_1_2_Black");
1157 GetInventory().CreateInInventory("Hatchback_02_Door_2_1_Black");
1158 GetInventory().CreateInInventory("Hatchback_02_Door_2_2_Black");
1159 GetInventory().CreateInInventory("Hatchback_02_Hood_Black");
1160 GetInventory().CreateInInventory("Hatchback_02_Trunk_Black");
1161
1162 //-----IN CAR CARGO
1163 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1164 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1165 }
1166};
1167
1168class Hatchback_02_Blue extends Hatchback_02
1169{
1170 override void OnDebugSpawn()
1171 {
1172 SpawnUniversalParts();
1173 SpawnAdditionalItems();
1174 FillUpCarFluids();
1175
1176 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1177 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1178 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1179 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1180
1181 GetInventory().CreateInInventory("Hatchback_02_Door_1_1_Blue");
1182 GetInventory().CreateInInventory("Hatchback_02_Door_1_2_Blue");
1183 GetInventory().CreateInInventory("Hatchback_02_Door_2_1_Blue");
1184 GetInventory().CreateInInventory("Hatchback_02_Door_2_2_Blue");
1185 GetInventory().CreateInInventory("Hatchback_02_Hood_Blue");
1186 GetInventory().CreateInInventory("Hatchback_02_Trunk_Blue");
1187
1188 //-----IN CAR CARGO
1189 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1190 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1191 }
1192}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
CarDoorState
Определения CarScript.c:2
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:433
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
class Hatchback_02_Blue extends Hatchback_02 OnDebugSpawn
Определения Hatchback_02.c:404
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Hatchback_02.c:746
override string GetAnimSourceFromSelection(string selection)
Определения Hatchback_02.c:714
override int GetSeatAnimationType(int posIdx)
Определения Hatchback_02.c:483
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Hatchback_02.c:681
void Hatchback_02()
Определения Hatchback_02.c:409
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:660
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Hatchback_02.c:467
override void OnEngineStop()
Определения Hatchback_02.c:457
override void EEInit()
Определения Hatchback_02.c:429
override bool CanReleaseAttachment(EntityAI attachment)
Определения Hatchback_02.c:512
override bool CanDisplayCargo()
Определения Hatchback_02.c:553
override void OnEngineStart()
Определения Hatchback_02.c:447
override CarLightBase CreateFrontLight()
Определения Hatchback_02.c:507
override int GetAnimInstance()
Определения Hatchback_02.c:478
override bool CrewCanGetThrough(int posIdx)
Определения Hatchback_02.c:599
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Hatchback_02.c:763
bool CanManipulateSpareWheel(string slotSelectionName)
Определения Hatchback_02.c:531
override bool IsVitalGlowPlug()
Определения Hatchback_02.c:741
override CarRearLightBase CreateRearLight()
Определения Hatchback_02.c:501
override bool IsVitalTruckBattery()
Определения Hatchback_02.c:736
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:639
override int GetCarDoorsState(string slotType)
Определения Hatchback_02.c:564
override bool CanDisplayAttachmentCategory(string category_name)
Определения Hatchback_02.c:536
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения CarRearLightBase.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
override void OnDebugSpawn()
Определения Hatchback_02.c:430
Определения Hatchback_02.c:429
Определения EnEntity.c:165
Определения EnMath.c:7
original Timer deletes m_params which is unwanted
Определения UniversalTemperatureSource.c:38
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE
Определения 3_Game/constants.c:808
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
bool Contains(string sample)
Returns true if sample is substring of string.
Определения EnString.c:286
proto int ToLower()
Changes string to lowercase. Returns length.