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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

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