776{
780
782 {
783
784
790
793
796
797 SetEnginePos("0 0.7 1.6");
798 }
799
801 {
802 super.EEInit();
803
805 {
812
815 }
816 }
817
819 {
820 super.OnEngineStart();
821
823 {
825 }
826 }
827
829 {
830 super.OnEngineStop();
831
833 {
835 }
836 }
837
839 {
841 {
843 {
845 }
846 }
847 }
848
850 {
852 }
853
855 {
856 return 4.5;
857 }
858
860 {
861 switch (posIdx)
862 {
863 case 0:
865 case 1:
867 case 2:
869 case 3:
871 }
872
873 return 0;
874 }
875
876
878 {
880 }
881
882
884 {
886 }
887
889 {
890 if( !super.CanReleaseAttachment( attachment ) )
891 return false;
892
893 string attType = attachment.GetType();
894
896 {
897 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
898 return false;
899 }
900
901 return true;
902 }
903
905 {
907 }
908
910 {
911
912 if (!super.CanDisplayAttachmentCategory(category_name))
913 return false;
914
915
917 if (category_name.
Contains(
"engine"))
918 {
920 return false;
921 }
922
923 return true;
924 }
925
927 {
928 if ( !super.CanDisplayCargo() )
929 return false;
930
932 return false;
933
934 return true;
935 }
936
938 {
940
941 Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
942 if (!carDoor)
943 {
945 }
946
947 switch (slotType)
948 {
949 case "CivSedanDriverDoors":
951 break;
952
953 case "CivSedanCoDriverDoors":
955 break;
956
957 case "CivSedanCargo1Doors":
959 break;
960
961 case "CivSedanCargo2Doors":
963 break;
964
965 case "CivSedanTrunk":
967 break;
968
969 case "CivSedanHood":
971 break;
972 }
973
975 }
976
977
979 {
980 switch( posIdx )
981 {
982 case 0:
984 return false;
985
986 return true;
987 break;
988
989 case 1:
991 return false;
992
993 return true;
994 break;
995
996 case 2:
998 return false;
999
1000 return true;
1001 break;
1002
1003 case 3:
1005 return false;
1006
1007 return true;
1008 break;
1009 }
1010
1011 return false;
1012 }
1013
1015 {
1016 switch( posIdx )
1017 {
1018 case 0:
1019 return "doors_driver";
1020 break;
1021 case 1:
1022 return "doors_codriver";
1023 break;
1024 case 2:
1025 return "doors_cargo1";
1026 break;
1027 case 3:
1028 return "doors_cargo2";
1029 break;
1030 }
1031
1032 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1033 }
1034
1036 {
1037 switch( posIdx )
1038 {
1039 case 0:
1040 return "CivSedanDriverDoors";
1041 break;
1042 case 1:
1043 return "CivSedanCoDriverDoors";
1044 break;
1045 case 2:
1046 return "CivSedanCargo1Doors";
1047 break;
1048 case 3:
1049 return "CivSedanCargo2Doors";
1050 break;
1051 }
1052
1053 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1054 }
1055
1056
1057
1059 {
1060 switch (ctrl)
1061 {
1063 float newValue = 0;
1065 {
1066 newValue += 0.25;
1067 }
1068
1070 {
1071 newValue += 0.25;
1072 }
1073
1075 {
1076 newValue += 0.25;
1077 }
1078
1080 {
1081 newValue += 0.25;
1082 }
1083
1085 {
1086 newValue -= 0.6;
1087 }
1088
1090 {
1091 newValue -= 0.6;
1092 }
1093
1095 break;
1096 }
1097
1098 return super.OnSound(ctrl, oldValue);
1099 }
1100
1102 {
1103 switch (selection)
1104 {
1105 case "doors_driver":
1106 return "DoorsDriver";
1107 case "doors_codriver":
1108 return "DoorsCoDriver";
1109 case "doors_cargo1":
1110 return "DoorsCargo1";
1111 case "doors_cargo2":
1112 return "DoorsCargo2";
1113 case "doors_hood":
1114 return "DoorsHood";
1115 case "doors_trunk":
1116 return "DoorsTrunk";
1117 }
1118
1119 return "";
1120 }
1121
1123 {
1124 return false;
1125 }
1126
1128 {
1129 return false;
1130 }
1131
1133 {
1134 switch (currentSeat)
1135 {
1136 case 0:
1137 return nextSeat == 1;
1138
1139 case 1:
1140 return nextSeat == 0;
1141
1142 case 2:
1143 return nextSeat == 3;
1144
1145 case 3:
1146 return nextSeat == 2;
1147 }
1148
1149 return false;
1150 }
1151
1153 {
1154 switch (pCurrentSeat)
1155 {
1156 case 0:
1157 return pDoorsSelection == "DoorsDriver";
1158
1159 case 1:
1160 return pDoorsSelection == "DoorsCoDriver";
1161
1162 case 2:
1163 return pDoorsSelection == "DoorsCargo1";
1164
1165 case 3:
1166 return pDoorsSelection == "DoorsCargo2";
1167 }
1168
1169 return false;
1170 }
1171
1173 {
1177
1178 GetInventory().CreateInInventory("CivSedanWheel");
1179 GetInventory().CreateInInventory("CivSedanWheel");
1180 GetInventory().CreateInInventory("CivSedanWheel");
1181 GetInventory().CreateInInventory("CivSedanWheel");
1182
1183 GetInventory().CreateInInventory("CivSedanDoors_Driver");
1184 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
1185 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
1186 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
1187 GetInventory().CreateInInventory("CivSedanHood");
1188 GetInventory().CreateInInventory("CivSedanTrunk");
1189
1190
1191 GetInventory().CreateInInventory("CivSedanWheel");
1192 GetInventory().CreateInInventory("CivSedanWheel");
1193 }
1194
1196 {
1197 return 1.5;
1198 }
1199}
1200
1202{
1204 {
1208
1209 GetInventory().CreateInInventory("CivSedanWheel");
1210 GetInventory().CreateInInventory("CivSedanWheel");
1211 GetInventory().CreateInInventory("CivSedanWheel");
1212 GetInventory().CreateInInventory("CivSedanWheel");
1213
1214 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
1215 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
1216 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
1217 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
1218 GetInventory().CreateInInventory("CivSedanHood_Wine");
1219 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
1220
1221
1222 GetInventory().CreateInInventory("CivSedanWheel");
1223 GetInventory().CreateInInventory("CivSedanWheel");
1224 }
1225}
1226
1228{
1230 {
1234
1235 GetInventory().CreateInInventory("CivSedanWheel");
1236 GetInventory().CreateInInventory("CivSedanWheel");
1237 GetInventory().CreateInInventory("CivSedanWheel");
1238 GetInventory().CreateInInventory("CivSedanWheel");
1239
1240 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
1241 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
1242 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
1243 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
1244 GetInventory().CreateInInventory("CivSedanHood_Black");
1245 GetInventory().CreateInInventory("CivSedanTrunk_Black");
1246
1247
1248 GetInventory().CreateInInventory("CivSedanWheel");
1249 GetInventory().CreateInInventory("CivSedanWheel");
1250 }
1251}
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.