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

◆ IsVitalTruckBattery()

override bool OnDebugSpawn::IsVitalTruckBattery ( )
protected

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

778{
782
783 void CivilianSedan()
784 {
785 //m_dmgContactCoef = 0.065;
786
787 m_EngineStartOK = "CivilianSedan_engine_start_SoundSet";
788 m_EngineStartBattery = "CivilianSedan_engine_failed_start_battery_SoundSet";
789 m_EngineStartPlug = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
790 m_EngineStartFuel = "CivilianSedan_engine_failed_start_fuel_SoundSet";
791 m_EngineStop = "CivilianSedan_engine_stop_SoundSet";
792 m_EngineStopFuel = "CivilianSedan_engine_stop_fuel_SoundSet";
793
794 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
795 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
796
797 m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
798 m_CarHornLongSoundName = "CivilianSedan_Horn_SoundSet";
799
800 SetEnginePos("0 0.7 1.6");
801 }
802
803 override void EEInit()
804 {
805 super.EEInit();
806
807 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
808 {
810 m_UTSSettings.m_ManualUpdate = true;
812 m_UTSSettings.m_TemperatureCap = 0;
813 m_UTSSettings.m_RangeFull = 0.5;
814 m_UTSSettings.m_RangeMax = 2;
815
818 }
819 }
820
821 override void OnEngineStart()
822 {
823 super.OnEngineStart();
824
825 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
826 {
827 m_UTSource.SetDefferedActive(true, 20.0);
828 }
829 }
830
831 override void OnEngineStop()
832 {
833 super.OnEngineStop();
834
835 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
836 {
837 m_UTSource.SetDefferedActive(false, 10.0);
838 }
839 }
840
841 override void EOnPostSimulate(IEntity other, float timeSlice)
842 {
843 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
844 {
845 if (m_UTSource.IsActive())
846 {
848 }
849 }
850 }
851
852 override int GetAnimInstance()
853 {
854 return VehicleAnimInstances.SEDAN;
855 }
856
857 override float GetTransportCameraDistance()
858 {
859 return 4.5;
860 }
861
862 override int GetSeatAnimationType(int posIdx)
863 {
864 switch (posIdx)
865 {
866 case 0:
867 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
868 case 1:
869 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
870 case 2:
871 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
872 case 3:
873 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
874 }
875
876 return 0;
877 }
878
879 // Override for car-specific light type
881 {
882 return CarLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanFrontLight) );
883 }
884
885 // Override for car-specific light type
887 {
888 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanRearLight) );
889 }
890
891 override bool CanReleaseAttachment( EntityAI attachment )
892 {
893 if( !super.CanReleaseAttachment( attachment ) )
894 return false;
895
896 string attType = attachment.GetType();
897
898 if ( EngineIsOn() || GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED )
899 {
900 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
901 return false;
902 }
903
904 return true;
905 }
906
907 override protected bool CanManipulateSpareWheel(string slotSelectionName)
908 {
909 return GetCarDoorsState("CivSedanTrunk") != CarDoorState.DOORS_CLOSED;
910 }
911
912 override bool CanDisplayAttachmentCategory(string category_name)
913 {
914 //super
915 if (!super.CanDisplayAttachmentCategory(category_name))
916 return false;
917 //
918
919 category_name.ToLower();
920 if (category_name.Contains("engine"))
921 {
922 if (GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED)
923 return false;
924 }
925
926 return true;
927 }
928
929 override bool CanDisplayCargo()
930 {
931 if ( !super.CanDisplayCargo() )
932 return false;
933
934 if ( GetCarDoorsState("CivSedanTrunk") == CarDoorState.DOORS_CLOSED )
935 return false;
936
937 return true;
938 }
939
940 override int GetCarDoorsState( string slotType )
941 {
942 CarDoor carDoor;
943
944 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
945 if (!carDoor)
946 {
947 return CarDoorState.DOORS_MISSING;
948 }
949
950 switch (slotType)
951 {
952 case "CivSedanDriverDoors":
953 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
954 break;
955
956 case "CivSedanCoDriverDoors":
957 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
958 break;
959
960 case "CivSedanCargo1Doors":
961 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
962 break;
963
964 case "CivSedanCargo2Doors":
965 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
966 break;
967
968 case "CivSedanTrunk":
969 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
970 break;
971
972 case "CivSedanHood":
973 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
974 break;
975 }
976
977 return CarDoorState.DOORS_MISSING;
978 }
979
980
981 override bool CrewCanGetThrough( int posIdx )
982 {
983 switch( posIdx )
984 {
985 case 0:
986 if ( GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED )
987 return false;
988
989 return true;
990 break;
991
992 case 1:
993 if ( GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED )
994 return false;
995
996 return true;
997 break;
998
999 case 2:
1000 if ( GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED )
1001 return false;
1002
1003 return true;
1004 break;
1005
1006 case 3:
1007 if ( GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED )
1008 return false;
1009
1010 return true;
1011 break;
1012 }
1013
1014 return false;
1015 }
1016
1017 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1018 {
1019 switch( posIdx )
1020 {
1021 case 0:
1022 return "doors_driver";
1023 break;
1024 case 1:
1025 return "doors_codriver";
1026 break;
1027 case 2:
1028 return "doors_cargo1";
1029 break;
1030 case 3:
1031 return "doors_cargo2";
1032 break;
1033 }
1034
1035 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1036 }
1037
1038 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1039 {
1040 switch( posIdx )
1041 {
1042 case 0:
1043 return "CivSedanDriverDoors";
1044 break;
1045 case 1:
1046 return "CivSedanCoDriverDoors";
1047 break;
1048 case 2:
1049 return "CivSedanCargo1Doors";
1050 break;
1051 case 3:
1052 return "CivSedanCargo2Doors";
1053 break;
1054 }
1055
1056 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1057 }
1058
1059 // 0 full ambient and engine sound
1060 // 1 zero ambient and engine sound
1061 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1062 {
1063 switch (ctrl)
1064 {
1065 case CarSoundCtrl.DOORS:
1066 float newValue = 0;
1067 if (GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED)
1068 {
1069 newValue += 0.25;
1070 }
1071
1072 if (GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1073 {
1074 newValue += 0.25;
1075 }
1076
1077 if (GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED)
1078 {
1079 newValue += 0.25;
1080 }
1081
1082 if (GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED)
1083 {
1084 newValue += 0.25;
1085 }
1086
1087 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
1088 {
1089 newValue -= 0.6;
1090 }
1091
1092 if (GetHealthLevel("WindowBack") == GameConstants.STATE_RUINED)
1093 {
1094 newValue -= 0.6;
1095 }
1096
1097 return Math.Clamp(newValue, 0, 1);
1098 break;
1099 }
1100
1101 return super.OnSound(ctrl, oldValue);
1102 }
1103
1104 override string GetAnimSourceFromSelection(string selection)
1105 {
1106 switch (selection)
1107 {
1108 case "doors_driver":
1109 return "DoorsDriver";
1110 case "doors_codriver":
1111 return "DoorsCoDriver";
1112 case "doors_cargo1":
1113 return "DoorsCargo1";
1114 case "doors_cargo2":
1115 return "DoorsCargo2";
1116 case "doors_hood":
1117 return "DoorsHood";
1118 case "doors_trunk":
1119 return "DoorsTrunk";
1120 }
1121
1122 return "";
1123 }
1124
1125 override bool IsVitalTruckBattery()
1126 {
1127 return false;
1128 }
1129
1130 override bool IsVitalGlowPlug()
1131 {
1132 return false;
1133 }
1134
1135 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1136 {
1137 switch (currentSeat)
1138 {
1139 case 0:
1140 return nextSeat == 1;
1141
1142 case 1:
1143 return nextSeat == 0;
1144
1145 case 2:
1146 return nextSeat == 3;
1147
1148 case 3:
1149 return nextSeat == 2;
1150 }
1151
1152 return false;
1153 }
1154
1155 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
1156 {
1157 switch (pCurrentSeat)
1158 {
1159 case 0:
1160 return pDoorsSelection == "DoorsDriver";
1161
1162 case 1:
1163 return pDoorsSelection == "DoorsCoDriver";
1164
1165 case 2:
1166 return pDoorsSelection == "DoorsCargo1";
1167
1168 case 3:
1169 return pDoorsSelection == "DoorsCargo2";
1170 }
1171
1172 return false;
1173 }
1174
1175 override void OnDebugSpawn()
1176 {
1177 SpawnUniversalParts();
1178 SpawnAdditionalItems();
1179 FillUpCarFluids();
1180
1181 GetInventory().CreateInInventory("CivSedanWheel");
1182 GetInventory().CreateInInventory("CivSedanWheel");
1183 GetInventory().CreateInInventory("CivSedanWheel");
1184 GetInventory().CreateInInventory("CivSedanWheel");
1185
1186 GetInventory().CreateInInventory("CivSedanDoors_Driver");
1187 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
1188 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
1189 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
1190 GetInventory().CreateInInventory("CivSedanHood");
1191 GetInventory().CreateInInventory("CivSedanTrunk");
1192
1193 //-----IN CAR CARGO
1194 GetInventory().CreateInInventory("CivSedanWheel");
1195 GetInventory().CreateInInventory("CivSedanWheel");
1196 }
1197
1198 override float GetPushForceCoefficientMultiplier()
1199 {
1200 return 1.5;
1201 }
1202}
1203
1204class CivilianSedan_Wine extends CivilianSedan
1205{
1206 override void OnDebugSpawn()
1207 {
1208 SpawnUniversalParts();
1209 SpawnAdditionalItems();
1210 FillUpCarFluids();
1211
1212 GetInventory().CreateInInventory("CivSedanWheel");
1213 GetInventory().CreateInInventory("CivSedanWheel");
1214 GetInventory().CreateInInventory("CivSedanWheel");
1215 GetInventory().CreateInInventory("CivSedanWheel");
1216
1217 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
1218 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
1219 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
1220 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
1221 GetInventory().CreateInInventory("CivSedanHood_Wine");
1222 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
1223
1224 //-----IN CAR CARGO
1225 GetInventory().CreateInInventory("CivSedanWheel");
1226 GetInventory().CreateInInventory("CivSedanWheel");
1227 }
1228}
1229
1230class CivilianSedan_Black extends CivilianSedan
1231{
1232 override void OnDebugSpawn()
1233 {
1234 SpawnUniversalParts();
1235 SpawnAdditionalItems();
1236 FillUpCarFluids();
1237
1238 GetInventory().CreateInInventory("CivSedanWheel");
1239 GetInventory().CreateInInventory("CivSedanWheel");
1240 GetInventory().CreateInInventory("CivSedanWheel");
1241 GetInventory().CreateInInventory("CivSedanWheel");
1242
1243 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
1244 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
1245 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
1246 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
1247 GetInventory().CreateInInventory("CivSedanHood_Black");
1248 GetInventory().CreateInInventory("CivSedanTrunk_Black");
1249
1250 //-----IN CAR CARGO
1251 GetInventory().CreateInInventory("CivSedanWheel");
1252 GetInventory().CreateInInventory("CivSedanWheel");
1253 }
1254}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
CarDoorState
Определения CarScript.c:2
override float GetPushForceCoefficientMultiplier()
Определения CivilianSedan.c:850
class CivilianSedan extends CarScript OnDebugSpawn()
Определения CivilianSedan.c:430
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения CivilianSedan.c:787
override string GetAnimSourceFromSelection(string selection)
Определения CivilianSedan.c:756
override int GetSeatAnimationType(int posIdx)
Определения CivilianSedan.c:514
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения CivilianSedan.c:713
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:690
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения CivilianSedan.c:493
override void OnEngineStop()
Определения CivilianSedan.c:483
void CivilianSedan()
Определения CivilianSedan.c:435
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:433
override float GetTransportCameraDistance()
Определения CivilianSedan.c:509
override void EEInit()
Определения CivilianSedan.c:455
override bool CanReleaseAttachment(EntityAI attachment)
Определения CivilianSedan.c:543
override bool CanDisplayCargo()
Определения CivilianSedan.c:581
override void OnEngineStart()
Определения CivilianSedan.c:473
override CarLightBase CreateFrontLight()
Определения CivilianSedan.c:532
override int GetAnimInstance()
Определения CivilianSedan.c:504
override bool CrewCanGetThrough(int posIdx)
Определения CivilianSedan.c:633
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения CivilianSedan.c:807
bool CanManipulateSpareWheel(string slotSelectionName)
Определения CivilianSedan.c:559
override bool IsVitalGlowPlug()
Определения CivilianSedan.c:782
override CarRearLightBase CreateRearLight()
Определения CivilianSedan.c:538
override bool IsVitalTruckBattery()
Определения CivilianSedan.c:777
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:669
override int GetCarDoorsState(string slotType)
Определения CivilianSedan.c:592
override bool CanDisplayAttachmentCategory(string category_name)
Определения CivilianSedan.c:564
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения CarRearLightBase.c:2
override void OnDebugSpawn()
Определения CivilianSedan.c:456
Определения CivilianSedan.c:455
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения EnEntity.c:165
Определения EnMath.c:7
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
Определения 3_Game/constants.c:808
const int STATE_RUINED
Определения 3_Game/constants.c:848
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.