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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

761{
765
766 void Hatchback_02()
767 {
768 //m_dmgContactCoef = 0.070;
769
770 m_EngineStartOK = "Hatchback_02_engine_start_SoundSet";
771 m_EngineStartBattery = "Hatchback_02_engine_failed_start_battery_SoundSet";
772 m_EngineStartPlug = "Hatchback_02_engine_failed_start_sparkplugs_SoundSet";
773 m_EngineStartFuel = "Hatchback_02_engine_failed_start_fuel_SoundSet";
774 m_EngineStop = "Hatchback_02_engine_stop_SoundSet";
775 m_EngineStopFuel = "Hatchback_02_engine_stop_fuel_SoundSet";
776
777 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
778 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
779
780 m_CarHornShortSoundName = "Hatchback_02_Horn_Short_SoundSet";
781 m_CarHornLongSoundName = "Hatchback_02_Horn_SoundSet";
782
783 SetEnginePos("0 0.7 1.4");
784 }
785
786 void ~Hatchback_02()
787 {
788 m_UTSource = null;
789 m_UTSSettings = null;
790 m_UTSLEngine = null;
791 }
792
793 override void EEInit()
794 {
795 super.EEInit();
796
797 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
798 {
800 m_UTSSettings.m_ManualUpdate = true;
802 m_UTSSettings.m_TemperatureCap = 0;
803 m_UTSSettings.m_RangeFull = 0.5;
804 m_UTSSettings.m_RangeMax = 2;
805
808 }
809 }
810
811 override void OnEngineStart()
812 {
813 super.OnEngineStart();
814
815 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
816 {
817 if (m_UTSource)
818 m_UTSource.SetDefferedActive(true, 20.0);
819 }
820 }
821
822 override void OnEngineStop()
823 {
824 super.OnEngineStop();
825
826 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
827 {
828 if (m_UTSource)
829 m_UTSource.SetDefferedActive(false, 10.0);
830 }
831 }
832
833 override void EOnPostSimulate(IEntity other, float timeSlice)
834 {
835 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
836 {
837 if (m_UTSource && m_UTSource.IsActive())
838 {
840 }
841 }
842 }
843
844 override int GetAnimInstance()
845 {
846 return VehicleAnimInstances.GOLF;
847 }
848
849 override int GetSeatAnimationType(int posIdx)
850 {
851 switch (posIdx)
852 {
853 case 0:
854 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
855 case 1:
856 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
857 case 2:
858 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
859 case 3:
860 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
861 }
862
863 return 0;
864 }
865
866 // Override for car-specific light type
868 {
869 return CarRearLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02RearLight));
870 }
871
872 // Override for car-specific light type
874 {
875 return CarLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02FrontLight));
876 }
877
878 override bool CanReleaseAttachment(EntityAI attachment)
879 {
880 if (!super.CanReleaseAttachment(attachment))
881 {
882 return false;
883 }
884
885 if (EngineIsOn() || GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED)
886 {
887 string attType = attachment.GetType();
888 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
889 {
890 return false;
891 }
892 }
893
894 return true;
895 }
896
897 override protected bool CanManipulateSpareWheel(string slotSelectionName)
898 {
899 return GetCarDoorsState("Hatchback_02_Trunk") != CarDoorState.DOORS_CLOSED;
900 }
901
902 override bool CanDisplayAttachmentCategory( string category_name )
903 {
904 //super
905 if ( !super.CanDisplayAttachmentCategory( category_name ) )
906 return false;
907 //
908
909 category_name.ToLower();
910 if ( category_name.Contains("engine") )
911 {
912 if ( GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED )
913 return false;
914 }
915
916 return true;
917 }
918
919 override bool CanDisplayCargo()
920 {
921 if ( !super.CanDisplayCargo() )
922 return false;
923
924 if ( GetCarDoorsState("Hatchback_02_Trunk") == CarDoorState.DOORS_CLOSED )
925 return false;
926
927 return true;
928 }
929
930 override int GetCarDoorsState(string slotType)
931 {
932 CarDoor carDoor;
933
934 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
935 if (!carDoor)
936 {
937 return CarDoorState.DOORS_MISSING;
938 }
939
940 switch (slotType)
941 {
942 case "Hatchback_02_Door_1_1":
943 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
944
945 case "Hatchback_02_Door_2_1":
946 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
947
948 case "Hatchback_02_Door_1_2":
949 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
950
951 case "Hatchback_02_Door_2_2":
952 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
953
954 case "Hatchback_02_Hood":
955 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
956
957 case "Hatchback_02_Trunk":
958 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
959 }
960
961 return CarDoorState.DOORS_MISSING;
962 }
963
964
965 override bool CrewCanGetThrough(int posIdx)
966 {
967 switch (posIdx)
968 {
969 case 0:
970 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
971 {
972 return false;
973 }
974
975 return true;
976
977 case 1:
978 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
979 {
980 return false;
981 }
982
983 return true;
984
985 case 2:
986 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
987 {
988 return false;
989 }
990
991 return true;
992
993 case 3:
994 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
995 {
996 return false;
997 }
998
999 return true;
1000 }
1001
1002 return false;
1003 }
1004
1005 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1006 {
1007 switch( posIdx )
1008 {
1009 case 0:
1010 return "doors_driver";
1011 break;
1012 case 1:
1013 return "doors_codriver";
1014 break;
1015 case 2:
1016 return "doors_cargo1";
1017 break;
1018 case 3:
1019 return "doors_cargo2";
1020 break;
1021 }
1022
1023 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1024 }
1025
1026 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1027 {
1028 switch( posIdx )
1029 {
1030 case 0:
1031 return "Hatchback_02_Door_1_1";
1032 break;
1033 case 1:
1034 return "Hatchback_02_Door_2_1";
1035 break;
1036 case 2:
1037 return "Hatchback_02_Door_1_2";
1038 break;
1039 case 3:
1040 return "Hatchback_02_Door_2_2";
1041 break;
1042 }
1043
1044 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1045 }
1046
1047 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1048 {
1049 switch (ctrl)
1050 {
1051 case CarSoundCtrl.DOORS:
1052 float newValue = 0;
1053 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
1054 {
1055 newValue += 0.25;
1056 }
1057
1058 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1059 {
1060 newValue += 0.25;
1061 }
1062
1063 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1064 {
1065 newValue += 0.25;
1066 }
1067
1068 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1069 {
1070 newValue += 0.25;
1071 }
1072
1073 return Math.Clamp(newValue, 0, 1);
1074 break;
1075 }
1076
1077 return super.OnSound(ctrl, oldValue);
1078 }
1079
1080 override string GetAnimSourceFromSelection( string selection )
1081 {
1082 switch( selection )
1083 {
1084 case "doors_driver":
1085 return "DoorsDriver";
1086 case "doors_codriver":
1087 return "DoorsCoDriver";
1088 case "doors_cargo1":
1089 return "DoorsCargo1";
1090 case "doors_cargo2":
1091 return "DoorsCargo2";
1092 case "doors_hood":
1093 return "DoorsHood";
1094 case "doors_trunk":
1095 return "DoorsTrunk";
1096 }
1097
1098 return "";
1099 }
1100
1101
1102 override bool IsVitalTruckBattery()
1103 {
1104 return false;
1105 }
1106
1107 override bool IsVitalGlowPlug()
1108 {
1109 return false;
1110 }
1111
1112 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1113 {
1114 switch (currentSeat)
1115 {
1116 case 0:
1117 return nextSeat == 1;
1118 case 1:
1119 return nextSeat == 0;
1120 case 2:
1121 return nextSeat == 3;
1122 case 3:
1123 return nextSeat == 2;
1124 }
1125
1126 return false;
1127 }
1128
1129 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1130 {
1131 switch (pCurrentSeat)
1132 {
1133 case 0:
1134 return pDoorsSelection == "DoorsDriver";
1135 case 1:
1136 return pDoorsSelection == "DoorsCoDriver";
1137 case 2:
1138 return pDoorsSelection == "DoorsCargo1";
1139 case 3:
1140 return pDoorsSelection == "DoorsCargo2";
1141 }
1142
1143 return false;
1144 }
1145
1146 override void OnDebugSpawn()
1147 {
1148 SpawnUniversalParts();
1149 SpawnAdditionalItems();
1150 FillUpCarFluids();
1151
1152 GameInventory inventory = GetInventory();
1153 inventory.CreateInInventory("Hatchback_02_Wheel");
1154 inventory.CreateInInventory("Hatchback_02_Wheel");
1155 inventory.CreateInInventory("Hatchback_02_Wheel");
1156 inventory.CreateInInventory("Hatchback_02_Wheel");
1157
1158 inventory.CreateInInventory("Hatchback_02_Door_1_1");
1159 inventory.CreateInInventory("Hatchback_02_Door_1_2");
1160 inventory.CreateInInventory("Hatchback_02_Door_2_1");
1161 inventory.CreateInInventory("Hatchback_02_Door_2_2");
1162 inventory.CreateInInventory("Hatchback_02_Hood");
1163 inventory.CreateInInventory("Hatchback_02_Trunk");
1164
1165 //-----IN CAR CARGO
1166 inventory.CreateInInventory("Hatchback_02_Wheel");
1167 inventory.CreateInInventory("Hatchback_02_Wheel");
1168 }
1169}
1170
1171class Hatchback_02_Black extends Hatchback_02
1172{
1173 override void OnDebugSpawn()
1174 {
1175 SpawnUniversalParts();
1176 SpawnAdditionalItems();
1177 FillUpCarFluids();
1178
1179 GameInventory inventory = GetInventory();
1180 inventory.CreateInInventory("Hatchback_02_Wheel");
1181 inventory.CreateInInventory("Hatchback_02_Wheel");
1182 inventory.CreateInInventory("Hatchback_02_Wheel");
1183 inventory.CreateInInventory("Hatchback_02_Wheel");
1184
1185 inventory.CreateInInventory("Hatchback_02_Door_1_1_Black");
1186 inventory.CreateInInventory("Hatchback_02_Door_1_2_Black");
1187 inventory.CreateInInventory("Hatchback_02_Door_2_1_Black");
1188 inventory.CreateInInventory("Hatchback_02_Door_2_2_Black");
1189 inventory.CreateInInventory("Hatchback_02_Hood_Black");
1190 inventory.CreateInInventory("Hatchback_02_Trunk_Black");
1191
1192 //-----IN CAR CARGO
1193 inventory.CreateInInventory("Hatchback_02_Wheel");
1194 inventory.CreateInInventory("Hatchback_02_Wheel");
1195 }
1196};
1197
1198class Hatchback_02_Blue extends Hatchback_02
1199{
1200 override void OnDebugSpawn()
1201 {
1202 SpawnUniversalParts();
1203 SpawnAdditionalItems();
1204 FillUpCarFluids();
1205
1206 GameInventory inventory = GetInventory();
1207 inventory.CreateInInventory("Hatchback_02_Wheel");
1208 inventory.CreateInInventory("Hatchback_02_Wheel");
1209 inventory.CreateInInventory("Hatchback_02_Wheel");
1210 inventory.CreateInInventory("Hatchback_02_Wheel");
1211
1212 inventory.CreateInInventory("Hatchback_02_Door_1_1_Blue");
1213 inventory.CreateInInventory("Hatchback_02_Door_1_2_Blue");
1214 inventory.CreateInInventory("Hatchback_02_Door_2_1_Blue");
1215 inventory.CreateInInventory("Hatchback_02_Door_2_2_Blue");
1216 inventory.CreateInInventory("Hatchback_02_Hood_Blue");
1217 inventory.CreateInInventory("Hatchback_02_Trunk_Blue");
1218
1219 //-----IN CAR CARGO
1220 inventory.CreateInInventory("Hatchback_02_Wheel");
1221 inventory.CreateInInventory("Hatchback_02_Wheel");
1222 }
1223}
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:443
DayZGame g_Game
Определения DayZGame.c:3942
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:221
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:220
class Hatchback_02_Blue extends Hatchback_02 OnDebugSpawn
Определения Hatchback_02.c:414
void ~Hatchback_02()
Определения Hatchback_02.c:439
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Hatchback_02.c:765
override string GetAnimSourceFromSelection(string selection)
Определения Hatchback_02.c:733
override int GetSeatAnimationType(int posIdx)
Определения Hatchback_02.c:502
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Hatchback_02.c:700
void Hatchback_02()
Определения Hatchback_02.c:419
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:679
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Hatchback_02.c:486
override void OnEngineStop()
Определения Hatchback_02.c:475
override void EEInit()
Определения Hatchback_02.c:446
override bool CanReleaseAttachment(EntityAI attachment)
Определения Hatchback_02.c:531
override bool CanDisplayCargo()
Определения Hatchback_02.c:572
override void OnEngineStart()
Определения Hatchback_02.c:464
override CarLightBase CreateFrontLight()
Определения Hatchback_02.c:526
override int GetAnimInstance()
Определения Hatchback_02.c:497
override bool CrewCanGetThrough(int posIdx)
Определения Hatchback_02.c:618
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Hatchback_02.c:782
bool CanManipulateSpareWheel(string slotSelectionName)
Определения Hatchback_02.c:550
override bool IsVitalGlowPlug()
Определения Hatchback_02.c:760
override CarRearLightBase CreateRearLight()
Определения Hatchback_02.c:520
override bool IsVitalTruckBattery()
Определения Hatchback_02.c:755
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:658
override int GetCarDoorsState(string slotType)
Определения Hatchback_02.c:583
override bool CanDisplayAttachmentCategory(string category_name)
Определения Hatchback_02.c:555
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения CarRearLightBase.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
EntityAI CreateInInventory(string type)
creates entity somewhere in inventory
script counterpart to engine's class Inventory
override void OnDebugSpawn()
Определения Hatchback_02.c:441
Определения Hatchback_02.c:440
Определения EnEntity.c:165
Определения EnMath.c:7
original Timer deletes m_params which is unwanted
Определения UniversalTemperatureSource.c:39
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
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/DayZ/constants.c:811
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.