849{
853
855 {
856
857
863
866
869
870 SetEnginePos("0 0.7 1.6");
871 }
872
874 {
875 super.EEInit();
876
878 {
885
888 }
889 }
890
892 {
893 super.OnEngineStart();
894
896 {
898 }
899 }
900
902 {
903 super.OnEngineStop();
904
906 {
908 }
909 }
910
912 {
914 {
916 {
918 }
919 }
920 }
921
923 {
925 }
926
928 {
929 return 4.5;
930 }
931
933 {
934 switch (posIdx)
935 {
936 case 0:
938 case 1:
940 case 2:
942 case 3:
944 }
945
946 return 0;
947 }
948
949
951 {
953 }
954
955
957 {
959 }
960
962 {
963 if( !super.CanReleaseAttachment( attachment ) )
964 return false;
965
966 string attType = attachment.GetType();
967
969 {
970 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
971 return false;
972 }
973
974 return true;
975 }
976
978 {
980 }
981
983 {
984
985 if (!super.CanDisplayAttachmentCategory(category_name))
986 return false;
987
988
990 if (category_name.
Contains(
"engine"))
991 {
993 return false;
994 }
995
996 return true;
997 }
998
1000 {
1001 if ( !super.CanDisplayCargo() )
1002 return false;
1003
1005 return false;
1006
1007 return true;
1008 }
1009
1011 {
1013
1014 Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
1015 if (!carDoor)
1016 {
1018 }
1019
1020 switch (slotType)
1021 {
1022 case "CivSedanDriverDoors":
1024 break;
1025
1026 case "CivSedanCoDriverDoors":
1028 break;
1029
1030 case "CivSedanCargo1Doors":
1032 break;
1033
1034 case "CivSedanCargo2Doors":
1036 break;
1037
1038 case "CivSedanTrunk":
1040 break;
1041
1042 case "CivSedanHood":
1044 break;
1045 }
1046
1048 }
1049
1050
1052 {
1053 switch( posIdx )
1054 {
1055 case 0:
1057 return false;
1058
1059 return true;
1060 break;
1061
1062 case 1:
1064 return false;
1065
1066 return true;
1067 break;
1068
1069 case 2:
1071 return false;
1072
1073 return true;
1074 break;
1075
1076 case 3:
1078 return false;
1079
1080 return true;
1081 break;
1082 }
1083
1084 return false;
1085 }
1086
1088 {
1089 switch( posIdx )
1090 {
1091 case 0:
1092 return "doors_driver";
1093 break;
1094 case 1:
1095 return "doors_codriver";
1096 break;
1097 case 2:
1098 return "doors_cargo1";
1099 break;
1100 case 3:
1101 return "doors_cargo2";
1102 break;
1103 }
1104
1105 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1106 }
1107
1109 {
1110 switch( posIdx )
1111 {
1112 case 0:
1113 return "CivSedanDriverDoors";
1114 break;
1115 case 1:
1116 return "CivSedanCoDriverDoors";
1117 break;
1118 case 2:
1119 return "CivSedanCargo1Doors";
1120 break;
1121 case 3:
1122 return "CivSedanCargo2Doors";
1123 break;
1124 }
1125
1126 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1127 }
1128
1129
1130
1132 {
1133 switch (ctrl)
1134 {
1136 float newValue = 0;
1138 {
1139 newValue += 0.25;
1140 }
1141
1143 {
1144 newValue += 0.25;
1145 }
1146
1148 {
1149 newValue += 0.25;
1150 }
1151
1153 {
1154 newValue += 0.25;
1155 }
1156
1158 {
1159 newValue -= 0.6;
1160 }
1161
1163 {
1164 newValue -= 0.6;
1165 }
1166
1168 break;
1169 }
1170
1171 return super.OnSound(ctrl, oldValue);
1172 }
1173
1175 {
1176 switch (selection)
1177 {
1178 case "doors_driver":
1179 return "DoorsDriver";
1180 case "doors_codriver":
1181 return "DoorsCoDriver";
1182 case "doors_cargo1":
1183 return "DoorsCargo1";
1184 case "doors_cargo2":
1185 return "DoorsCargo2";
1186 case "doors_hood":
1187 return "DoorsHood";
1188 case "doors_trunk":
1189 return "DoorsTrunk";
1190 }
1191
1192 return "";
1193 }
1194
1196 {
1197 return false;
1198 }
1199
1201 {
1202 return false;
1203 }
1204
1206 {
1207 switch (currentSeat)
1208 {
1209 case 0:
1210 return nextSeat == 1;
1211
1212 case 1:
1213 return nextSeat == 0;
1214
1215 case 2:
1216 return nextSeat == 3;
1217
1218 case 3:
1219 return nextSeat == 2;
1220 }
1221
1222 return false;
1223 }
1224
1226 {
1227 switch (pCurrentSeat)
1228 {
1229 case 0:
1230 return pDoorsSelection == "DoorsDriver";
1231
1232 case 1:
1233 return pDoorsSelection == "DoorsCoDriver";
1234
1235 case 2:
1236 return pDoorsSelection == "DoorsCargo1";
1237
1238 case 3:
1239 return pDoorsSelection == "DoorsCargo2";
1240 }
1241
1242 return false;
1243 }
1244
1246 {
1250
1251 GetInventory().CreateInInventory("CivSedanWheel");
1252 GetInventory().CreateInInventory("CivSedanWheel");
1253 GetInventory().CreateInInventory("CivSedanWheel");
1254 GetInventory().CreateInInventory("CivSedanWheel");
1255
1256 GetInventory().CreateInInventory("CivSedanDoors_Driver");
1257 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
1258 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
1259 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
1260 GetInventory().CreateInInventory("CivSedanHood");
1261 GetInventory().CreateInInventory("CivSedanTrunk");
1262
1263
1264 GetInventory().CreateInInventory("CivSedanWheel");
1265 GetInventory().CreateInInventory("CivSedanWheel");
1266 }
1267
1269 {
1270 return 1.5;
1271 }
1272}
1273
1275{
1277 {
1281
1282 GetInventory().CreateInInventory("CivSedanWheel");
1283 GetInventory().CreateInInventory("CivSedanWheel");
1284 GetInventory().CreateInInventory("CivSedanWheel");
1285 GetInventory().CreateInInventory("CivSedanWheel");
1286
1287 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
1288 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
1289 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
1290 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
1291 GetInventory().CreateInInventory("CivSedanHood_Wine");
1292 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
1293
1294
1295 GetInventory().CreateInInventory("CivSedanWheel");
1296 GetInventory().CreateInInventory("CivSedanWheel");
1297 }
1298}
1299
1301{
1303 {
1307
1308 GetInventory().CreateInInventory("CivSedanWheel");
1309 GetInventory().CreateInInventory("CivSedanWheel");
1310 GetInventory().CreateInInventory("CivSedanWheel");
1311 GetInventory().CreateInInventory("CivSedanWheel");
1312
1313 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
1314 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
1315 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
1316 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
1317 GetInventory().CreateInInventory("CivSedanHood_Black");
1318 GetInventory().CreateInInventory("CivSedanTrunk_Black");
1319
1320
1321 GetInventory().CreateInInventory("CivSedanWheel");
1322 GetInventory().CreateInInventory("CivSedanWheel");
1323 }
1324}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
void SpawnUniversalParts()
CarDoorState TranslateAnimationPhaseToCarDoorState(string animation)
void SpawnAdditionalItems()
string m_EngineStartOK
Sounds.
string m_CarDoorCloseSound
string m_EngineStartBattery
string m_CarHornShortSoundName
string m_CarHornLongSoundName
string m_CarDoorOpenSound
override float GetPushForceCoefficientMultiplier()
class CivilianSedan extends CarScript OnDebugSpawn()
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
override string GetAnimSourceFromSelection(string selection)
override int GetSeatAnimationType(int posIdx)
override float OnSound(CarSoundCtrl ctrl, float oldValue)
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
override void EOnPostSimulate(IEntity other, float timeSlice)
override void OnEngineStop()
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
override float GetTransportCameraDistance()
override bool CanReleaseAttachment(EntityAI attachment)
override bool CanDisplayCargo()
override void OnEngineStart()
override CarLightBase CreateFrontLight()
override int GetAnimInstance()
override bool CrewCanGetThrough(int posIdx)
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
bool CanManipulateSpareWheel(string slotSelectionName)
override bool IsVitalGlowPlug()
override CarRearLightBase CreateRearLight()
override bool IsVitalTruckBattery()
override string GetDoorSelectionNameFromSeatPos(int posIdx)
override int GetCarDoorsState(string slotType)
override bool CanDisplayAttachmentCategory(string category_name)
ref UniversalTemperatureSourceSettings m_UTSSettings
ref UniversalTemperatureSource m_UTSource
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
override void OnDebugSpawn()
Super root of all classes in Enforce script.
original Timer deletes m_params which is unwanted
DayZPlayerConstants
defined in C++
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
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.
proto int ToLower()
Changes string to lowercase. Returns length.