806{
810
812 {
813
814
820
823
826
827 SetEnginePos("0 0.7 1.6");
828 }
829
831 {
832 super.EEInit();
833
835 {
842
845 }
846 }
847
849 {
850 super.OnEngineStart();
851
853 {
855 }
856 }
857
859 {
860 super.OnEngineStop();
861
863 {
865 }
866 }
867
869 {
871 {
873 {
875 }
876 }
877 }
878
880 {
882 }
883
885 {
886 return 4.5;
887 }
888
890 {
891 switch (posIdx)
892 {
893 case 0:
895 case 1:
897 case 2:
899 case 3:
901 }
902
903 return 0;
904 }
905
906
908 {
910 }
911
912
914 {
916 }
917
919 {
920 if( !super.CanReleaseAttachment( attachment ) )
921 return false;
922
923 string attType = attachment.GetType();
924
926 {
927 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
928 return false;
929 }
930
931 return true;
932 }
933
935 {
937 }
938
940 {
941
942 if (!super.CanDisplayAttachmentCategory(category_name))
943 return false;
944
945
947 if (category_name.
Contains(
"engine"))
948 {
950 return false;
951 }
952
953 return true;
954 }
955
957 {
958 if ( !super.CanDisplayCargo() )
959 return false;
960
962 return false;
963
964 return true;
965 }
966
968 {
970
971 Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
972 if (!carDoor)
973 {
975 }
976
977 switch (slotType)
978 {
979 case "CivSedanDriverDoors":
981 break;
982
983 case "CivSedanCoDriverDoors":
985 break;
986
987 case "CivSedanCargo1Doors":
989 break;
990
991 case "CivSedanCargo2Doors":
993 break;
994
995 case "CivSedanTrunk":
997 break;
998
999 case "CivSedanHood":
1001 break;
1002 }
1003
1005 }
1006
1007
1009 {
1010 switch( posIdx )
1011 {
1012 case 0:
1014 return false;
1015
1016 return true;
1017 break;
1018
1019 case 1:
1021 return false;
1022
1023 return true;
1024 break;
1025
1026 case 2:
1028 return false;
1029
1030 return true;
1031 break;
1032
1033 case 3:
1035 return false;
1036
1037 return true;
1038 break;
1039 }
1040
1041 return false;
1042 }
1043
1045 {
1046 switch( posIdx )
1047 {
1048 case 0:
1049 return "doors_driver";
1050 break;
1051 case 1:
1052 return "doors_codriver";
1053 break;
1054 case 2:
1055 return "doors_cargo1";
1056 break;
1057 case 3:
1058 return "doors_cargo2";
1059 break;
1060 }
1061
1062 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1063 }
1064
1066 {
1067 switch( posIdx )
1068 {
1069 case 0:
1070 return "CivSedanDriverDoors";
1071 break;
1072 case 1:
1073 return "CivSedanCoDriverDoors";
1074 break;
1075 case 2:
1076 return "CivSedanCargo1Doors";
1077 break;
1078 case 3:
1079 return "CivSedanCargo2Doors";
1080 break;
1081 }
1082
1083 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1084 }
1085
1086
1087
1089 {
1090 switch (ctrl)
1091 {
1093 float newValue = 0;
1095 {
1096 newValue += 0.25;
1097 }
1098
1100 {
1101 newValue += 0.25;
1102 }
1103
1105 {
1106 newValue += 0.25;
1107 }
1108
1110 {
1111 newValue += 0.25;
1112 }
1113
1115 {
1116 newValue -= 0.6;
1117 }
1118
1120 {
1121 newValue -= 0.6;
1122 }
1123
1125 break;
1126 }
1127
1128 return super.OnSound(ctrl, oldValue);
1129 }
1130
1132 {
1133 switch (selection)
1134 {
1135 case "doors_driver":
1136 return "DoorsDriver";
1137 case "doors_codriver":
1138 return "DoorsCoDriver";
1139 case "doors_cargo1":
1140 return "DoorsCargo1";
1141 case "doors_cargo2":
1142 return "DoorsCargo2";
1143 case "doors_hood":
1144 return "DoorsHood";
1145 case "doors_trunk":
1146 return "DoorsTrunk";
1147 }
1148
1149 return "";
1150 }
1151
1153 {
1154 return false;
1155 }
1156
1158 {
1159 return false;
1160 }
1161
1163 {
1164 switch (currentSeat)
1165 {
1166 case 0:
1167 return nextSeat == 1;
1168
1169 case 1:
1170 return nextSeat == 0;
1171
1172 case 2:
1173 return nextSeat == 3;
1174
1175 case 3:
1176 return nextSeat == 2;
1177 }
1178
1179 return false;
1180 }
1181
1183 {
1184 switch (pCurrentSeat)
1185 {
1186 case 0:
1187 return pDoorsSelection == "DoorsDriver";
1188
1189 case 1:
1190 return pDoorsSelection == "DoorsCoDriver";
1191
1192 case 2:
1193 return pDoorsSelection == "DoorsCargo1";
1194
1195 case 3:
1196 return pDoorsSelection == "DoorsCargo2";
1197 }
1198
1199 return false;
1200 }
1201
1203 {
1207
1208 GetInventory().CreateInInventory("CivSedanWheel");
1209 GetInventory().CreateInInventory("CivSedanWheel");
1210 GetInventory().CreateInInventory("CivSedanWheel");
1211 GetInventory().CreateInInventory("CivSedanWheel");
1212
1213 GetInventory().CreateInInventory("CivSedanDoors_Driver");
1214 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
1215 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
1216 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
1217 GetInventory().CreateInInventory("CivSedanHood");
1218 GetInventory().CreateInInventory("CivSedanTrunk");
1219
1220
1221 GetInventory().CreateInInventory("CivSedanWheel");
1222 GetInventory().CreateInInventory("CivSedanWheel");
1223 }
1224
1226 {
1227 return 1.5;
1228 }
1229}
1230
1232{
1234 {
1238
1239 GetInventory().CreateInInventory("CivSedanWheel");
1240 GetInventory().CreateInInventory("CivSedanWheel");
1241 GetInventory().CreateInInventory("CivSedanWheel");
1242 GetInventory().CreateInInventory("CivSedanWheel");
1243
1244 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
1245 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
1246 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
1247 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
1248 GetInventory().CreateInInventory("CivSedanHood_Wine");
1249 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
1250
1251
1252 GetInventory().CreateInInventory("CivSedanWheel");
1253 GetInventory().CreateInInventory("CivSedanWheel");
1254 }
1255}
1256
1258{
1260 {
1264
1265 GetInventory().CreateInInventory("CivSedanWheel");
1266 GetInventory().CreateInInventory("CivSedanWheel");
1267 GetInventory().CreateInInventory("CivSedanWheel");
1268 GetInventory().CreateInInventory("CivSedanWheel");
1269
1270 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
1271 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
1272 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
1273 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
1274 GetInventory().CreateInInventory("CivSedanHood_Black");
1275 GetInventory().CreateInInventory("CivSedanTrunk_Black");
1276
1277
1278 GetInventory().CreateInInventory("CivSedanWheel");
1279 GetInventory().CreateInInventory("CivSedanWheel");
1280 }
1281}
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.