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

◆ IsVitalGlowPlug()

override bool OnDebugSpawn::IsVitalGlowPlug ( )
protected

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

772 : CarScript
773{
777
778 void Hatchback_02()
779 {
780 //m_dmgContactCoef = 0.070;
781
782 m_EngineStartOK = "Hatchback_02_engine_start_SoundSet";
783 m_EngineStartBattery = "Hatchback_02_engine_failed_start_battery_SoundSet";
784 m_EngineStartPlug = "Hatchback_02_engine_failed_start_sparkplugs_SoundSet";
785 m_EngineStartFuel = "Hatchback_02_engine_failed_start_fuel_SoundSet";
786 m_EngineStop = "Hatchback_02_engine_stop_SoundSet";
787 m_EngineStopFuel = "Hatchback_02_engine_stop_fuel_SoundSet";
788
789 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
790 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
791
792 m_LightsComponent.RegisterLight("Front", new VehicleLightData(new Hatchback_02LightProfileFront()));
793 m_LightsComponent.RegisterLight("Rear", new VehicleLightData(new Hatchback_02LightProfileRear()));
794
795 m_HornComponent.RegisterSound(VehicleHornMode.SHORT, "Hatchback_02_Horn_Short_SoundSet");
796 m_HornComponent.RegisterSound(VehicleHornMode.LONG, "Hatchback_02_Horn_SoundSet");
797
798 SetEnginePos("0 0.7 1.4");
799
801 m_CarHornShortSoundName = "Hatchback_02_Horn_Short_SoundSet";
802 m_CarHornLongSoundName = "Hatchback_02_Horn_SoundSet";
803 }
804
805 void ~Hatchback_02()
806 {
807 m_UTSource = null;
808 m_UTSSettings = null;
809 m_UTSLEngine = null;
810 }
811
812 override void EEInit()
813 {
814 super.EEInit();
815
816 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
817 {
819 m_UTSSettings.m_ManualUpdate = true;
821 m_UTSSettings.m_TemperatureCap = 0;
822 m_UTSSettings.m_RangeFull = 0.5;
823 m_UTSSettings.m_RangeMax = 2;
824
827 }
828 }
829
830 override bool NeedElectricitySourceDevice()
831 {
832 return true;
833 }
834
836 {
837 super.GetElectricitySourceDevice();
838
839 return GetInventory().FindAttachment(CarBattery.SLOT_ID);
840 }
841
842 override string GetElectricitySourceDeviceType()
843 {
844 return "CarBattery";
845 }
846
847 override void OnEngineStart()
848 {
849 super.OnEngineStart();
850
851 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
852 {
853 if (m_UTSource)
854 m_UTSource.SetDefferedActive(true, 20.0);
855 }
856 }
857
858 override void OnEngineStop()
859 {
860 super.OnEngineStop();
861
862 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
863 {
864 if (m_UTSource)
865 m_UTSource.SetDefferedActive(false, 10.0);
866 }
867 }
868
869 override void EOnPostSimulate(IEntity other, float timeSlice)
870 {
871 if (g_Game.IsServer() || !g_Game.IsMultiplayer())
872 {
873 if (m_UTSource && m_UTSource.IsActive())
874 {
876 }
877 }
878 }
879
880 override int GetAnimInstance()
881 {
882 return VehicleAnimInstances.GOLF;
883 }
884
885 override int GetSeatAnimationType(int posIdx)
886 {
887 switch (posIdx)
888 {
889 case 0:
890 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
891 case 1:
892 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
893 case 2:
894 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
895 case 3:
896 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
897 }
898
899 return 0;
900 }
901
902 override bool CanReleaseAttachment(EntityAI attachment)
903 {
904 if (!super.CanReleaseAttachment(attachment))
905 {
906 return false;
907 }
908
909 if (EngineIsOn() || GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED)
910 {
911 string attType = attachment.GetType();
912 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
913 {
914 return false;
915 }
916 }
917
918 return true;
919 }
920
921 override protected bool CanManipulateSpareWheel(string slotSelectionName)
922 {
923 return GetCarDoorsState("Hatchback_02_Trunk") != CarDoorState.DOORS_CLOSED;
924 }
925
926 override bool CanDisplayAttachmentCategory( string category_name )
927 {
928 //super
929 if ( !super.CanDisplayAttachmentCategory( category_name ) )
930 return false;
931 //
932
933 category_name.ToLower();
934 if ( category_name.Contains("engine") )
935 {
936 if ( GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED )
937 return false;
938 }
939
940 return true;
941 }
942
943 override bool CanDisplayCargo()
944 {
945 if ( !super.CanDisplayCargo() )
946 return false;
947
948 if ( GetCarDoorsState("Hatchback_02_Trunk") == CarDoorState.DOORS_CLOSED )
949 return false;
950
951 return true;
952 }
953
954 override int GetCarDoorsState(string slotType)
955 {
956 CarDoor carDoor;
957
958 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
959 if (!carDoor)
960 {
961 return CarDoorState.DOORS_MISSING;
962 }
963
964 switch (slotType)
965 {
966 case "Hatchback_02_Door_1_1":
967 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
968
969 case "Hatchback_02_Door_2_1":
970 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
971
972 case "Hatchback_02_Door_1_2":
973 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
974
975 case "Hatchback_02_Door_2_2":
976 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
977
978 case "Hatchback_02_Hood":
979 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
980
981 case "Hatchback_02_Trunk":
982 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
983 }
984
985 return CarDoorState.DOORS_MISSING;
986 }
987
988
989 override bool CrewCanGetThrough(int posIdx)
990 {
991 switch (posIdx)
992 {
993 case 0:
994 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
995 {
996 return false;
997 }
998
999 return true;
1000
1001 case 1:
1002 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1003 {
1004 return false;
1005 }
1006
1007 return true;
1008
1009 case 2:
1010 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1011 {
1012 return false;
1013 }
1014
1015 return true;
1016
1017 case 3:
1018 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1019 {
1020 return false;
1021 }
1022
1023 return true;
1024 }
1025
1026 return false;
1027 }
1028
1029 override string GetDoorSelectionNameFromSeatPos(int posIdx)
1030 {
1031 switch( posIdx )
1032 {
1033 case 0:
1034 return "doors_driver";
1035 break;
1036 case 1:
1037 return "doors_codriver";
1038 break;
1039 case 2:
1040 return "doors_cargo1";
1041 break;
1042 case 3:
1043 return "doors_cargo2";
1044 break;
1045 }
1046
1047 return super.GetDoorSelectionNameFromSeatPos(posIdx);
1048 }
1049
1050 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
1051 {
1052 switch( posIdx )
1053 {
1054 case 0:
1055 return "Hatchback_02_Door_1_1";
1056 break;
1057 case 1:
1058 return "Hatchback_02_Door_2_1";
1059 break;
1060 case 2:
1061 return "Hatchback_02_Door_1_2";
1062 break;
1063 case 3:
1064 return "Hatchback_02_Door_2_2";
1065 break;
1066 }
1067
1068 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1069 }
1070
1071 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1072 {
1073 switch (ctrl)
1074 {
1075 case CarSoundCtrl.DOORS:
1076 float newValue = 0;
1077 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
1078 {
1079 newValue += 0.25;
1080 }
1081
1082 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
1083 {
1084 newValue += 0.25;
1085 }
1086
1087 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
1088 {
1089 newValue += 0.25;
1090 }
1091
1092 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
1093 {
1094 newValue += 0.25;
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 IsVitalGlowPlug()
1126 {
1127 return false;
1128 }
1129
1130 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1131 {
1132 switch (currentSeat)
1133 {
1134 case 0:
1135 return nextSeat == 1;
1136 case 1:
1137 return nextSeat == 0;
1138 case 2:
1139 return nextSeat == 3;
1140 case 3:
1141 return nextSeat == 2;
1142 }
1143
1144 return false;
1145 }
1146
1147 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1148 {
1149 switch (pCurrentSeat)
1150 {
1151 case 0:
1152 return pDoorsSelection == "DoorsDriver";
1153 case 1:
1154 return pDoorsSelection == "DoorsCoDriver";
1155 case 2:
1156 return pDoorsSelection == "DoorsCargo1";
1157 case 3:
1158 return pDoorsSelection == "DoorsCargo2";
1159 }
1160
1161 return false;
1162 }
1163
1164 override void OnDebugSpawn()
1165 {
1167 SpawnAdditionalItems();
1168 FillUpCarFluids();
1169
1170 GameInventory inventory = GetInventory();
1171 inventory.CreateInInventory("Hatchback_02_Wheel");
1172 inventory.CreateInInventory("Hatchback_02_Wheel");
1173 inventory.CreateInInventory("Hatchback_02_Wheel");
1174 inventory.CreateInInventory("Hatchback_02_Wheel");
1175
1176 inventory.CreateInInventory("Hatchback_02_Door_1_1");
1177 inventory.CreateInInventory("Hatchback_02_Door_1_2");
1178 inventory.CreateInInventory("Hatchback_02_Door_2_1");
1179 inventory.CreateInInventory("Hatchback_02_Door_2_2");
1180 inventory.CreateInInventory("Hatchback_02_Hood");
1181 inventory.CreateInInventory("Hatchback_02_Trunk");
1182
1183 //-----IN CAR CARGO
1184 inventory.CreateInInventory("Hatchback_02_Wheel");
1185 inventory.CreateInInventory("Hatchback_02_Wheel");
1186 }
1187}
1188
1189class Hatchback_02_Black : Hatchback_02
1190{
1191 override void OnDebugSpawn()
1192 {
1194 SpawnAdditionalItems();
1195 FillUpCarFluids();
1196
1197 GameInventory inventory = GetInventory();
1198 inventory.CreateInInventory("Hatchback_02_Wheel");
1199 inventory.CreateInInventory("Hatchback_02_Wheel");
1200 inventory.CreateInInventory("Hatchback_02_Wheel");
1201 inventory.CreateInInventory("Hatchback_02_Wheel");
1202
1203 inventory.CreateInInventory("Hatchback_02_Door_1_1_Black");
1204 inventory.CreateInInventory("Hatchback_02_Door_1_2_Black");
1205 inventory.CreateInInventory("Hatchback_02_Door_2_1_Black");
1206 inventory.CreateInInventory("Hatchback_02_Door_2_2_Black");
1207 inventory.CreateInInventory("Hatchback_02_Hood_Black");
1208 inventory.CreateInInventory("Hatchback_02_Trunk_Black");
1209
1210 //-----IN CAR CARGO
1211 inventory.CreateInInventory("Hatchback_02_Wheel");
1212 inventory.CreateInInventory("Hatchback_02_Wheel");
1213 }
1214}
1215
1217{
1218 override void OnDebugSpawn()
1219 {
1221 SpawnAdditionalItems();
1222 FillUpCarFluids();
1223
1224 GameInventory inventory = GetInventory();
1225 inventory.CreateInInventory("Hatchback_02_Wheel");
1226 inventory.CreateInInventory("Hatchback_02_Wheel");
1227 inventory.CreateInInventory("Hatchback_02_Wheel");
1228 inventory.CreateInInventory("Hatchback_02_Wheel");
1229
1230 inventory.CreateInInventory("Hatchback_02_Door_1_1_Blue");
1231 inventory.CreateInInventory("Hatchback_02_Door_1_2_Blue");
1232 inventory.CreateInInventory("Hatchback_02_Door_2_1_Blue");
1233 inventory.CreateInInventory("Hatchback_02_Door_2_2_Blue");
1234 inventory.CreateInInventory("Hatchback_02_Hood_Blue");
1235 inventory.CreateInInventory("Hatchback_02_Trunk_Blue");
1236
1237 //-----IN CAR CARGO
1238 inventory.CreateInInventory("Hatchback_02_Wheel");
1239 inventory.CreateInInventory("Hatchback_02_Wheel");
1240 }
1241}
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
Hatchback_02LightProfileFront VehicleLightProfileFront Hatchback_02LightProfileRear()
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
void VehicleLightData(VehicleLightProfileBase profile)
Определения VehicleLightsComponent.c:21
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
void ~Hatchback_02()
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
override string GetAnimSourceFromSelection(string selection)
override int GetSeatAnimationType(int posIdx)
override float OnSound(CarSoundCtrl ctrl, float oldValue)
void Hatchback_02()
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
override void EOnPostSimulate(IEntity other, float timeSlice)
override void OnEngineStop()
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)
Hatchback_02 CarScript OnDebugSpawn()
override bool CanDisplayAttachmentCategory(string category_name)
static int SLOT_ID
Определения CarBattery.c:3
Определения CarBattery.c:2
Определения Truck_02.c:2
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
override void OnDebugSpawn()
override void OnDebugSpawn()
Определения 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
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.