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

◆ IsVitalTruckBattery()

override bool OnDebugSpawn::IsVitalTruckBattery ( )
protected

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

786{
790
791 void Sedan_02()
792 {
793 m_dmgContactCoef = 0.0790;
794
795 m_EngineStartOK = "Sedan_02_engine_start_SoundSet";
796 m_EngineStartBattery = "Sedan_02_engine_failed_start_battery_SoundSet";
797 m_EngineStartPlug = "Sedan_02_engine_failed_start_sparkplugs_SoundSet";
798 m_EngineStartFuel = "Sedan_02_engine_failed_start_fuel_SoundSet";
799 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
800
801 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
802 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
803
804 m_CarHornShortSoundName = "Sedan_02_Horn_Short_SoundSet";
805 m_CarHornLongSoundName = "Sedan_02_Horn_SoundSet";
806
807 SetEnginePos("0 0.7 -1.7");
808 }
809
810 override void EEInit()
811 {
812 super.EEInit();
813
814 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
815 {
817 m_UTSSettings.m_ManualUpdate = true;
819 m_UTSSettings.m_TemperatureCap = 0;
820 m_UTSSettings.m_RangeFull = 0.5;
821 m_UTSSettings.m_RangeMax = 2;
822
825 }
826 }
827
828 override void OnEngineStart()
829 {
830 super.OnEngineStart();
831
832 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
833 {
834 m_UTSource.SetDefferedActive(true, 20.0);
835 }
836 }
837
838 override void OnEngineStop()
839 {
840 super.OnEngineStop();
841
842 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
843 {
844 m_UTSource.SetDefferedActive(false, 10.0);
845 }
846 }
847
848 override void EOnPostSimulate(IEntity other, float timeSlice)
849 {
850 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
851 {
852 if (m_UTSource.IsActive())
853 {
855 }
856 }
857 }
858
859 override int GetAnimInstance()
860 {
861 return VehicleAnimInstances.S120;
862 }
863
864 override int GetSeatAnimationType(int posIdx)
865 {
866 switch (posIdx)
867 {
868 case 0:
869 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
870 case 1:
871 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
872 case 2:
873 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
874 case 3:
875 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
876 }
877
878 return 0;
879 }
880
881 // Override for car-specific light type
883 {
884 return CarLightBase.Cast(ScriptedLightBase.CreateLight(Sedan_02FrontLight));
885 }
886
887 // Override for car-specific light type
889 {
890 return CarRearLightBase.Cast(ScriptedLightBase.CreateLight(Sedan_02RearLight));
891 }
892
893 override bool CanReleaseAttachment( EntityAI attachment )
894 {
895 if (!super.CanReleaseAttachment(attachment))
896 {
897 return false;
898 }
899
900 string attType = attachment.GetType();
901 switch (attType)
902 {
903 case "CarBattery":
904 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED || EngineIsOn())
905 {
906 return false;
907 }
908 break;
909
910 case "SparkPlug":
911 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED || EngineIsOn())
912 {
913 return false;
914 }
915 break;
916
917 case "CarRadiator":
918 if (GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED || EngineIsOn())
919 {
920 return false;
921 }
922 break;
923 }
924
925 return true;
926 }
927
928 override protected bool CanManipulateSpareWheel(string slotSelectionName)
929 {
930 return GetCarDoorsState("Sedan_02_Hood") != CarDoorState.DOORS_CLOSED;
931 }
932
933 override bool CanDisplayAttachmentCategory(string category_name)
934 {
935 if ( !super.CanDisplayAttachmentCategory(category_name))
936 {
937 return false;
938 }
939
940 category_name.ToLower();
941 if (category_name.Contains("engine"))
942 {
943 if (GetCarDoorsState("Sedan_02_Trunk") == CarDoorState.DOORS_CLOSED)
944 {
945 return false;
946 }
947 }
948
949 if (category_name.Contains("trunk"))
950 {
951 if (GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED)
952 {
953 return false;
954 }
955 }
956
957 return true;
958 }
959
960 override bool CanDisplayCargo()
961 {
962 if ( !super.CanDisplayCargo() )
963 return false;
964
965 if ( GetCarDoorsState("Sedan_02_Hood") == CarDoorState.DOORS_CLOSED )
966 return false;
967
968 return true;
969 }
970
971 override int GetCarDoorsState(string slotType)
972 {
973 CarDoor carDoor;
974
975 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
976 if (!carDoor)
977 {
978 return CarDoorState.DOORS_MISSING;
979 }
980
981 switch (slotType)
982 {
983 case "Sedan_02_Door_1_1":
984 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
985
986 case "Sedan_02_Door_2_1":
987 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
988
989 case "Sedan_02_Door_1_2":
990 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
991
992 case "Sedan_02_Door_2_2":
993 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
994
995 case "Sedan_02_Hood":
996 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
997
998 case "Sedan_02_Trunk":
999 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
1000 }
1001
1002 return CarDoorState.DOORS_MISSING;
1003 }
1004
1005
1006 override bool CrewCanGetThrough( int posIdx )
1007 {
1008 switch( posIdx )
1009 {
1010 case 0:
1011 if ( GetCarDoorsState("Sedan_02_Door_1_1") == CarDoorState.DOORS_CLOSED )
1012 return false;
1013
1014 return true;
1015 break;
1016
1017 case 1:
1018 if ( GetCarDoorsState("Sedan_02_Door_2_1") == CarDoorState.DOORS_CLOSED )
1019 return false;
1020
1021 return true;
1022 break;
1023
1024 case 2:
1025 if ( GetCarDoorsState("Sedan_02_Door_1_2") == CarDoorState.DOORS_CLOSED )
1026 return false;
1027
1028 return true;
1029 break;
1030
1031 case 3:
1032 if ( GetCarDoorsState("Sedan_02_Door_2_2") == CarDoorState.DOORS_CLOSED )
1033 return false;
1034
1035 return true;
1036 break;
1037 }
1038
1039 return false;
1040 }
1041
1042 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1043 {
1044 switch( posIdx )
1045 {
1046 case 0:
1047 return "doors_driver";
1048 break;
1049 case 1:
1050 return "doors_codriver";
1051 break;
1052 case 2:
1053 return "doors_cargo1";
1054 break;
1055 case 3:
1056 return "doors_cargo2";
1057 break;
1058 }
1059
1060 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1061 }
1062
1063 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1064 {
1065 switch( posIdx )
1066 {
1067 case 0:
1068 return "Sedan_02_Door_1_1";
1069 break;
1070 case 1:
1071 return "Sedan_02_Door_2_1";
1072 break;
1073 case 2:
1074 return "Sedan_02_Door_1_2";
1075 break;
1076 case 3:
1077 return "Sedan_02_Door_2_2";
1078 break;
1079 }
1080
1081 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1082 }
1083
1084 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1085 {
1086 switch ( ctrl )
1087 {
1088 case CarSoundCtrl.DOORS:
1089 float newValue = 0;
1090 if (GetCarDoorsState("Sedan_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
1091 {
1092 newValue += 0.25;
1093 }
1094
1095 if (GetCarDoorsState("Sedan_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1096 {
1097 newValue += 0.25;
1098 }
1099
1100 if (GetCarDoorsState("Sedan_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1101 {
1102 newValue += 0.25;
1103 }
1104
1105 if (GetCarDoorsState("Sedan_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1106 {
1107 newValue += 0.25;
1108 }
1109
1110 return Math.Clamp(newValue, 0, 1);
1111 break;
1112 }
1113
1114 return super.OnSound(ctrl, oldValue);
1115 }
1116
1117 override string GetAnimSourceFromSelection( string selection )
1118 {
1119 switch( selection )
1120 {
1121 case "doors_driver":
1122 return "DoorsDriver";
1123 case "doors_codriver":
1124 return "DoorsCoDriver";
1125 case "doors_cargo1":
1126 return "DoorsCargo1";
1127 case "doors_cargo2":
1128 return "DoorsCargo2";
1129 case "doors_hood":
1130 return "DoorsHood";
1131 case "doors_trunk":
1132 return "DoorsTrunk";
1133 }
1134
1135 return "";
1136 }
1137
1138
1139 override bool IsVitalTruckBattery()
1140 {
1141 return false;
1142 }
1143
1144 override bool IsVitalGlowPlug()
1145 {
1146 return false;
1147 }
1148
1149 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1150 {
1151 switch (currentSeat)
1152 {
1153 case 0:
1154 return nextSeat == 1;
1155
1156 case 1:
1157 return nextSeat == 0;
1158
1159 case 2:
1160 return nextSeat == 3;
1161
1162 case 3:
1163 return nextSeat == 2;
1164 }
1165
1166 return false;
1167 }
1168
1169 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1170 {
1171 switch (pCurrentSeat)
1172 {
1173 case 0:
1174 return pDoorsSelection == "DoorsDriver";
1175
1176 case 1:
1177 return pDoorsSelection == "DoorsCoDriver";
1178
1179 case 2:
1180 return pDoorsSelection == "DoorsCargo1";
1181
1182 case 3:
1183 return pDoorsSelection == "DoorsCargo2";
1184 }
1185
1186 return false;
1187 }
1188
1189 override void OnDebugSpawn()
1190 {
1194
1195 GetInventory().CreateInInventory("Sedan_02_Wheel");
1196 GetInventory().CreateInInventory("Sedan_02_Wheel");
1197 GetInventory().CreateInInventory("Sedan_02_Wheel");
1198 GetInventory().CreateInInventory("Sedan_02_Wheel");
1199 GetInventory().CreateInInventory("Sedan_02_Wheel");
1200
1201 GetInventory().CreateInInventory("Sedan_02_Door_1_1");
1202 GetInventory().CreateInInventory("Sedan_02_Door_1_2");
1203 GetInventory().CreateInInventory("Sedan_02_Door_2_1");
1204 GetInventory().CreateInInventory("Sedan_02_Door_2_2");
1205 GetInventory().CreateInInventory("Sedan_02_Hood");
1206 GetInventory().CreateInInventory("Sedan_02_Trunk");
1207
1208 //-----IN CAR CARGO
1209 GetInventory().CreateInInventory("Sedan_02_Wheel");
1210 GetInventory().CreateInInventory("Sedan_02_Wheel");
1211 }
1212}
1213
1214class Sedan_02_Red extends Sedan_02
1215{
1216 override void OnDebugSpawn()
1217 {
1221
1222 GetInventory().CreateInInventory("Sedan_02_Wheel");
1223 GetInventory().CreateInInventory("Sedan_02_Wheel");
1224 GetInventory().CreateInInventory("Sedan_02_Wheel");
1225 GetInventory().CreateInInventory("Sedan_02_Wheel");
1226
1227 GetInventory().CreateInInventory("Sedan_02_Door_1_1_Red");
1228 GetInventory().CreateInInventory("Sedan_02_Door_1_2_Red");
1229 GetInventory().CreateInInventory("Sedan_02_Door_2_1_Red");
1230 GetInventory().CreateInInventory("Sedan_02_Door_2_2_Red");
1231 GetInventory().CreateInInventory("Sedan_02_Hood_Red");
1232 GetInventory().CreateInInventory("Sedan_02_Trunk_Red");
1233
1234 //-----IN CAR CARGO
1235 GetInventory().CreateInInventory("Sedan_02_Wheel");
1236 GetInventory().CreateInInventory("Sedan_02_Wheel");
1237 }
1238}
1239
1240class Sedan_02_Grey extends Sedan_02
1241{
1242 override void OnDebugSpawn()
1243 {
1247
1248 GetInventory().CreateInInventory("Sedan_02_Wheel");
1249 GetInventory().CreateInInventory("Sedan_02_Wheel");
1250 GetInventory().CreateInInventory("Sedan_02_Wheel");
1251 GetInventory().CreateInInventory("Sedan_02_Wheel");
1252
1253 GetInventory().CreateInInventory("Sedan_02_Door_1_1_Grey");
1254 GetInventory().CreateInInventory("Sedan_02_Door_1_2_Grey");
1255 GetInventory().CreateInInventory("Sedan_02_Door_2_1_Grey");
1256 GetInventory().CreateInInventory("Sedan_02_Door_2_2_Grey");
1257 GetInventory().CreateInInventory("Sedan_02_Hood_Grey");
1258 GetInventory().CreateInInventory("Sedan_02_Trunk_Grey");
1259
1260 //-----IN CAR CARGO
1261 GetInventory().CreateInInventory("Sedan_02_Wheel");
1262 GetInventory().CreateInInventory("Sedan_02_Wheel");
1263 }
1264}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
void SpawnUniversalParts()
Определения CarScript.c:2801
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
float m_dmgContactCoef
Определения CarScript.c:161
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 bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Sedan_02.c:795
class Sedan_02 extends CarScript OnDebugSpawn()
Определения Sedan_02.c:432
override string GetAnimSourceFromSelection(string selection)
Определения Sedan_02.c:763
override int GetSeatAnimationType(int posIdx)
Определения Sedan_02.c:510
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Sedan_02.c:730
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения Sedan_02.c:709
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Sedan_02.c:494
override void OnEngineStop()
Определения Sedan_02.c:484
override void EEInit()
Определения Sedan_02.c:456
override bool CanReleaseAttachment(EntityAI attachment)
Определения Sedan_02.c:539
override bool CanDisplayCargo()
Определения Sedan_02.c:606
override void OnEngineStart()
Определения Sedan_02.c:474
override CarLightBase CreateFrontLight()
Определения Sedan_02.c:528
override int GetAnimInstance()
Определения Sedan_02.c:505
override bool CrewCanGetThrough(int posIdx)
Определения Sedan_02.c:652
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Sedan_02.c:815
bool CanManipulateSpareWheel(string slotSelectionName)
Определения Sedan_02.c:574
override bool IsVitalGlowPlug()
Определения Sedan_02.c:790
void Sedan_02()
Определения Sedan_02.c:437
override CarRearLightBase CreateRearLight()
Определения Sedan_02.c:534
override bool IsVitalTruckBattery()
Определения Sedan_02.c:785
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения Sedan_02.c:688
override int GetCarDoorsState(string slotType)
Определения Sedan_02.c:617
override bool CanDisplayAttachmentCategory(string category_name)
Определения Sedan_02.c:579
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()
Определения Sedan_02.c:458
Определения Sedan_02.c:457
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
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.