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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

793{
797
798 void Sedan_02()
799 {
800 m_dmgContactCoef = 0.0790;
801
802 m_EngineStartOK = "Sedan_02_engine_start_SoundSet";
803 m_EngineStartBattery = "Sedan_02_engine_failed_start_battery_SoundSet";
804 m_EngineStartPlug = "Sedan_02_engine_failed_start_sparkplugs_SoundSet";
805 m_EngineStartFuel = "Sedan_02_engine_failed_start_fuel_SoundSet";
806 m_EngineStop = "Sedan_02_engine_stop_SoundSet";
807 m_EngineStopFuel = "Sedan_02_engine_stop_fuel_SoundSet";
808
809 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
810 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
811
812 m_CarHornShortSoundName = "Sedan_02_Horn_Short_SoundSet";
813 m_CarHornLongSoundName = "Sedan_02_Horn_SoundSet";
814
815 SetEnginePos("0 0.7 -1.7");
816 }
817
818 override void EEInit()
819 {
820 super.EEInit();
821
822 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
823 {
825 m_UTSSettings.m_ManualUpdate = true;
827 m_UTSSettings.m_TemperatureCap = 0;
828 m_UTSSettings.m_RangeFull = 0.5;
829 m_UTSSettings.m_RangeMax = 2;
830
833 }
834 }
835
836 override void OnEngineStart()
837 {
838 super.OnEngineStart();
839
840 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
841 {
842 m_UTSource.SetDefferedActive(true, 20.0);
843 }
844 }
845
846 override void OnEngineStop()
847 {
848 super.OnEngineStop();
849
850 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
851 {
852 m_UTSource.SetDefferedActive(false, 10.0);
853 }
854 }
855
856 override void EOnPostSimulate(IEntity other, float timeSlice)
857 {
858 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
859 {
860 if (m_UTSource.IsActive())
861 {
863 }
864 }
865 }
866
867 override int GetAnimInstance()
868 {
869 return VehicleAnimInstances.S120;
870 }
871
872 override int GetSeatAnimationType(int posIdx)
873 {
874 switch (posIdx)
875 {
876 case 0:
877 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
878 case 1:
879 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
880 case 2:
881 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
882 case 3:
883 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
884 }
885
886 return 0;
887 }
888
889 // Override for car-specific light type
891 {
892 return CarLightBase.Cast(ScriptedLightBase.CreateLight(Sedan_02FrontLight));
893 }
894
895 // Override for car-specific light type
897 {
898 return CarRearLightBase.Cast(ScriptedLightBase.CreateLight(Sedan_02RearLight));
899 }
900
901 override bool CanReleaseAttachment( EntityAI attachment )
902 {
903 if (!super.CanReleaseAttachment(attachment))
904 {
905 return false;
906 }
907
908 string attType = attachment.GetType();
909 switch (attType)
910 {
911 case "CarBattery":
912 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED || EngineIsOn())
913 {
914 return false;
915 }
916 break;
917
918 case "SparkPlug":
919 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED || EngineIsOn())
920 {
921 return false;
922 }
923 break;
924
925 case "CarRadiator":
926 if (GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED || EngineIsOn())
927 {
928 return false;
929 }
930 break;
931 }
932
933 return true;
934 }
935
936 override protected bool CanManipulateSpareWheel(string slotSelectionName)
937 {
938 return GetCarDoorsState("Sedan_02_Hood") != CarDoorState.DOORS_CLOSED;
939 }
940
941 override bool CanDisplayAttachmentCategory(string category_name)
942 {
943 if ( !super.CanDisplayAttachmentCategory(category_name))
944 {
945 return false;
946 }
947
948 category_name.ToLower();
949 if (category_name.Contains("engine"))
950 {
951 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED)
952 {
953 return false;
954 }
955 }
956
957 if (category_name.Contains("trunk"))
958 {
959 if (GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED)
960 {
961 return false;
962 }
963 }
964
965 return true;
966 }
967
968 override bool CanDisplayCargo()
969 {
970 if ( !super.CanDisplayCargo() )
971 return false;
972
973 if ( GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED )
974 return false;
975
976 return true;
977 }
978
979 override int GetCarDoorsState(string slotType)
980 {
981 CarDoor carDoor;
982
983 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
984 if (!carDoor)
985 {
986 return CarDoorState.DOORS_MISSING;
987 }
988
989 switch (slotType)
990 {
991 case "Sedan_02_Door_1_1":
992 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
993
994 case "Sedan_02_Door_2_1":
995 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
996
997 case "Sedan_02_Door_1_2":
998 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
999
1000 case "Sedan_02_Door_2_2":
1001 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
1002
1003 case "Sedan_02_Hood":
1004 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
1005
1006 case "Sedan_02_Trunk":
1007 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
1008 }
1009
1010 return CarDoorState.DOORS_MISSING;
1011 }
1012
1013
1014 override bool CrewCanGetThrough( int posIdx )
1015 {
1016 switch( posIdx )
1017 {
1018 case 0:
1019 if ( GetCarDoorsState("Sedan_02_Door_1_1") == CarDoorState.DOORS_CLOSED )
1020 return false;
1021
1022 return true;
1023 break;
1024
1025 case 1:
1026 if ( GetCarDoorsState("Sedan_02_Door_2_1") == CarDoorState.DOORS_CLOSED )
1027 return false;
1028
1029 return true;
1030 break;
1031
1032 case 2:
1033 if ( GetCarDoorsState("Sedan_02_Door_1_2") == CarDoorState.DOORS_CLOSED )
1034 return false;
1035
1036 return true;
1037 break;
1038
1039 case 3:
1040 if ( GetCarDoorsState("Sedan_02_Door_2_2") == CarDoorState.DOORS_CLOSED )
1041 return false;
1042
1043 return true;
1044 break;
1045 }
1046
1047 return false;
1048 }
1049
1050 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1051 {
1052 switch( posIdx )
1053 {
1054 case 0:
1055 return "doors_driver";
1056 break;
1057 case 1:
1058 return "doors_codriver";
1059 break;
1060 case 2:
1061 return "doors_cargo1";
1062 break;
1063 case 3:
1064 return "doors_cargo2";
1065 break;
1066 }
1067
1068 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1069 }
1070
1071 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1072 {
1073 switch( posIdx )
1074 {
1075 case 0:
1076 return "Sedan_02_Door_1_1";
1077 break;
1078 case 1:
1079 return "Sedan_02_Door_2_1";
1080 break;
1081 case 2:
1082 return "Sedan_02_Door_1_2";
1083 break;
1084 case 3:
1085 return "Sedan_02_Door_2_2";
1086 break;
1087 }
1088
1089 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1090 }
1091
1092 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1093 {
1094 switch ( ctrl )
1095 {
1096 case CarSoundCtrl.DOORS:
1097 float newValue = 0;
1098 if (GetCarDoorsState("Sedan_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
1099 {
1100 newValue += 0.25;
1101 }
1102
1103 if (GetCarDoorsState("Sedan_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1104 {
1105 newValue += 0.25;
1106 }
1107
1108 if (GetCarDoorsState("Sedan_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1109 {
1110 newValue += 0.25;
1111 }
1112
1113 if (GetCarDoorsState("Sedan_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1114 {
1115 newValue += 0.25;
1116 }
1117
1118 return Math.Clamp(newValue, 0, 1);
1119 break;
1120 }
1121
1122 return super.OnSound(ctrl, oldValue);
1123 }
1124
1125 override string GetAnimSourceFromSelection( string selection )
1126 {
1127 switch( selection )
1128 {
1129 case "doors_driver":
1130 return "DoorsDriver";
1131 case "doors_codriver":
1132 return "DoorsCoDriver";
1133 case "doors_cargo1":
1134 return "DoorsCargo1";
1135 case "doors_cargo2":
1136 return "DoorsCargo2";
1137 case "doors_hood":
1138 return "DoorsHood";
1139 case "doors_trunk":
1140 return "DoorsTrunk";
1141 }
1142
1143 return "";
1144 }
1145
1146
1147 override bool IsVitalTruckBattery()
1148 {
1149 return false;
1150 }
1151
1152 override bool IsVitalGlowPlug()
1153 {
1154 return false;
1155 }
1156
1157 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1158 {
1159 switch (currentSeat)
1160 {
1161 case 0:
1162 return nextSeat == 1;
1163
1164 case 1:
1165 return nextSeat == 0;
1166
1167 case 2:
1168 return nextSeat == 3;
1169
1170 case 3:
1171 return nextSeat == 2;
1172 }
1173
1174 return false;
1175 }
1176
1177 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1178 {
1179 switch (pCurrentSeat)
1180 {
1181 case 0:
1182 return pDoorsSelection == "DoorsDriver";
1183
1184 case 1:
1185 return pDoorsSelection == "DoorsCoDriver";
1186
1187 case 2:
1188 return pDoorsSelection == "DoorsCargo1";
1189
1190 case 3:
1191 return pDoorsSelection == "DoorsCargo2";
1192 }
1193
1194 return false;
1195 }
1196
1197 override void OnDebugSpawn()
1198 {
1199 SpawnUniversalParts();
1200 SpawnAdditionalItems();
1201 FillUpCarFluids();
1202
1203 GetInventory().CreateInInventory("Sedan_02_Wheel");
1204 GetInventory().CreateInInventory("Sedan_02_Wheel");
1205 GetInventory().CreateInInventory("Sedan_02_Wheel");
1206 GetInventory().CreateInInventory("Sedan_02_Wheel");
1207 GetInventory().CreateInInventory("Sedan_02_Wheel");
1208
1209 GetInventory().CreateInInventory("Sedan_02_Door_1_1");
1210 GetInventory().CreateInInventory("Sedan_02_Door_1_2");
1211 GetInventory().CreateInInventory("Sedan_02_Door_2_1");
1212 GetInventory().CreateInInventory("Sedan_02_Door_2_2");
1213 GetInventory().CreateInInventory("Sedan_02_Hood");
1214 GetInventory().CreateInInventory("Sedan_02_Trunk");
1215
1216 //-----IN CAR CARGO
1217 GetInventory().CreateInInventory("Sedan_02_Wheel");
1218 GetInventory().CreateInInventory("Sedan_02_Wheel");
1219 }
1220}
1221
1222class Sedan_02_Red extends Sedan_02
1223{
1224 override void OnDebugSpawn()
1225 {
1226 SpawnUniversalParts();
1227 SpawnAdditionalItems();
1228 FillUpCarFluids();
1229
1230 GetInventory().CreateInInventory("Sedan_02_Wheel");
1231 GetInventory().CreateInInventory("Sedan_02_Wheel");
1232 GetInventory().CreateInInventory("Sedan_02_Wheel");
1233 GetInventory().CreateInInventory("Sedan_02_Wheel");
1234
1235 GetInventory().CreateInInventory("Sedan_02_Door_1_1_Red");
1236 GetInventory().CreateInInventory("Sedan_02_Door_1_2_Red");
1237 GetInventory().CreateInInventory("Sedan_02_Door_2_1_Red");
1238 GetInventory().CreateInInventory("Sedan_02_Door_2_2_Red");
1239 GetInventory().CreateInInventory("Sedan_02_Hood_Red");
1240 GetInventory().CreateInInventory("Sedan_02_Trunk_Red");
1241
1242 //-----IN CAR CARGO
1243 GetInventory().CreateInInventory("Sedan_02_Wheel");
1244 GetInventory().CreateInInventory("Sedan_02_Wheel");
1245 }
1246}
1247
1248class Sedan_02_Grey extends Sedan_02
1249{
1250 override void OnDebugSpawn()
1251 {
1252 SpawnUniversalParts();
1253 SpawnAdditionalItems();
1254 FillUpCarFluids();
1255
1256 GetInventory().CreateInInventory("Sedan_02_Wheel");
1257 GetInventory().CreateInInventory("Sedan_02_Wheel");
1258 GetInventory().CreateInInventory("Sedan_02_Wheel");
1259 GetInventory().CreateInInventory("Sedan_02_Wheel");
1260
1261 GetInventory().CreateInInventory("Sedan_02_Door_1_1_Grey");
1262 GetInventory().CreateInInventory("Sedan_02_Door_1_2_Grey");
1263 GetInventory().CreateInInventory("Sedan_02_Door_2_1_Grey");
1264 GetInventory().CreateInInventory("Sedan_02_Door_2_2_Grey");
1265 GetInventory().CreateInInventory("Sedan_02_Hood_Grey");
1266 GetInventory().CreateInInventory("Sedan_02_Trunk_Grey");
1267
1268 //-----IN CAR CARGO
1269 GetInventory().CreateInInventory("Sedan_02_Wheel");
1270 GetInventory().CreateInInventory("Sedan_02_Wheel");
1271 }
1272}
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
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Sedan_02.c:797
class Sedan_02 extends CarScript OnDebugSpawn()
Определения Sedan_02.c:433
override string GetAnimSourceFromSelection(string selection)
Определения Sedan_02.c:765
override int GetSeatAnimationType(int posIdx)
Определения Sedan_02.c:512
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Sedan_02.c:732
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения Sedan_02.c:711
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Sedan_02.c:496
override void OnEngineStop()
Определения Sedan_02.c:486
override void EEInit()
Определения Sedan_02.c:458
override bool CanReleaseAttachment(EntityAI attachment)
Определения Sedan_02.c:541
override bool CanDisplayCargo()
Определения Sedan_02.c:608
override void OnEngineStart()
Определения Sedan_02.c:476
override CarLightBase CreateFrontLight()
Определения Sedan_02.c:530
override int GetAnimInstance()
Определения Sedan_02.c:507
override bool CrewCanGetThrough(int posIdx)
Определения Sedan_02.c:654
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Sedan_02.c:817
bool CanManipulateSpareWheel(string slotSelectionName)
Определения Sedan_02.c:576
override bool IsVitalGlowPlug()
Определения Sedan_02.c:792
void Sedan_02()
Определения Sedan_02.c:438
override CarRearLightBase CreateRearLight()
Определения Sedan_02.c:536
override bool IsVitalTruckBattery()
Определения Sedan_02.c:787
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения Sedan_02.c:690
override int GetCarDoorsState(string slotType)
Определения Sedan_02.c:619
override bool CanDisplayAttachmentCategory(string category_name)
Определения Sedan_02.c:581
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения CarRearLightBase.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения EnEntity.c:165
Определения EnMath.c:7
override void OnDebugSpawn()
Определения Sedan_02.c:459
Определения Sedan_02.c:458
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.