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

◆ IsVitalTruckBattery()

override bool OnDebugSpawn::IsVitalTruckBattery ( )
protected

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

862{
866
867 void OffroadHatchback()
868 {
869 //m_dmgContactCoef = 0.075;
870
871 m_EngineStartOK = "offroad_engine_start_SoundSet";
872 m_EngineStartBattery = "offroad_engine_failed_start_battery_SoundSet";
873 m_EngineStartPlug = "offroad_engine_failed_start_sparkplugs_SoundSet";
874 m_EngineStartFuel = "offroad_engine_failed_start_fuel_SoundSet";
875 m_EngineStop = "offroad_engine_stop_SoundSet";
876 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
877
878 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
879 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
880 m_CarSeatShiftInSound = "Offroad_SeatShiftIn_SoundSet";
881 m_CarSeatShiftOutSound = "Offroad_SeatShiftOut_SoundSet";
882
883 m_CarHornShortSoundName = "Offroad_Horn_Short_SoundSet";
884 m_CarHornLongSoundName = "Offroad_Horn_SoundSet";
885
886 SetEnginePos("0 0.7 1.2");
887 }
888
889 void ~OffroadHatchback()
890 {
891 m_UTSource = null;
892 m_UTSSettings = null;
893 m_UTSLEngine = null;
894 }
895
896 override void EEInit()
897 {
898 super.EEInit();
899
900 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
901 {
903 m_UTSSettings.m_ManualUpdate = true;
905 m_UTSSettings.m_TemperatureCap = 0;
906 m_UTSSettings.m_RangeFull = 0.5;
907 m_UTSSettings.m_RangeMax = 2;
908
911 }
912 }
913
914 override void OnEngineStart()
915 {
916 super.OnEngineStart();
917
918 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
919 {
920 if (m_UTSource)
921 m_UTSource.SetDefferedActive(true, 20.0);
922 }
923 }
924
925 override void OnEngineStop()
926 {
927 super.OnEngineStop();
928
929 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
930 {
931 if (m_UTSource)
932 m_UTSource.SetDefferedActive(false, 10.0);
933 }
934 }
935
936 override void EOnPostSimulate(IEntity other, float timeSlice)
937 {
938 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
939 {
940 if (m_UTSource && m_UTSource.IsActive())
941 {
943 }
944 }
945 }
946
947 override int GetAnimInstance()
948 {
949 return VehicleAnimInstances.HATCHBACK;
950 }
951
952 override float GetTransportCameraDistance()
953 {
954 return 3.5;
955 }
956
957 override int GetSeatAnimationType( int posIdx )
958 {
959 switch (posIdx)
960 {
961 case 0:
962 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
963 case 1:
964 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
965 case 2:
966 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
967 case 3:
968 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
969 }
970
971 return 0;
972
973 }
974
975
977 {
978 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackRearLight) );
979 }
980
982 {
983 return CarLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackFrontLight) );
984 }
985
986 override bool CanReleaseAttachment(EntityAI attachment)
987 {
988 if (!super.CanReleaseAttachment(attachment))
989 {
990 return false;
991 }
992
993 if (EngineIsOn() || GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
994 {
995 string attType = attachment.GetType();
996 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
997 {
998 return false;
999 }
1000 }
1001
1002 return true;
1003 }
1004
1005 override protected bool CanManipulateSpareWheel(string slotSelectionName)
1006 {
1007 return GetCarDoorsState("NivaHood") != CarDoorState.DOORS_CLOSED;
1008 }
1009
1010 override bool CanDisplayAttachmentCategory( string category_name )
1011 {
1012 if (!super.CanDisplayAttachmentCategory(category_name))
1013 {
1014 return false;
1015 }
1016
1017 category_name.ToLower();
1018 if (category_name.Contains("engine"))
1019 {
1020 if (GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
1021 {
1022 return false;
1023 }
1024 }
1025
1026 return true;
1027 }
1028
1029 override bool CanDisplayCargo()
1030 {
1031 if (!super.CanDisplayCargo())
1032 {
1033 return false;
1034 }
1035
1036 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
1037 {
1038 return false;
1039 }
1040
1041 return true;
1042 }
1043
1044 override int GetCarDoorsState(string slotType)
1045 {
1046 CarDoor carDoor;
1047
1048 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
1049 if (!carDoor)
1050 {
1051 return CarDoorState.DOORS_MISSING;
1052 }
1053
1054 switch (slotType)
1055 {
1056 case "NivaDriverDoors":
1057 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
1058
1059 case "NivaCoDriverDoors":
1060 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
1061
1062 case "NivaHood":
1063 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
1064
1065 case "NivaTrunk":
1066 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
1067 }
1068
1069 return CarDoorState.DOORS_MISSING;
1070 }
1071
1072 override bool CrewCanGetThrough(int posIdx)
1073 {
1074 CarDoor carDoor;
1075 switch (posIdx)
1076 {
1077 case 0:
1078 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
1079 return false;
1080 else if (GetAnimationPhase("SeatDriver") > 0.5)
1081 return false;
1082
1083 return true;
1084
1085 case 1:
1086 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1087 return false;
1088 else if (GetAnimationPhase("SeatCoDriver") > 0.5)
1089 return false;
1090
1091 return true;
1092
1093 case 2:
1094 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
1095 return false;
1096 else if (GetAnimationPhase("SeatDriver") <= 0.5)
1097 return false;
1098
1099 return true;
1100
1101 case 3:
1102 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1103 return false;
1104 else if (GetAnimationPhase("SeatCoDriver") <= 0.5)
1105 return false;
1106
1107 return true;
1108 }
1109
1110 return false;
1111 }
1112
1113 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1114 {
1115 switch (posIdx)
1116 {
1117 case 0:
1118 case 2:
1119 return "doors_driver";
1120 case 1:
1121 case 3:
1122 return "doors_codriver";
1123 }
1124
1125 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1126 }
1127
1128 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1129 {
1130 switch (posIdx)
1131 {
1132 case 0:
1133 case 2:
1134 return "NivaDriverDoors";
1135 case 1:
1136 case 3:
1137 return "NivaCoDriverDoors";
1138 }
1139
1140 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1141 }
1142
1143 // 0 full ambient and engine sound
1144 // 1 zero ambient and engine sound
1145 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1146 {
1147 float tempCap = 0.0;
1148
1149 switch (ctrl)
1150 {
1151 case CarSoundCtrl.DOORS:
1152 float newValue = 0;
1153 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
1154 {
1155 newValue += 0.5;
1156 }
1157
1158 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1159 {
1160 newValue += 0.5;
1161 }
1162
1163 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
1164 {
1165 newValue += 0.3;
1166 }
1167
1168 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
1169 {
1170 newValue -= 0.6;
1171 }
1172
1173 if (GetHealthLevel("WindowLR") == GameConstants.STATE_RUINED)
1174 {
1175 newValue -= 0.2;
1176 }
1177
1178 if (GetHealthLevel("WindowRR") == GameConstants.STATE_RUINED)
1179 {
1180 newValue -= 0.2;
1181 }
1182
1183 return Math.Clamp(newValue, 0, 1);
1184 break;
1185 }
1186
1187 return super.OnSound(ctrl, oldValue);
1188 }
1189
1190 override string GetAnimSourceFromSelection( string selection )
1191 {
1192 switch (selection)
1193 {
1194 case "doors_driver":
1195 return "DoorsDriver";
1196 case "doors_codriver":
1197 return "DoorsCoDriver";
1198 case "doors_hood":
1199 return "DoorsHood";
1200 case "doors_trunk":
1201 return "DoorsTrunk";
1202 case "seatback_driver":
1203 return "SeatDriver";
1204 case "seatback_codriver":
1205 return "SeatCoDriver";
1206 }
1207
1208 return "";
1209 }
1210
1211 override string GetDoorConditionPointFromSelection(string selection)
1212 {
1213 switch (selection)
1214 {
1215 case "seat_driver":
1216 case "seatback_driver":
1217 case "seat_cargo1":
1218 return "seat_con_1_1";
1219 case "seat_codriver":
1220 case "seatback_codriver":
1221 case "seat_cargo2":
1222 return "seat_con_2_1";
1223 }
1224
1225 return "";
1226 }
1227
1228 override int GetCrewIndex(string selection)
1229 {
1230 switch (selection)
1231 {
1232 case "seatback_driver":
1233 return 0;
1234 case "seatback_codriver":
1235 return 1;
1236 }
1237
1238 return -1;
1239 }
1240
1241 override bool IsVitalTruckBattery()
1242 {
1243 return false;
1244 }
1245
1246 override bool IsVitalGlowPlug()
1247 {
1248 return false;
1249 }
1250
1251 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1252 {
1253 if (nextSeat == 0 && GetAnimationPhase("SeatDriver") > 0.5)
1254 return false;
1255
1256 if (nextSeat == 1 && GetAnimationPhase("SeatCoDriver") > 0.5)
1257 return false;
1258
1259 switch (currentSeat)
1260 {
1261 case 0:
1262 return nextSeat == 1;
1263
1264 case 1:
1265 return nextSeat == 0;
1266
1267 case 2:
1268 return nextSeat == 3;
1269
1270 case 3:
1271 return nextSeat == 2;
1272 }
1273
1274 return false;
1275 }
1276
1277 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
1278 {
1279 switch (pCurrentSeat)
1280 {
1281 case 0:
1282 return pDoorsSelection == "DoorsDriver";
1283
1284 case 1:
1285 return pDoorsSelection == "DoorsCoDriver";
1286
1287 case 2:
1288 return pDoorsSelection == "DoorsDriver";
1289
1290 case 3:
1291 return pDoorsSelection == "DoorsCoDriver";
1292 }
1293
1294 return false;
1295 }
1296
1297 override int GetSeatIndexFromDoor( string pDoorSelection )
1298 {
1299 switch (pDoorSelection)
1300 {
1301 case "DoorsDriver":
1302 return 0;
1303 case "DoorsCoDriver":
1304 return 1;
1305 }
1306
1307 return -1;
1308 }
1309
1310 override void SetActions()
1311 {
1312 super.SetActions();
1313
1315 }
1316
1317 override void OnDebugSpawn()
1318 {
1319 SpawnUniversalParts();
1320 SpawnAdditionalItems();
1321 FillUpCarFluids();
1322
1323 GameInventory inventory = GetInventory();
1324 inventory.CreateInInventory("HatchbackWheel");
1325 inventory.CreateInInventory("HatchbackWheel");
1326 inventory.CreateInInventory("HatchbackWheel" );
1327 inventory.CreateInInventory("HatchbackWheel");
1328
1329 inventory.CreateInInventory("HatchbackDoors_Driver");
1330 inventory.CreateInInventory("HatchbackDoors_CoDriver");
1331 inventory.CreateInInventory("HatchbackHood");
1332 inventory.CreateInInventory("HatchbackTrunk");
1333
1334 //-----IN CAR CARGO
1335 inventory.CreateInInventory("HatchbackWheel");
1336 inventory.CreateInInventory("HatchbackWheel");
1337 }
1338}
1339
1340class OffroadHatchback_White extends OffroadHatchback
1341{
1342 override void OnDebugSpawn()
1343 {
1344 SpawnUniversalParts();
1345 SpawnAdditionalItems();
1346 FillUpCarFluids();
1347
1348 GameInventory inventory = GetInventory();
1349 inventory.CreateInInventory("HatchbackWheel");
1350 inventory.CreateInInventory("HatchbackWheel");
1351 inventory.CreateInInventory("HatchbackWheel");
1352 inventory.CreateInInventory("HatchbackWheel");
1353
1354 inventory.CreateInInventory("HatchbackDoors_Driver_White");
1355 inventory.CreateInInventory("HatchbackDoors_CoDriver_White");
1356 inventory.CreateInInventory("HatchbackHood_White");
1357 inventory.CreateInInventory("HatchbackTrunk_White");
1358
1359 //-----IN CAR CARGO
1360 inventory.CreateInInventory("HatchbackWheel");
1361 inventory.CreateInInventory("HatchbackWheel");
1362 }
1363}
1364
1365class OffroadHatchback_Blue extends OffroadHatchback
1366{
1367 override void OnDebugSpawn()
1368 {
1369 SpawnUniversalParts();
1370 SpawnAdditionalItems();
1371 FillUpCarFluids();
1372
1373 GameInventory inventory = GetInventory();
1374 inventory.CreateInInventory("HatchbackWheel");
1375 inventory.CreateInInventory("HatchbackWheel");
1376 inventory.CreateInInventory("HatchbackWheel");
1377 inventory.CreateInInventory("HatchbackWheel");
1378
1379 inventory.CreateInInventory("HatchbackDoors_Driver_Blue");
1380 inventory.CreateInInventory("HatchbackDoors_CoDriver_Blue");
1381 inventory.CreateInInventory("HatchbackHood_Blue");
1382 inventory.CreateInInventory("HatchbackTrunk_Blue");
1383
1384 //-----IN CAR CARGO
1385 inventory.CreateInInventory("HatchbackWheel");
1386 inventory.CreateInInventory("HatchbackWheel");
1387 }
1388}
void AddAction(typename actionName)
Определения AdvancedCommunication.c:220
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
override void SetActions()
Определения OffroadHatchback.c:930
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения OffroadHatchback.c:871
override string GetAnimSourceFromSelection(string selection)
Определения OffroadHatchback.c:810
override int GetSeatAnimationType(int posIdx)
Определения OffroadHatchback.c:577
override string GetDoorConditionPointFromSelection(string selection)
Определения OffroadHatchback.c:831
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения OffroadHatchback.c:765
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:748
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения OffroadHatchback.c:556
override void OnEngineStop()
Определения OffroadHatchback.c:545
override float GetTransportCameraDistance()
Определения OffroadHatchback.c:572
override void EEInit()
Определения OffroadHatchback.c:516
override bool CanReleaseAttachment(EntityAI attachment)
Определения OffroadHatchback.c:606
override bool CanDisplayCargo()
Определения OffroadHatchback.c:649
void ~OffroadHatchback()
Определения OffroadHatchback.c:509
override void OnEngineStart()
Определения OffroadHatchback.c:534
override CarLightBase CreateFrontLight()
Определения OffroadHatchback.c:601
override int GetAnimInstance()
Определения OffroadHatchback.c:567
override bool CrewCanGetThrough(int posIdx)
Определения OffroadHatchback.c:692
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения OffroadHatchback.c:897
bool CanManipulateSpareWheel(string slotSelectionName)
Определения OffroadHatchback.c:625
override bool IsVitalGlowPlug()
Определения OffroadHatchback.c:866
override CarRearLightBase CreateRearLight()
Определения OffroadHatchback.c:596
class OffroadHatchback extends CarScript OnDebugSpawn()
Определения OffroadHatchback.c:482
override int GetSeatIndexFromDoor(string pDoorSelection)
Определения OffroadHatchback.c:917
void OffroadHatchback()
Определения OffroadHatchback.c:487
override bool IsVitalTruckBattery()
Определения OffroadHatchback.c:861
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:733
override int GetCarDoorsState(string slotType)
Определения OffroadHatchback.c:664
override int GetCrewIndex(string selection)
Определения OffroadHatchback.c:848
override bool CanDisplayAttachmentCategory(string category_name)
Определения OffroadHatchback.c:630
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
Определения EnEntity.c:165
Определения EnMath.c:7
override void OnDebugSpawn()
Определения OffroadHatchback.c:507
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
const int STATE_RUINED
Определения 3_Game/DayZ/constants.c:851
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.