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

◆ GetDoorInvSlotNameFromSeatPos()

override string OnDebugSpawn::GetDoorInvSlotNameFromSeatPos ( int posIdx)
protected

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

730{
734
735 void OffroadHatchback()
736 {
737 //m_dmgContactCoef = 0.075;
738
739 m_EngineStartOK = "offroad_engine_start_SoundSet";
740 m_EngineStartBattery = "offroad_engine_failed_start_battery_SoundSet";
741 m_EngineStartPlug = "offroad_engine_failed_start_sparkplugs_SoundSet";
742 m_EngineStartFuel = "offroad_engine_failed_start_fuel_SoundSet";
743 m_EngineStop = "offroad_engine_stop_SoundSet";
744 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
745
746 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
747 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
748 m_CarSeatShiftInSound = "Offroad_SeatShiftIn_SoundSet";
749 m_CarSeatShiftOutSound = "Offroad_SeatShiftOut_SoundSet";
750
751 m_CarHornShortSoundName = "Offroad_Horn_Short_SoundSet";
752 m_CarHornLongSoundName = "Offroad_Horn_SoundSet";
753
754 SetEnginePos("0 0.7 1.2");
755 }
756
757 override void EEInit()
758 {
759 super.EEInit();
760
761 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
762 {
764 m_UTSSettings.m_ManualUpdate = true;
766 m_UTSSettings.m_TemperatureCap = 0;
767 m_UTSSettings.m_RangeFull = 0.5;
768 m_UTSSettings.m_RangeMax = 2;
769
772 }
773 }
774
775 override void OnEngineStart()
776 {
777 super.OnEngineStart();
778
779 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
780 {
781 m_UTSource.SetDefferedActive(true, 20.0);
782 }
783 }
784
785 override void OnEngineStop()
786 {
787 super.OnEngineStop();
788
789 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
790 {
791 m_UTSource.SetDefferedActive(false, 10.0);
792 }
793 }
794
795 override void EOnPostSimulate(IEntity other, float timeSlice)
796 {
797 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
798 {
799 if (m_UTSource.IsActive())
800 {
802 }
803 }
804 }
805
806 override int GetAnimInstance()
807 {
808 return VehicleAnimInstances.HATCHBACK;
809 }
810
811 override float GetTransportCameraDistance()
812 {
813 return 3.5;
814 }
815
816 override int GetSeatAnimationType( int posIdx )
817 {
818 switch (posIdx)
819 {
820 case 0:
821 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
822 case 1:
823 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
824 case 2:
825 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
826 case 3:
827 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
828 }
829
830 return 0;
831
832 }
833
834
836 {
837 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackRearLight) );
838 }
839
841 {
842 return CarLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackFrontLight) );
843 }
844
845 override bool CanReleaseAttachment(EntityAI attachment)
846 {
847 if (!super.CanReleaseAttachment(attachment))
848 {
849 return false;
850 }
851
852 if (EngineIsOn() || GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
853 {
854 string attType = attachment.GetType();
855 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
856 {
857 return false;
858 }
859 }
860
861 return true;
862 }
863
864 override protected bool CanManipulateSpareWheel(string slotSelectionName)
865 {
866 return GetCarDoorsState("NivaHood") != CarDoorState.DOORS_CLOSED;
867 }
868
869 override bool CanDisplayAttachmentCategory( string category_name )
870 {
871 if (!super.CanDisplayAttachmentCategory(category_name))
872 {
873 return false;
874 }
875
876 category_name.ToLower();
877 if (category_name.Contains("engine"))
878 {
879 if (GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
880 {
881 return false;
882 }
883 }
884
885 return true;
886 }
887
888 override bool CanDisplayCargo()
889 {
890 if (!super.CanDisplayCargo())
891 {
892 return false;
893 }
894
895 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
896 {
897 return false;
898 }
899
900 return true;
901 }
902
903 override int GetCarDoorsState(string slotType)
904 {
905 CarDoor carDoor;
906
907 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
908 if (!carDoor)
909 {
910 return CarDoorState.DOORS_MISSING;
911 }
912
913 switch (slotType)
914 {
915 case "NivaDriverDoors":
916 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
917
918 case "NivaCoDriverDoors":
919 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
920
921 case "NivaHood":
922 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
923
924 case "NivaTrunk":
925 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
926 }
927
928 return CarDoorState.DOORS_MISSING;
929 }
930
931 override bool CrewCanGetThrough(int posIdx)
932 {
933 CarDoor carDoor;
934 switch (posIdx)
935 {
936 case 0:
937 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
938 return false;
939 else if (GetAnimationPhase("SeatDriver") > 0.5)
940 return false;
941
942 return true;
943
944 case 1:
945 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
946 return false;
947 else if (GetAnimationPhase("SeatCoDriver") > 0.5)
948 return false;
949
950 return true;
951
952 case 2:
953 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
954 return false;
955 else if (GetAnimationPhase("SeatDriver") <= 0.5)
956 return false;
957
958 return true;
959
960 case 3:
961 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
962 return false;
963 else if (GetAnimationPhase("SeatCoDriver") <= 0.5)
964 return false;
965
966 return true;
967 }
968
969 return false;
970 }
971
972 override string GetDoorSelectionNameFromSeatPos(int posIdx)
973 {
974 switch (posIdx)
975 {
976 case 0:
977 case 2:
978 return "doors_driver";
979 case 1:
980 case 3:
981 return "doors_codriver";
982 }
983
984 return super.GetDoorSelectionNameFromSeatPos(posIdx);
985 }
986
987 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
988 {
989 switch (posIdx)
990 {
991 case 0:
992 case 2:
993 return "NivaDriverDoors";
994 case 1:
995 case 3:
996 return "NivaCoDriverDoors";
997 }
998
999 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
1000 }
1001
1002 // 0 full ambient and engine sound
1003 // 1 zero ambient and engine sound
1004 override float OnSound(CarSoundCtrl ctrl, float oldValue)
1005 {
1006 float tempCap = 0.0;
1007
1008 switch (ctrl)
1009 {
1010 case CarSoundCtrl.DOORS:
1011 float newValue = 0;
1012 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
1013 {
1014 newValue += 0.5;
1015 }
1016
1017 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
1018 {
1019 newValue += 0.5;
1020 }
1021
1022 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
1023 {
1024 newValue += 0.3;
1025 }
1026
1027 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
1028 {
1029 newValue -= 0.6;
1030 }
1031
1032 if (GetHealthLevel("WindowLR") == GameConstants.STATE_RUINED)
1033 {
1034 newValue -= 0.2;
1035 }
1036
1037 if (GetHealthLevel("WindowRR") == GameConstants.STATE_RUINED)
1038 {
1039 newValue -= 0.2;
1040 }
1041
1042 return Math.Clamp(newValue, 0, 1);
1043 break;
1044 }
1045
1046 return super.OnSound(ctrl, oldValue);
1047 }
1048
1049 override string GetAnimSourceFromSelection( string selection )
1050 {
1051 switch (selection)
1052 {
1053 case "doors_driver":
1054 return "DoorsDriver";
1055 case "doors_codriver":
1056 return "DoorsCoDriver";
1057 case "doors_hood":
1058 return "DoorsHood";
1059 case "doors_trunk":
1060 return "DoorsTrunk";
1061 case "seatback_driver":
1062 return "SeatDriver";
1063 case "seatback_codriver":
1064 return "SeatCoDriver";
1065 }
1066
1067 return "";
1068 }
1069
1070 override string GetDoorConditionPointFromSelection(string selection)
1071 {
1072 switch (selection)
1073 {
1074 case "seat_driver":
1075 case "seatback_driver":
1076 case "seat_cargo1":
1077 return "seat_con_1_1";
1078 case "seat_codriver":
1079 case "seatback_codriver":
1080 case "seat_cargo2":
1081 return "seat_con_2_1";
1082 }
1083
1084 return "";
1085 }
1086
1087 override int GetCrewIndex(string selection)
1088 {
1089 switch (selection)
1090 {
1091 case "seatback_driver":
1092 return 0;
1093 case "seatback_codriver":
1094 return 1;
1095 }
1096
1097 return -1;
1098 }
1099
1100 override bool IsVitalTruckBattery()
1101 {
1102 return false;
1103 }
1104
1105 override bool IsVitalGlowPlug()
1106 {
1107 return false;
1108 }
1109
1110 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1111 {
1112 if (nextSeat == 0 && GetAnimationPhase("SeatDriver") > 0.5)
1113 return false;
1114
1115 if (nextSeat == 1 && GetAnimationPhase("SeatCoDriver") > 0.5)
1116 return false;
1117
1118 switch (currentSeat)
1119 {
1120 case 0:
1121 return nextSeat == 1;
1122
1123 case 1:
1124 return nextSeat == 0;
1125
1126 case 2:
1127 return nextSeat == 3;
1128
1129 case 3:
1130 return nextSeat == 2;
1131 }
1132
1133 return false;
1134 }
1135
1136 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
1137 {
1138 switch (pCurrentSeat)
1139 {
1140 case 0:
1141 return pDoorsSelection == "DoorsDriver";
1142
1143 case 1:
1144 return pDoorsSelection == "DoorsCoDriver";
1145
1146 case 2:
1147 return pDoorsSelection == "DoorsDriver";
1148
1149 case 3:
1150 return pDoorsSelection == "DoorsCoDriver";
1151 }
1152
1153 return false;
1154 }
1155
1156 override int GetSeatIndexFromDoor( string pDoorSelection )
1157 {
1158 switch (pDoorSelection)
1159 {
1160 case "DoorsDriver":
1161 return 0;
1162 case "DoorsCoDriver":
1163 return 1;
1164 }
1165
1166 return -1;
1167 }
1168
1169 override void SetActions()
1170 {
1171 super.SetActions();
1172
1174 }
1175
1176 override void OnDebugSpawn()
1177 {
1178 SpawnUniversalParts();
1179 SpawnAdditionalItems();
1180 FillUpCarFluids();
1181
1182 GetInventory().CreateInInventory("HatchbackWheel");
1183 GetInventory().CreateInInventory("HatchbackWheel");
1184 GetInventory().CreateInInventory("HatchbackWheel" );
1185 GetInventory().CreateInInventory("HatchbackWheel");
1186
1187 GetInventory().CreateInInventory("HatchbackDoors_Driver");
1188 GetInventory().CreateInInventory("HatchbackDoors_CoDriver");
1189 GetInventory().CreateInInventory("HatchbackHood");
1190 GetInventory().CreateInInventory("HatchbackTrunk");
1191
1192 //-----IN CAR CARGO
1193 GetInventory().CreateInInventory("HatchbackWheel");
1194 GetInventory().CreateInInventory("HatchbackWheel");
1195 }
1196}
1197
1198class OffroadHatchback_White extends OffroadHatchback
1199{
1200 override void OnDebugSpawn()
1201 {
1202 SpawnUniversalParts();
1203 SpawnAdditionalItems();
1204 FillUpCarFluids();
1205
1206 GetInventory().CreateInInventory("HatchbackWheel");
1207 GetInventory().CreateInInventory("HatchbackWheel");
1208 GetInventory().CreateInInventory("HatchbackWheel");
1209 GetInventory().CreateInInventory("HatchbackWheel");
1210
1211 GetInventory().CreateInInventory("HatchbackDoors_Driver_White");
1212 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_White");
1213 GetInventory().CreateInInventory("HatchbackHood_White");
1214 GetInventory().CreateInInventory("HatchbackTrunk_White");
1215
1216 //-----IN CAR CARGO
1217 GetInventory().CreateInInventory("HatchbackWheel");
1218 GetInventory().CreateInInventory("HatchbackWheel");
1219 }
1220}
1221
1222class OffroadHatchback_Blue extends OffroadHatchback
1223{
1224 override void OnDebugSpawn()
1225 {
1226 SpawnUniversalParts();
1227 SpawnAdditionalItems();
1228 FillUpCarFluids();
1229
1230 GetInventory().CreateInInventory("HatchbackWheel");
1231 GetInventory().CreateInInventory("HatchbackWheel");
1232 GetInventory().CreateInInventory("HatchbackWheel");
1233 GetInventory().CreateInInventory("HatchbackWheel");
1234
1235 GetInventory().CreateInInventory("HatchbackDoors_Driver_Blue");
1236 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_Blue");
1237 GetInventory().CreateInInventory("HatchbackHood_Blue");
1238 GetInventory().CreateInInventory("HatchbackTrunk_Blue");
1239
1240 //-----IN CAR CARGO
1241 GetInventory().CreateInInventory("HatchbackWheel");
1242 GetInventory().CreateInInventory("HatchbackWheel");
1243 }
1244}
void AddAction(typename actionName)
Определения AdvancedCommunication.c:220
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
CarDoorState
Определения CarScript.c:2
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:433
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
override void SetActions()
Определения OffroadHatchback.c:911
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения OffroadHatchback.c:852
override string GetAnimSourceFromSelection(string selection)
Определения OffroadHatchback.c:791
override int GetSeatAnimationType(int posIdx)
Определения OffroadHatchback.c:558
override string GetDoorConditionPointFromSelection(string selection)
Определения OffroadHatchback.c:812
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения OffroadHatchback.c:746
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:729
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения OffroadHatchback.c:537
override void OnEngineStop()
Определения OffroadHatchback.c:527
override float GetTransportCameraDistance()
Определения OffroadHatchback.c:553
override void EEInit()
Определения OffroadHatchback.c:499
override bool CanReleaseAttachment(EntityAI attachment)
Определения OffroadHatchback.c:587
override bool CanDisplayCargo()
Определения OffroadHatchback.c:630
override void OnEngineStart()
Определения OffroadHatchback.c:517
override CarLightBase CreateFrontLight()
Определения OffroadHatchback.c:582
override int GetAnimInstance()
Определения OffroadHatchback.c:548
override bool CrewCanGetThrough(int posIdx)
Определения OffroadHatchback.c:673
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения OffroadHatchback.c:878
bool CanManipulateSpareWheel(string slotSelectionName)
Определения OffroadHatchback.c:606
override bool IsVitalGlowPlug()
Определения OffroadHatchback.c:847
override CarRearLightBase CreateRearLight()
Определения OffroadHatchback.c:577
class OffroadHatchback extends CarScript OnDebugSpawn()
Определения OffroadHatchback.c:472
override int GetSeatIndexFromDoor(string pDoorSelection)
Определения OffroadHatchback.c:898
void OffroadHatchback()
Определения OffroadHatchback.c:477
override bool IsVitalTruckBattery()
Определения OffroadHatchback.c:842
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:714
override int GetCarDoorsState(string slotType)
Определения OffroadHatchback.c:645
override int GetCrewIndex(string selection)
Определения OffroadHatchback.c:829
override bool CanDisplayAttachmentCategory(string category_name)
Определения OffroadHatchback.c:611
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения CarRearLightBase.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения EnEntity.c:165
Определения EnMath.c:7
override void OnDebugSpawn()
Определения OffroadHatchback.c:496
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.