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

◆ SetActions()

override void OnDebugSpawn::SetActions ( )
protected

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

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