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

◆ GetDoorInvSlotNameFromSeatPos()

override string OnDebugSpawn::GetDoorInvSlotNameFromSeatPos ( int posIdx)
protected

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

659{
663
664 void Hatchback_02()
665 {
666 //m_dmgContactCoef = 0.070;
667
668 m_EngineStartOK = "Hatchback_02_engine_start_SoundSet";
669 m_EngineStartBattery = "Hatchback_02_engine_failed_start_battery_SoundSet";
670 m_EngineStartPlug = "Hatchback_02_engine_failed_start_sparkplugs_SoundSet";
671 m_EngineStartFuel = "Hatchback_02_engine_failed_start_fuel_SoundSet";
672 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
673
674 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
675 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
676
677 m_CarHornShortSoundName = "Hatchback_02_Horn_Short_SoundSet";
678 m_CarHornLongSoundName = "Hatchback_02_Horn_SoundSet";
679
680 SetEnginePos("0 0.7 1.4");
681 }
682
683 override void EEInit()
684 {
685 super.EEInit();
686
687 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
688 {
690 m_UTSSettings.m_ManualUpdate = true;
692 m_UTSSettings.m_TemperatureCap = 0;
693 m_UTSSettings.m_RangeFull = 0.5;
694 m_UTSSettings.m_RangeMax = 2;
695
698 }
699 }
700
701 override void OnEngineStart()
702 {
703 super.OnEngineStart();
704
705 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
706 {
707 m_UTSource.SetDefferedActive(true, 20.0);
708 }
709 }
710
711 override void OnEngineStop()
712 {
713 super.OnEngineStop();
714
715 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
716 {
717 m_UTSource.SetDefferedActive(false, 10.0);
718 }
719 }
720
721 override void EOnPostSimulate(IEntity other, float timeSlice)
722 {
723 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
724 {
725 if (m_UTSource.IsActive())
726 {
728 }
729 }
730 }
731
732 override int GetAnimInstance()
733 {
734 return VehicleAnimInstances.GOLF;
735 }
736
737 override int GetSeatAnimationType(int posIdx)
738 {
739 switch (posIdx)
740 {
741 case 0:
742 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
743 case 1:
744 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
745 case 2:
746 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
747 case 3:
748 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
749 }
750
751 return 0;
752 }
753
754 // Override for car-specific light type
756 {
757 return CarRearLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02RearLight));
758 }
759
760 // Override for car-specific light type
762 {
763 return CarLightBase.Cast(ScriptedLightBase.CreateLight(Hatchback_02FrontLight));
764 }
765
766 override bool CanReleaseAttachment(EntityAI attachment)
767 {
768 if (!super.CanReleaseAttachment(attachment))
769 {
770 return false;
771 }
772
773 if (EngineIsOn() || GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED)
774 {
775 string attType = attachment.GetType();
776 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
777 {
778 return false;
779 }
780 }
781
782 return true;
783 }
784
785 override protected bool CanManipulateSpareWheel(string slotSelectionName)
786 {
787 return GetCarDoorsState("Hatchback_02_Trunk") != CarDoorState.DOORS_CLOSED;
788 }
789
790 override bool CanDisplayAttachmentCategory( string category_name )
791 {
792 //super
793 if ( !super.CanDisplayAttachmentCategory( category_name ) )
794 return false;
795 //
796
797 category_name.ToLower();
798 if ( category_name.Contains("engine") )
799 {
800 if ( GetCarDoorsState("Hatchback_02_Hood") == CarDoorState.DOORS_CLOSED )
801 return false;
802 }
803
804 return true;
805 }
806
807 override bool CanDisplayCargo()
808 {
809 if ( !super.CanDisplayCargo() )
810 return false;
811
812 if ( GetCarDoorsState("Hatchback_02_Trunk") == CarDoorState.DOORS_CLOSED )
813 return false;
814
815 return true;
816 }
817
818 override int GetCarDoorsState(string slotType)
819 {
820 CarDoor carDoor;
821
822 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
823 if (!carDoor)
824 {
825 return CarDoorState.DOORS_MISSING;
826 }
827
828 switch (slotType)
829 {
830 case "Hatchback_02_Door_1_1":
831 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
832
833 case "Hatchback_02_Door_2_1":
834 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
835
836 case "Hatchback_02_Door_1_2":
837 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
838
839 case "Hatchback_02_Door_2_2":
840 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
841
842 case "Hatchback_02_Hood":
843 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
844
845 case "Hatchback_02_Trunk":
846 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
847 }
848
849 return CarDoorState.DOORS_MISSING;
850 }
851
852
853 override bool CrewCanGetThrough(int posIdx)
854 {
855 switch (posIdx)
856 {
857 case 0:
858 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
859 {
860 return false;
861 }
862
863 return true;
864
865 case 1:
866 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
867 {
868 return false;
869 }
870
871 return true;
872
873 case 2:
874 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
875 {
876 return false;
877 }
878
879 return true;
880
881 case 3:
882 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
883 {
884 return false;
885 }
886
887 return true;
888 }
889
890 return false;
891 }
892
893 override string GetDoorSelectionNameFromSeatPos(int posIdx)
894 {
895 switch( posIdx )
896 {
897 case 0:
898 return "doors_driver";
899 break;
900 case 1:
901 return "doors_codriver";
902 break;
903 case 2:
904 return "doors_cargo1";
905 break;
906 case 3:
907 return "doors_cargo2";
908 break;
909 }
910
911 return super.GetDoorSelectionNameFromSeatPos(posIdx);
912 }
913
914 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
915 {
916 switch( posIdx )
917 {
918 case 0:
919 return "Hatchback_02_Door_1_1";
920 break;
921 case 1:
922 return "Hatchback_02_Door_2_1";
923 break;
924 case 2:
925 return "Hatchback_02_Door_1_2";
926 break;
927 case 3:
928 return "Hatchback_02_Door_2_2";
929 break;
930 }
931
932 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
933 }
934
935 override float OnSound(CarSoundCtrl ctrl, float oldValue)
936 {
937 switch (ctrl)
938 {
939 case CarSoundCtrl.DOORS:
940 float newValue = 0;
941 if (GetCarDoorsState("Hatchback_02_Door_1_1") == CarDoorState.DOORS_CLOSED)
942 {
943 newValue += 0.25;
944 }
945
946 if (GetCarDoorsState("Hatchback_02_Door_2_1") == CarDoorState.DOORS_CLOSED)
947 {
948 newValue += 0.25;
949 }
950
951 if (GetCarDoorsState("Hatchback_02_Door_1_2") == CarDoorState.DOORS_CLOSED)
952 {
953 newValue += 0.25;
954 }
955
956 if (GetCarDoorsState("Hatchback_02_Door_2_2") == CarDoorState.DOORS_CLOSED)
957 {
958 newValue += 0.25;
959 }
960
961 return Math.Clamp(newValue, 0, 1);
962 break;
963 }
964
965 return super.OnSound(ctrl, oldValue);
966 }
967
968 override string GetAnimSourceFromSelection( string selection )
969 {
970 switch( selection )
971 {
972 case "doors_driver":
973 return "DoorsDriver";
974 case "doors_codriver":
975 return "DoorsCoDriver";
976 case "doors_cargo1":
977 return "DoorsCargo1";
978 case "doors_cargo2":
979 return "DoorsCargo2";
980 case "doors_hood":
981 return "DoorsHood";
982 case "doors_trunk":
983 return "DoorsTrunk";
984 }
985
986 return "";
987 }
988
989
990 override bool IsVitalTruckBattery()
991 {
992 return false;
993 }
994
995 override bool IsVitalGlowPlug()
996 {
997 return false;
998 }
999
1000 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1001 {
1002 switch (currentSeat)
1003 {
1004 case 0:
1005 return nextSeat == 1;
1006 case 1:
1007 return nextSeat == 0;
1008 case 2:
1009 return nextSeat == 3;
1010 case 3:
1011 return nextSeat == 2;
1012 }
1013
1014 return false;
1015 }
1016
1017 override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
1018 {
1019 switch (pCurrentSeat)
1020 {
1021 case 0:
1022 return pDoorsSelection == "DoorsDriver";
1023 case 1:
1024 return pDoorsSelection == "DoorsCoDriver";
1025 case 2:
1026 return pDoorsSelection == "DoorsCargo1";
1027 case 3:
1028 return pDoorsSelection == "DoorsCargo2";
1029 }
1030
1031 return false;
1032 }
1033
1034 override void OnDebugSpawn()
1035 {
1039
1040 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1041 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1042 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1043 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1044
1045 GetInventory().CreateInInventory("Hatchback_02_Door_1_1");
1046 GetInventory().CreateInInventory("Hatchback_02_Door_1_2");
1047 GetInventory().CreateInInventory("Hatchback_02_Door_2_1");
1048 GetInventory().CreateInInventory("Hatchback_02_Door_2_2");
1049 GetInventory().CreateInInventory("Hatchback_02_Hood");
1050 GetInventory().CreateInInventory("Hatchback_02_Trunk");
1051
1052 //-----IN CAR CARGO
1053 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1054 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1055 }
1056}
1057
1058class Hatchback_02_Black extends Hatchback_02
1059{
1060 override void OnDebugSpawn()
1061 {
1065
1066 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1067 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1068 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1069 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1070
1071 GetInventory().CreateInInventory("Hatchback_02_Door_1_1_Black");
1072 GetInventory().CreateInInventory("Hatchback_02_Door_1_2_Black");
1073 GetInventory().CreateInInventory("Hatchback_02_Door_2_1_Black");
1074 GetInventory().CreateInInventory("Hatchback_02_Door_2_2_Black");
1075 GetInventory().CreateInInventory("Hatchback_02_Hood_Black");
1076 GetInventory().CreateInInventory("Hatchback_02_Trunk_Black");
1077
1078 //-----IN CAR CARGO
1079 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1080 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1081 }
1082};
1083
1084class Hatchback_02_Blue extends Hatchback_02
1085{
1086 override void OnDebugSpawn()
1087 {
1091
1092 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1093 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1094 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1095 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1096
1097 GetInventory().CreateInInventory("Hatchback_02_Door_1_1_Blue");
1098 GetInventory().CreateInInventory("Hatchback_02_Door_1_2_Blue");
1099 GetInventory().CreateInInventory("Hatchback_02_Door_2_1_Blue");
1100 GetInventory().CreateInInventory("Hatchback_02_Door_2_2_Blue");
1101 GetInventory().CreateInInventory("Hatchback_02_Hood_Blue");
1102 GetInventory().CreateInInventory("Hatchback_02_Trunk_Blue");
1103
1104 //-----IN CAR CARGO
1105 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1106 GetInventory().CreateInInventory("Hatchback_02_Wheel");
1107 }
1108}
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
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:432
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
class Hatchback_02_Blue extends Hatchback_02 OnDebugSpawn
Определения Hatchback_02.c:403
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения Hatchback_02.c:744
override string GetAnimSourceFromSelection(string selection)
Определения Hatchback_02.c:712
override int GetSeatAnimationType(int posIdx)
Определения Hatchback_02.c:481
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения Hatchback_02.c:679
void Hatchback_02()
Определения Hatchback_02.c:408
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:658
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения Hatchback_02.c:465
override void OnEngineStop()
Определения Hatchback_02.c:455
override void EEInit()
Определения Hatchback_02.c:427
override bool CanReleaseAttachment(EntityAI attachment)
Определения Hatchback_02.c:510
override bool CanDisplayCargo()
Определения Hatchback_02.c:551
override void OnEngineStart()
Определения Hatchback_02.c:445
override CarLightBase CreateFrontLight()
Определения Hatchback_02.c:505
override int GetAnimInstance()
Определения Hatchback_02.c:476
override bool CrewCanGetThrough(int posIdx)
Определения Hatchback_02.c:597
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения Hatchback_02.c:761
bool CanManipulateSpareWheel(string slotSelectionName)
Определения Hatchback_02.c:529
override bool IsVitalGlowPlug()
Определения Hatchback_02.c:739
override CarRearLightBase CreateRearLight()
Определения Hatchback_02.c:499
override bool IsVitalTruckBattery()
Определения Hatchback_02.c:734
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения Hatchback_02.c:637
override int GetCarDoorsState(string slotType)
Определения Hatchback_02.c:562
override bool CanDisplayAttachmentCategory(string category_name)
Определения Hatchback_02.c:534
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения InventoryItem.c:496
Определения CarRearLightBase.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения Building.c:6
Определения constants.c:659
override void OnDebugSpawn()
Определения Hatchback_02.c:429
Определения Hatchback_02.c:428
Определения 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
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.