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

◆ SetActions()

override void OnDebugSpawn::SetActions ( )
protected

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

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