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

◆ IsVitalTruckBattery()

override bool OnDebugSpawn::IsVitalTruckBattery ( )
protected

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

776{
780
781 void CivilianSedan()
782 {
783 //m_dmgContactCoef = 0.065;
784
785 m_EngineStartOK = "CivilianSedan_engine_start_SoundSet";
786 m_EngineStartBattery = "CivilianSedan_engine_failed_start_battery_SoundSet";
787 m_EngineStartPlug = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
788 m_EngineStartFuel = "CivilianSedan_engine_failed_start_fuel_SoundSet";
789 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
790
791 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
792 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
793
794 m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
795 m_CarHornLongSoundName = "CivilianSedan_Horn_SoundSet";
796
797 SetEnginePos("0 0.7 1.6");
798 }
799
800 override void EEInit()
801 {
802 super.EEInit();
803
804 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
805 {
807 m_UTSSettings.m_ManualUpdate = true;
809 m_UTSSettings.m_TemperatureCap = 0;
810 m_UTSSettings.m_RangeFull = 0.5;
811 m_UTSSettings.m_RangeMax = 2;
812
815 }
816 }
817
818 override void OnEngineStart()
819 {
820 super.OnEngineStart();
821
822 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
823 {
824 m_UTSource.SetDefferedActive(true, 20.0);
825 }
826 }
827
828 override void OnEngineStop()
829 {
830 super.OnEngineStop();
831
832 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
833 {
834 m_UTSource.SetDefferedActive(false, 10.0);
835 }
836 }
837
838 override void EOnPostSimulate(IEntity other, float timeSlice)
839 {
840 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
841 {
842 if (m_UTSource.IsActive())
843 {
845 }
846 }
847 }
848
849 override int GetAnimInstance()
850 {
851 return VehicleAnimInstances.SEDAN;
852 }
853
854 override float GetTransportCameraDistance()
855 {
856 return 4.5;
857 }
858
859 override int GetSeatAnimationType(int posIdx)
860 {
861 switch (posIdx)
862 {
863 case 0:
864 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
865 case 1:
866 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
867 case 2:
868 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
869 case 3:
870 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
871 }
872
873 return 0;
874 }
875
876 // Override for car-specific light type
878 {
879 return CarLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanFrontLight) );
880 }
881
882 // Override for car-specific light type
884 {
885 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanRearLight) );
886 }
887
888 override bool CanReleaseAttachment( EntityAI attachment )
889 {
890 if( !super.CanReleaseAttachment( attachment ) )
891 return false;
892
893 string attType = attachment.GetType();
894
895 if ( EngineIsOn() || GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED )
896 {
897 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
898 return false;
899 }
900
901 return true;
902 }
903
904 override protected bool CanManipulateSpareWheel(string slotSelectionName)
905 {
906 return GetCarDoorsState("CivSedanTrunk") != CarDoorState.DOORS_CLOSED;
907 }
908
909 override bool CanDisplayAttachmentCategory(string category_name)
910 {
911 //super
912 if (!super.CanDisplayAttachmentCategory(category_name))
913 return false;
914 //
915
916 category_name.ToLower();
917 if (category_name.Contains("engine"))
918 {
919 if (GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED)
920 return false;
921 }
922
923 return true;
924 }
925
926 override bool CanDisplayCargo()
927 {
928 if ( !super.CanDisplayCargo() )
929 return false;
930
931 if ( GetCarDoorsState("CivSedanTrunk") == CarDoorState.DOORS_CLOSED )
932 return false;
933
934 return true;
935 }
936
937 override int GetCarDoorsState( string slotType )
938 {
939 CarDoor carDoor;
940
941 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
942 if (!carDoor)
943 {
944 return CarDoorState.DOORS_MISSING;
945 }
946
947 switch (slotType)
948 {
949 case "CivSedanDriverDoors":
950 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
951 break;
952
953 case "CivSedanCoDriverDoors":
954 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
955 break;
956
957 case "CivSedanCargo1Doors":
958 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
959 break;
960
961 case "CivSedanCargo2Doors":
962 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
963 break;
964
965 case "CivSedanTrunk":
966 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
967 break;
968
969 case "CivSedanHood":
970 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
971 break;
972 }
973
974 return CarDoorState.DOORS_MISSING;
975 }
976
977
978 override bool CrewCanGetThrough( int posIdx )
979 {
980 switch( posIdx )
981 {
982 case 0:
983 if ( GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED )
984 return false;
985
986 return true;
987 break;
988
989 case 1:
990 if ( GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED )
991 return false;
992
993 return true;
994 break;
995
996 case 2:
997 if ( GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED )
998 return false;
999
1000 return true;
1001 break;
1002
1003 case 3:
1004 if ( GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED )
1005 return false;
1006
1007 return true;
1008 break;
1009 }
1010
1011 return false;
1012 }
1013
1014 override string GetDoorSelectionNameFromSeatPos(int posIdx)
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
1035 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
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 // 0 full ambient and engine sound
1057 // 1 zero ambient and engine sound
1058 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1059 {
1060 switch (ctrl)
1061 {
1062 case CarSoundCtrl.DOORS:
1063 float newValue = 0;
1064 if (GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED)
1065 {
1066 newValue += 0.25;
1067 }
1068
1069 if (GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1070 {
1071 newValue += 0.25;
1072 }
1073
1074 if (GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED)
1075 {
1076 newValue += 0.25;
1077 }
1078
1079 if (GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED)
1080 {
1081 newValue += 0.25;
1082 }
1083
1084 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
1085 {
1086 newValue -= 0.6;
1087 }
1088
1089 if (GetHealthLevel("WindowBack") == GameConstants.STATE_RUINED)
1090 {
1091 newValue -= 0.6;
1092 }
1093
1094 return Math.Clamp(newValue, 0, 1);
1095 break;
1096 }
1097
1098 return super.OnSound(ctrl, oldValue);
1099 }
1100
1101 override string GetAnimSourceFromSelection(string selection)
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
1122 override bool IsVitalTruckBattery()
1123 {
1124 return false;
1125 }
1126
1127 override bool IsVitalGlowPlug()
1128 {
1129 return false;
1130 }
1131
1132 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
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
1152 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
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
1172 override void OnDebugSpawn()
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 //-----IN CAR CARGO
1191 GetInventory().CreateInInventory("CivSedanWheel");
1192 GetInventory().CreateInInventory("CivSedanWheel");
1193 }
1194
1195 override float GetPushForceCoefficientMultiplier()
1196 {
1197 return 1.5;
1198 }
1199}
1200
1201class CivilianSedan_Wine extends CivilianSedan
1202{
1203 override void OnDebugSpawn()
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 //-----IN CAR CARGO
1222 GetInventory().CreateInInventory("CivSedanWheel");
1223 GetInventory().CreateInInventory("CivSedanWheel");
1224 }
1225}
1226
1227class CivilianSedan_Black extends CivilianSedan
1228{
1229 override void OnDebugSpawn()
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 //-----IN CAR CARGO
1248 GetInventory().CreateInInventory("CivSedanWheel");
1249 GetInventory().CreateInInventory("CivSedanWheel");
1250 }
1251}
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
string m_CarDoorOpenSound
Определения CarScript.c:213
override float GetPushForceCoefficientMultiplier()
Определения CivilianSedan.c:848
class CivilianSedan extends CarScript OnDebugSpawn()
Определения CivilianSedan.c:429
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения CivilianSedan.c:785
override string GetAnimSourceFromSelection(string selection)
Определения CivilianSedan.c:754
override int GetSeatAnimationType(int posIdx)
Определения CivilianSedan.c:512
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения CivilianSedan.c:711
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:688
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения CivilianSedan.c:491
override void OnEngineStop()
Определения CivilianSedan.c:481
void CivilianSedan()
Определения CivilianSedan.c:434
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:432
override float GetTransportCameraDistance()
Определения CivilianSedan.c:507
override void EEInit()
Определения CivilianSedan.c:453
override bool CanReleaseAttachment(EntityAI attachment)
Определения CivilianSedan.c:541
override bool CanDisplayCargo()
Определения CivilianSedan.c:579
override void OnEngineStart()
Определения CivilianSedan.c:471
override CarLightBase CreateFrontLight()
Определения CivilianSedan.c:530
override int GetAnimInstance()
Определения CivilianSedan.c:502
override bool CrewCanGetThrough(int posIdx)
Определения CivilianSedan.c:631
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения CivilianSedan.c:805
bool CanManipulateSpareWheel(string slotSelectionName)
Определения CivilianSedan.c:557
override bool IsVitalGlowPlug()
Определения CivilianSedan.c:780
override CarRearLightBase CreateRearLight()
Определения CivilianSedan.c:536
override bool IsVitalTruckBattery()
Определения CivilianSedan.c:775
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:667
override int GetCarDoorsState(string slotType)
Определения CivilianSedan.c:590
override bool CanDisplayAttachmentCategory(string category_name)
Определения CivilianSedan.c:562
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения InventoryItem.c:496
Определения CarRearLightBase.c:2
override void OnDebugSpawn()
Определения CivilianSedan.c:455
Определения CivilianSedan.c:454
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения Building.c:6
Определения constants.c:659
Определения 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
Определения constants.c:806
const int STATE_RUINED
Определения constants.c:846
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.