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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

815 : CarScript
816{
820
821 void CivilianSedan()
822 {
823 //m_dmgContactCoef = 0.065;
824
825 m_EngineStartOK = "CivilianSedan_engine_start_SoundSet";
826 m_EngineStartBattery = "CivilianSedan_engine_failed_start_battery_SoundSet";
827 m_EngineStartPlug = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
828 m_EngineStartFuel = "CivilianSedan_engine_failed_start_fuel_SoundSet";
829 m_EngineStop = "CivilianSedan_engine_stop_SoundSet";
830 m_EngineStopFuel = "CivilianSedan_engine_stop_fuel_SoundSet";
831
832 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
833 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
834
835 m_LightsComponent.RegisterLight("Front", new VehicleLightData(new CivilianSedanLightProfileFront()));
836 m_LightsComponent.RegisterLight("Rear", new VehicleLightData(new CivilianSedanLightProfileRear()));
837
838 m_HornComponent.RegisterSound(VehicleHornMode.SHORT, "CivilianSedan_Horn_Short_SoundSet");
839 m_HornComponent.RegisterSound(VehicleHornMode.LONG, "CivilianSedan_Horn_SoundSet");
840
841 SetEnginePos("0 0.7 1.6");
842
844 m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
845 m_CarHornLongSoundName = "CivilianSedan_Horn_SoundSet";
846 }
847
848 void ~CivilianSedan()
849 {
850 m_UTSource = null;
851 m_UTSSettings = null;
852 m_UTSLEngine = null;
853 }
854
855 override void EEInit()
856 {
857 super.EEInit();
858
859 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
860 {
862 m_UTSSettings.m_ManualUpdate = true;
864 m_UTSSettings.m_TemperatureCap = 0;
865 m_UTSSettings.m_RangeFull = 0.5;
866 m_UTSSettings.m_RangeMax = 2;
867
870 }
871 }
872
873 override bool NeedElectricitySourceDevice()
874 {
875 return true;
876 }
877
879 {
880 super.GetElectricitySourceDevice();
881
882 return GetInventory().FindAttachment(CarBattery.SLOT_ID);
883 }
884
885 override string GetElectricitySourceDeviceType()
886 {
887 return "CarBattery";
888 }
889
890 override void OnEngineStart()
891 {
892 super.OnEngineStart();
893
894 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
895 {
896 if (m_UTSource)
897 m_UTSource.SetDefferedActive(true, 20.0);
898 }
899 }
900
901 override void OnEngineStop()
902 {
903 super.OnEngineStop();
904
905 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
906 {
907 if (m_UTSource)
908 m_UTSource.SetDefferedActive(false, 10.0);
909 }
910 }
911
912 override void EOnPostSimulate(IEntity other, float timeSlice)
913 {
914 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
915 {
916 if (m_UTSource && m_UTSource.IsActive())
917 {
919 }
920 }
921 }
922
923 override int GetAnimInstance()
924 {
925 return VehicleAnimInstances.SEDAN;
926 }
927
928 override float GetTransportCameraDistance()
929 {
930 return 4.5;
931 }
932
933 override int GetSeatAnimationType(int posIdx)
934 {
935 switch (posIdx)
936 {
937 case 0:
938 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
939 case 1:
940 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
941 case 2:
942 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
943 case 3:
944 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
945 }
946
947 return 0;
948 }
949
950 override bool CanReleaseAttachment( EntityAI attachment )
951 {
952 if( !super.CanReleaseAttachment( attachment ) )
953 return false;
954
955 string attType = attachment.GetType();
956
957 if ( EngineIsOn() || GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED )
958 {
959 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
960 return false;
961 }
962
963 return true;
964 }
965
966 override protected bool CanManipulateSpareWheel(string slotSelectionName)
967 {
968 return GetCarDoorsState("CivSedanTrunk") != CarDoorState.DOORS_CLOSED;
969 }
970
971 override bool CanDisplayAttachmentCategory(string category_name)
972 {
973 //super
974 if (!super.CanDisplayAttachmentCategory(category_name))
975 return false;
976 //
977
978 category_name.ToLower();
979 if (category_name.Contains("engine"))
980 {
981 if (GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED)
982 return false;
983 }
984
985 return true;
986 }
987
988 override bool CanDisplayCargo()
989 {
990 if ( !super.CanDisplayCargo() )
991 return false;
992
993 if ( GetCarDoorsState("CivSedanTrunk") == CarDoorState.DOORS_CLOSED )
994 return false;
995
996 return true;
997 }
998
999 override int GetCarDoorsState( string slotType )
1000 {
1001 CarDoor carDoor;
1002
1003 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
1004 if (!carDoor)
1005 {
1006 return CarDoorState.DOORS_MISSING;
1007 }
1008
1009 switch (slotType)
1010 {
1011 case "CivSedanDriverDoors":
1012 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
1013 break;
1014
1015 case "CivSedanCoDriverDoors":
1016 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
1017 break;
1018
1019 case "CivSedanCargo1Doors":
1020 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
1021 break;
1022
1023 case "CivSedanCargo2Doors":
1024 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
1025 break;
1026
1027 case "CivSedanTrunk":
1028 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
1029 break;
1030
1031 case "CivSedanHood":
1032 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
1033 break;
1034 }
1035
1036 return CarDoorState.DOORS_MISSING;
1037 }
1038
1039
1040 override bool CrewCanGetThrough( int posIdx )
1041 {
1042 switch( posIdx )
1043 {
1044 case 0:
1045 if ( GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED )
1046 return false;
1047
1048 return true;
1049 break;
1050
1051 case 1:
1052 if ( GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED )
1053 return false;
1054
1055 return true;
1056 break;
1057
1058 case 2:
1059 if ( GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED )
1060 return false;
1061
1062 return true;
1063 break;
1064
1065 case 3:
1066 if ( GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED )
1067 return false;
1068
1069 return true;
1070 break;
1071 }
1072
1073 return false;
1074 }
1075
1076 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1077 {
1078 switch( posIdx )
1079 {
1080 case 0:
1081 return "doors_driver";
1082 break;
1083 case 1:
1084 return "doors_codriver";
1085 break;
1086 case 2:
1087 return "doors_cargo1";
1088 break;
1089 case 3:
1090 return "doors_cargo2";
1091 break;
1092 }
1093
1094 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1095 }
1096
1097 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1098 {
1099 switch( posIdx )
1100 {
1101 case 0:
1102 return "CivSedanDriverDoors";
1103 break;
1104 case 1:
1105 return "CivSedanCoDriverDoors";
1106 break;
1107 case 2:
1108 return "CivSedanCargo1Doors";
1109 break;
1110 case 3:
1111 return "CivSedanCargo2Doors";
1112 break;
1113 }
1114
1115 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1116 }
1117
1118 // 0 full ambient and engine sound
1119 // 1 zero ambient and engine sound
1120 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1121 {
1122 switch (ctrl)
1123 {
1124 case CarSoundCtrl.DOORS:
1125 float newValue = 0;
1126 if (GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED)
1127 {
1128 newValue += 0.25;
1129 }
1130
1131 if (GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1132 {
1133 newValue += 0.25;
1134 }
1135
1136 if (GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED)
1137 {
1138 newValue += 0.25;
1139 }
1140
1141 if (GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED)
1142 {
1143 newValue += 0.25;
1144 }
1145
1146 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
1147 {
1148 newValue -= 0.6;
1149 }
1150
1151 if (GetHealthLevel("WindowBack") == GameConstants.STATE_RUINED)
1152 {
1153 newValue -= 0.6;
1154 }
1155
1156 return Math.Clamp(newValue, 0, 1);
1157 break;
1158 }
1159
1160 return super.OnSound(ctrl, oldValue);
1161 }
1162
1163 override string GetAnimSourceFromSelection(string selection)
1164 {
1165 switch (selection)
1166 {
1167 case "doors_driver":
1168 return "DoorsDriver";
1169 case "doors_codriver":
1170 return "DoorsCoDriver";
1171 case "doors_cargo1":
1172 return "DoorsCargo1";
1173 case "doors_cargo2":
1174 return "DoorsCargo2";
1175 case "doors_hood":
1176 return "DoorsHood";
1177 case "doors_trunk":
1178 return "DoorsTrunk";
1179 }
1180
1181 return "";
1182 }
1183
1184 override bool IsVitalGlowPlug()
1185 {
1186 return false;
1187 }
1188
1189 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1190 {
1191 switch (currentSeat)
1192 {
1193 case 0:
1194 return nextSeat == 1;
1195
1196 case 1:
1197 return nextSeat == 0;
1198
1199 case 2:
1200 return nextSeat == 3;
1201
1202 case 3:
1203 return nextSeat == 2;
1204 }
1205
1206 return false;
1207 }
1208
1209 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
1210 {
1211 switch (pCurrentSeat)
1212 {
1213 case 0:
1214 return pDoorsSelection == "DoorsDriver";
1215
1216 case 1:
1217 return pDoorsSelection == "DoorsCoDriver";
1218
1219 case 2:
1220 return pDoorsSelection == "DoorsCargo1";
1221
1222 case 3:
1223 return pDoorsSelection == "DoorsCargo2";
1224 }
1225
1226 return false;
1227 }
1228
1229 override void OnDebugSpawn()
1230 {
1232 SpawnAdditionalItems();
1233 FillUpCarFluids();
1234
1235 GameInventory inventory = GetInventory();
1236 inventory.CreateInInventory("CivSedanWheel");
1237 inventory.CreateInInventory("CivSedanWheel");
1238 inventory.CreateInInventory("CivSedanWheel");
1239 inventory.CreateInInventory("CivSedanWheel");
1240
1241 inventory.CreateInInventory("CivSedanDoors_Driver");
1242 inventory.CreateInInventory("CivSedanDoors_CoDriver");
1243 inventory.CreateInInventory("CivSedanDoors_BackLeft");
1244 inventory.CreateInInventory("CivSedanDoors_BackRight");
1245 inventory.CreateInInventory("CivSedanHood");
1246 inventory.CreateInInventory("CivSedanTrunk");
1247
1248 //-----IN CAR CARGO
1249 inventory.CreateInInventory("CivSedanWheel");
1250 inventory.CreateInInventory("CivSedanWheel");
1251 }
1252
1253 override float GetPushForceCoefficientMultiplier()
1254 {
1255 return 1.5;
1256 }
1257}
1258
1259class CivilianSedan_Wine : CivilianSedan
1260{
1261 override void OnDebugSpawn()
1262 {
1264 SpawnAdditionalItems();
1265 FillUpCarFluids();
1266
1267 GameInventory inventory = GetInventory();
1268 inventory.CreateInInventory("CivSedanWheel");
1269 inventory.CreateInInventory("CivSedanWheel");
1270 inventory.CreateInInventory("CivSedanWheel");
1271 inventory.CreateInInventory("CivSedanWheel");
1272
1273 inventory.CreateInInventory("CivSedanDoors_Driver_Wine");
1274 inventory.CreateInInventory("CivSedanDoors_CoDriver_Wine");
1275 inventory.CreateInInventory("CivSedanDoors_BackLeft_Wine");
1276 inventory.CreateInInventory("CivSedanDoors_BackRight_Wine");
1277 inventory.CreateInInventory("CivSedanHood_Wine");
1278 inventory.CreateInInventory("CivSedanTrunk_Wine");
1279
1280 //-----IN CAR CARGO
1281 inventory.CreateInInventory("CivSedanWheel");
1282 inventory.CreateInInventory("CivSedanWheel");
1283 }
1284}
1285
1287{
1288 override void OnDebugSpawn()
1289 {
1291 SpawnAdditionalItems();
1292 FillUpCarFluids();
1293
1294 GameInventory inventory = GetInventory();
1295 inventory.CreateInInventory("CivSedanWheel");
1296 inventory.CreateInInventory("CivSedanWheel");
1297 inventory.CreateInInventory("CivSedanWheel");
1298 inventory.CreateInInventory("CivSedanWheel");
1299
1300 inventory.CreateInInventory("CivSedanDoors_Driver_Black");
1301 inventory.CreateInInventory("CivSedanDoors_CoDriver_Black");
1302 inventory.CreateInInventory("CivSedanDoors_BackLeft_Black");
1303 inventory.CreateInInventory("CivSedanDoors_BackRight_Black");
1304 inventory.CreateInInventory("CivSedanHood_Black");
1305 inventory.CreateInInventory("CivSedanTrunk_Black");
1306
1307 //-----IN CAR CARGO
1308 inventory.CreateInInventory("CivSedanWheel");
1309 inventory.CreateInInventory("CivSedanWheel");
1310 }
1311}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
CarDoorState
Определения CarScript.c:2
DayZGame g_Game
Определения DayZGame.c:4074
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:222
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:221
proto native void SetEnginePos(vector pos)
Override the position of engine (model space)
proto native bool EngineIsOn()
Returns true when engine is running, false otherwise.
void SpawnUniversalParts()
Определения MotorbikeScript.c:1425
string m_EngineStartOK
Определения MotorbikeScript.c:89
string m_EngineStartBattery
Определения MotorbikeScript.c:90
string m_EngineStartPlug
Определения MotorbikeScript.c:91
string m_EngineStartFuel
Определения MotorbikeScript.c:92
ref VehicleHornComponent m_HornComponent
Определения MotorbikeScript.c:75
string m_EngineStopFuel
Определения MotorbikeScript.c:94
ref VehicleLightsComponent m_LightsComponent
Определения MotorbikeScript.c:74
string m_EngineStop
Определения MotorbikeScript.c:93
CivilianSedanLightProfileFront VehicleLightProfileFront CivilianSedanLightProfileRear()
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
void VehicleLightData(VehicleLightProfileBase profile)
Определения VehicleLightsComponent.c:21
override float GetPushForceCoefficientMultiplier()
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()
void ~CivilianSedan()
void CivilianSedan()
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
override float GetTransportCameraDistance()
override void EEInit()
override bool CanReleaseAttachment(EntityAI attachment)
override bool CanDisplayCargo()
override EntityAI GetElectricitySourceDevice()
override void OnEngineStart()
override int GetAnimInstance()
override bool CrewCanGetThrough(int posIdx)
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
bool CanManipulateSpareWheel(string slotSelectionName)
override bool IsVitalGlowPlug()
override bool NeedElectricitySourceDevice()
override string GetElectricitySourceDeviceType()
override string GetDoorSelectionNameFromSeatPos(int posIdx)
override int GetCarDoorsState(string slotType)
CivilianSedan CarScript OnDebugSpawn()
override bool CanDisplayAttachmentCategory(string category_name)
static int SLOT_ID
Определения CarBattery.c:3
Определения CarBattery.c:2
Определения Truck_02.c:2
override void OnDebugSpawn()
override void OnDebugSpawn()
Super root of all classes in Enforce script.
Определения EnScript.c:11
EntityAI CreateInInventory(string type)
creates entity somewhere in inventory
script counterpart to engine's class Inventory
Определения EnEntity.c:165
Определения EnMath.c:7
original Timer deletes m_params which is unwanted
Определения UniversalTemperatureSource.c:39
const int LONG
Определения VehicleHornComponent.c:5
const int SHORT
Определения VehicleHornComponent.c:4
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
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/DayZ/constants.c:856
const int STATE_RUINED
Определения 3_Game/DayZ/constants.c:909
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.