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

◆ GetDoorSelectionNameFromSeatPos()

override string OnDebugSpawn::GetDoorSelectionNameFromSeatPos ( int posIdx)
protected

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

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