786{
790
792 {
793
794
800
803
806
807 SetEnginePos("0 0.7 1.6");
808 }
809
811 {
812 super.EEInit();
813
815 {
822
825 }
826 }
827
829 {
830 super.OnEngineStart();
831
833 {
835 }
836 }
837
839 {
840 super.OnEngineStop();
841
843 {
845 }
846 }
847
849 {
851 {
853 {
855 }
856 }
857 }
858
860 {
862 }
863
865 {
866 return 4.5;
867 }
868
870 {
871 switch (posIdx)
872 {
873 case 0:
875 case 1:
877 case 2:
879 case 3:
881 }
882
883 return 0;
884 }
885
886
888 {
890 }
891
892
894 {
896 }
897
899 {
900 if( !super.CanReleaseAttachment( attachment ) )
901 return false;
902
903 string attType = attachment.GetType();
904
906 {
907 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
908 return false;
909 }
910
911 return true;
912 }
913
915 {
917 }
918
920 {
921
922 if (!super.CanDisplayAttachmentCategory(category_name))
923 return false;
924
925
927 if (category_name.
Contains(
"engine"))
928 {
930 return false;
931 }
932
933 return true;
934 }
935
937 {
938 if ( !super.CanDisplayCargo() )
939 return false;
940
942 return false;
943
944 return true;
945 }
946
948 {
950
951 Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
952 if (!carDoor)
953 {
955 }
956
957 switch (slotType)
958 {
959 case "CivSedanDriverDoors":
961 break;
962
963 case "CivSedanCoDriverDoors":
965 break;
966
967 case "CivSedanCargo1Doors":
969 break;
970
971 case "CivSedanCargo2Doors":
973 break;
974
975 case "CivSedanTrunk":
977 break;
978
979 case "CivSedanHood":
981 break;
982 }
983
985 }
986
987
989 {
990 switch( posIdx )
991 {
992 case 0:
994 return false;
995
996 return true;
997 break;
998
999 case 1:
1001 return false;
1002
1003 return true;
1004 break;
1005
1006 case 2:
1008 return false;
1009
1010 return true;
1011 break;
1012
1013 case 3:
1015 return false;
1016
1017 return true;
1018 break;
1019 }
1020
1021 return false;
1022 }
1023
1025 {
1026 switch( posIdx )
1027 {
1028 case 0:
1029 return "doors_driver";
1030 break;
1031 case 1:
1032 return "doors_codriver";
1033 break;
1034 case 2:
1035 return "doors_cargo1";
1036 break;
1037 case 3:
1038 return "doors_cargo2";
1039 break;
1040 }
1041
1042 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1043 }
1044
1046 {
1047 switch( posIdx )
1048 {
1049 case 0:
1050 return "CivSedanDriverDoors";
1051 break;
1052 case 1:
1053 return "CivSedanCoDriverDoors";
1054 break;
1055 case 2:
1056 return "CivSedanCargo1Doors";
1057 break;
1058 case 3:
1059 return "CivSedanCargo2Doors";
1060 break;
1061 }
1062
1063 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1064 }
1065
1066
1067
1069 {
1070 switch (ctrl)
1071 {
1073 float newValue = 0;
1075 {
1076 newValue += 0.25;
1077 }
1078
1080 {
1081 newValue += 0.25;
1082 }
1083
1085 {
1086 newValue += 0.25;
1087 }
1088
1090 {
1091 newValue += 0.25;
1092 }
1093
1095 {
1096 newValue -= 0.6;
1097 }
1098
1100 {
1101 newValue -= 0.6;
1102 }
1103
1105 break;
1106 }
1107
1108 return super.OnSound(ctrl, oldValue);
1109 }
1110
1112 {
1113 switch (selection)
1114 {
1115 case "doors_driver":
1116 return "DoorsDriver";
1117 case "doors_codriver":
1118 return "DoorsCoDriver";
1119 case "doors_cargo1":
1120 return "DoorsCargo1";
1121 case "doors_cargo2":
1122 return "DoorsCargo2";
1123 case "doors_hood":
1124 return "DoorsHood";
1125 case "doors_trunk":
1126 return "DoorsTrunk";
1127 }
1128
1129 return "";
1130 }
1131
1133 {
1134 return false;
1135 }
1136
1138 {
1139 return false;
1140 }
1141
1143 {
1144 switch (currentSeat)
1145 {
1146 case 0:
1147 return nextSeat == 1;
1148
1149 case 1:
1150 return nextSeat == 0;
1151
1152 case 2:
1153 return nextSeat == 3;
1154
1155 case 3:
1156 return nextSeat == 2;
1157 }
1158
1159 return false;
1160 }
1161
1163 {
1164 switch (pCurrentSeat)
1165 {
1166 case 0:
1167 return pDoorsSelection == "DoorsDriver";
1168
1169 case 1:
1170 return pDoorsSelection == "DoorsCoDriver";
1171
1172 case 2:
1173 return pDoorsSelection == "DoorsCargo1";
1174
1175 case 3:
1176 return pDoorsSelection == "DoorsCargo2";
1177 }
1178
1179 return false;
1180 }
1181
1183 {
1187
1188 GetInventory().CreateInInventory("CivSedanWheel");
1189 GetInventory().CreateInInventory("CivSedanWheel");
1190 GetInventory().CreateInInventory("CivSedanWheel");
1191 GetInventory().CreateInInventory("CivSedanWheel");
1192
1193 GetInventory().CreateInInventory("CivSedanDoors_Driver");
1194 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
1195 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
1196 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
1197 GetInventory().CreateInInventory("CivSedanHood");
1198 GetInventory().CreateInInventory("CivSedanTrunk");
1199
1200
1201 GetInventory().CreateInInventory("CivSedanWheel");
1202 GetInventory().CreateInInventory("CivSedanWheel");
1203 }
1204
1206 {
1207 return 1.5;
1208 }
1209}
1210
1212{
1214 {
1218
1219 GetInventory().CreateInInventory("CivSedanWheel");
1220 GetInventory().CreateInInventory("CivSedanWheel");
1221 GetInventory().CreateInInventory("CivSedanWheel");
1222 GetInventory().CreateInInventory("CivSedanWheel");
1223
1224 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
1225 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
1226 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
1227 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
1228 GetInventory().CreateInInventory("CivSedanHood_Wine");
1229 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
1230
1231
1232 GetInventory().CreateInInventory("CivSedanWheel");
1233 GetInventory().CreateInInventory("CivSedanWheel");
1234 }
1235}
1236
1238{
1240 {
1244
1245 GetInventory().CreateInInventory("CivSedanWheel");
1246 GetInventory().CreateInInventory("CivSedanWheel");
1247 GetInventory().CreateInInventory("CivSedanWheel");
1248 GetInventory().CreateInInventory("CivSedanWheel");
1249
1250 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
1251 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
1252 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
1253 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
1254 GetInventory().CreateInInventory("CivSedanHood_Black");
1255 GetInventory().CreateInInventory("CivSedanTrunk_Black");
1256
1257
1258 GetInventory().CreateInInventory("CivSedanWheel");
1259 GetInventory().CreateInInventory("CivSedanWheel");
1260 }
1261}
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.