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

◆ CanDisplayCargo()

override bool OnDebugSpawn::CanDisplayCargo ( )
protected

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

629{
633
634 void OffroadHatchback()
635 {
636 //m_dmgContactCoef = 0.075;
637
638 m_EngineStartOK = "offroad_engine_start_SoundSet";
639 m_EngineStartBattery = "offroad_engine_failed_start_battery_SoundSet";
640 m_EngineStartPlug = "offroad_engine_failed_start_sparkplugs_SoundSet";
641 m_EngineStartFuel = "offroad_engine_failed_start_fuel_SoundSet";
642 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
643
644 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
645 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
646 m_CarSeatShiftInSound = "Offroad_SeatShiftIn_SoundSet";
647 m_CarSeatShiftOutSound = "Offroad_SeatShiftOut_SoundSet";
648
649 m_CarHornShortSoundName = "Offroad_Horn_Short_SoundSet";
650 m_CarHornLongSoundName = "Offroad_Horn_SoundSet";
651
652 SetEnginePos("0 0.7 1.2");
653 }
654
655 override void EEInit()
656 {
657 super.EEInit();
658
659 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
660 {
662 m_UTSSettings.m_ManualUpdate = true;
664 m_UTSSettings.m_TemperatureCap = 0;
665 m_UTSSettings.m_RangeFull = 0.5;
666 m_UTSSettings.m_RangeMax = 2;
667
670 }
671 }
672
673 override void OnEngineStart()
674 {
675 super.OnEngineStart();
676
677 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
678 {
679 m_UTSource.SetDefferedActive(true, 20.0);
680 }
681 }
682
683 override void OnEngineStop()
684 {
685 super.OnEngineStop();
686
687 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
688 {
689 m_UTSource.SetDefferedActive(false, 10.0);
690 }
691 }
692
693 override void EOnPostSimulate(IEntity other, float timeSlice)
694 {
695 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
696 {
697 if (m_UTSource.IsActive())
698 {
700 }
701 }
702 }
703
704 override int GetAnimInstance()
705 {
706 return VehicleAnimInstances.HATCHBACK;
707 }
708
709 override float GetTransportCameraDistance()
710 {
711 return 3.5;
712 }
713
714 override int GetSeatAnimationType( int posIdx )
715 {
716 switch (posIdx)
717 {
718 case 0:
719 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
720 case 1:
721 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
722 case 2:
723 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
724 case 3:
725 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
726 }
727
728 return 0;
729
730 }
731
732
734 {
735 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackRearLight) );
736 }
737
739 {
740 return CarLightBase.Cast( ScriptedLightBase.CreateLight(OffroadHatchbackFrontLight) );
741 }
742
743 override bool CanReleaseAttachment(EntityAI attachment)
744 {
745 if (!super.CanReleaseAttachment(attachment))
746 {
747 return false;
748 }
749
750 if (EngineIsOn() || GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
751 {
752 string attType = attachment.GetType();
753 if (attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
754 {
755 return false;
756 }
757 }
758
759 return true;
760 }
761
762 override protected bool CanManipulateSpareWheel(string slotSelectionName)
763 {
764 return GetCarDoorsState("NivaHood") != CarDoorState.DOORS_CLOSED;
765 }
766
767 override bool CanDisplayAttachmentCategory( string category_name )
768 {
769 if (!super.CanDisplayAttachmentCategory(category_name))
770 {
771 return false;
772 }
773
774 category_name.ToLower();
775 if (category_name.Contains("engine"))
776 {
777 if (GetCarDoorsState("NivaHood") == CarDoorState.DOORS_CLOSED)
778 {
779 return false;
780 }
781 }
782
783 return true;
784 }
785
786 override bool CanDisplayCargo()
787 {
788 if (!super.CanDisplayCargo())
789 {
790 return false;
791 }
792
793 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
794 {
795 return false;
796 }
797
798 return true;
799 }
800
801 override int GetCarDoorsState(string slotType)
802 {
803 CarDoor carDoor;
804
805 Class.CastTo(carDoor, FindAttachmentBySlotName(slotType));
806 if (!carDoor)
807 {
808 return CarDoorState.DOORS_MISSING;
809 }
810
811 switch (slotType)
812 {
813 case "NivaDriverDoors":
814 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
815
816 case "NivaCoDriverDoors":
817 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
818
819 case "NivaHood":
820 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
821
822 case "NivaTrunk":
823 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
824 }
825
826 return CarDoorState.DOORS_MISSING;
827 }
828
829 override bool CrewCanGetThrough(int posIdx)
830 {
831 CarDoor carDoor;
832 switch (posIdx)
833 {
834 case 0:
835 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
836 return false;
837 else if (GetAnimationPhase("SeatDriver") > 0.5)
838 return false;
839
840 return true;
841
842 case 1:
843 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
844 return false;
845 else if (GetAnimationPhase("SeatCoDriver") > 0.5)
846 return false;
847
848 return true;
849
850 case 2:
851 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
852 return false;
853 else if (GetAnimationPhase("SeatDriver") <= 0.5)
854 return false;
855
856 return true;
857
858 case 3:
859 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
860 return false;
861 else if (GetAnimationPhase("SeatCoDriver") <= 0.5)
862 return false;
863
864 return true;
865 }
866
867 return false;
868 }
869
870 override string GetDoorSelectionNameFromSeatPos(int posIdx)
871 {
872 switch (posIdx)
873 {
874 case 0:
875 case 2:
876 return "doors_driver";
877 case 1:
878 case 3:
879 return "doors_codriver";
880 }
881
882 return super.GetDoorSelectionNameFromSeatPos(posIdx);
883 }
884
885 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
886 {
887 switch (posIdx)
888 {
889 case 0:
890 case 2:
891 return "NivaDriverDoors";
892 case 1:
893 case 3:
894 return "NivaCoDriverDoors";
895 }
896
897 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
898 }
899
900 // 0 full ambient and engine sound
901 // 1 zero ambient and engine sound
902 override float OnSound(CarSoundCtrl ctrl, float oldValue)
903 {
904 float tempCap = 0.0;
905
906 switch (ctrl)
907 {
908 case CarSoundCtrl.DOORS:
909 float newValue = 0;
910 if (GetCarDoorsState("NivaDriverDoors") == CarDoorState.DOORS_CLOSED)
911 {
912 newValue += 0.5;
913 }
914
915 if (GetCarDoorsState("NivaCoDriverDoors") == CarDoorState.DOORS_CLOSED)
916 {
917 newValue += 0.5;
918 }
919
920 if (GetCarDoorsState("NivaTrunk") == CarDoorState.DOORS_CLOSED)
921 {
922 newValue += 0.3;
923 }
924
925 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
926 {
927 newValue -= 0.6;
928 }
929
930 if (GetHealthLevel("WindowLR") == GameConstants.STATE_RUINED)
931 {
932 newValue -= 0.2;
933 }
934
935 if (GetHealthLevel("WindowRR") == GameConstants.STATE_RUINED)
936 {
937 newValue -= 0.2;
938 }
939
940 return Math.Clamp(newValue, 0, 1);
941 break;
942 }
943
944 return super.OnSound(ctrl, oldValue);
945 }
946
947 override string GetAnimSourceFromSelection( string selection )
948 {
949 switch (selection)
950 {
951 case "doors_driver":
952 return "DoorsDriver";
953 case "doors_codriver":
954 return "DoorsCoDriver";
955 case "doors_hood":
956 return "DoorsHood";
957 case "doors_trunk":
958 return "DoorsTrunk";
959 case "seatback_driver":
960 return "SeatDriver";
961 case "seatback_codriver":
962 return "SeatCoDriver";
963 }
964
965 return "";
966 }
967
968 override string GetDoorConditionPointFromSelection(string selection)
969 {
970 switch (selection)
971 {
972 case "seat_driver":
973 case "seatback_driver":
974 case "seat_cargo1":
975 return "seat_con_1_1";
976 case "seat_codriver":
977 case "seatback_codriver":
978 case "seat_cargo2":
979 return "seat_con_2_1";
980 }
981
982 return "";
983 }
984
985 override int GetCrewIndex(string selection)
986 {
987 switch (selection)
988 {
989 case "seatback_driver":
990 return 0;
991 case "seatback_codriver":
992 return 1;
993 }
994
995 return -1;
996 }
997
998 override bool IsVitalTruckBattery()
999 {
1000 return false;
1001 }
1002
1003 override bool IsVitalGlowPlug()
1004 {
1005 return false;
1006 }
1007
1008 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
1009 {
1010 if (nextSeat == 0 && GetAnimationPhase("SeatDriver") > 0.5)
1011 return false;
1012
1013 if (nextSeat == 1 && GetAnimationPhase("SeatCoDriver") > 0.5)
1014 return false;
1015
1016 switch (currentSeat)
1017 {
1018 case 0:
1019 return nextSeat == 1;
1020
1021 case 1:
1022 return nextSeat == 0;
1023
1024 case 2:
1025 return nextSeat == 3;
1026
1027 case 3:
1028 return nextSeat == 2;
1029 }
1030
1031 return false;
1032 }
1033
1034 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
1035 {
1036 switch (pCurrentSeat)
1037 {
1038 case 0:
1039 return pDoorsSelection == "DoorsDriver";
1040
1041 case 1:
1042 return pDoorsSelection == "DoorsCoDriver";
1043
1044 case 2:
1045 return pDoorsSelection == "DoorsDriver";
1046
1047 case 3:
1048 return pDoorsSelection == "DoorsCoDriver";
1049 }
1050
1051 return false;
1052 }
1053
1054 override int GetSeatIndexFromDoor( string pDoorSelection )
1055 {
1056 switch (pDoorSelection)
1057 {
1058 case "DoorsDriver":
1059 return 0;
1060 case "DoorsCoDriver":
1061 return 1;
1062 }
1063
1064 return -1;
1065 }
1066
1067 override void SetActions()
1068 {
1069 super.SetActions();
1070
1072 }
1073
1074 override void OnDebugSpawn()
1075 {
1079
1080 GetInventory().CreateInInventory("HatchbackWheel");
1081 GetInventory().CreateInInventory("HatchbackWheel");
1082 GetInventory().CreateInInventory("HatchbackWheel" );
1083 GetInventory().CreateInInventory("HatchbackWheel");
1084
1085 GetInventory().CreateInInventory("HatchbackDoors_Driver");
1086 GetInventory().CreateInInventory("HatchbackDoors_CoDriver");
1087 GetInventory().CreateInInventory("HatchbackHood");
1088 GetInventory().CreateInInventory("HatchbackTrunk");
1089
1090 //-----IN CAR CARGO
1091 GetInventory().CreateInInventory("HatchbackWheel");
1092 GetInventory().CreateInInventory("HatchbackWheel");
1093 }
1094}
1095
1096class OffroadHatchback_White extends OffroadHatchback
1097{
1098 override void OnDebugSpawn()
1099 {
1103
1104 GetInventory().CreateInInventory("HatchbackWheel");
1105 GetInventory().CreateInInventory("HatchbackWheel");
1106 GetInventory().CreateInInventory("HatchbackWheel");
1107 GetInventory().CreateInInventory("HatchbackWheel");
1108
1109 GetInventory().CreateInInventory("HatchbackDoors_Driver_White");
1110 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_White");
1111 GetInventory().CreateInInventory("HatchbackHood_White");
1112 GetInventory().CreateInInventory("HatchbackTrunk_White");
1113
1114 //-----IN CAR CARGO
1115 GetInventory().CreateInInventory("HatchbackWheel");
1116 GetInventory().CreateInInventory("HatchbackWheel");
1117 }
1118}
1119
1120class OffroadHatchback_Blue extends OffroadHatchback
1121{
1122 override void OnDebugSpawn()
1123 {
1127
1128 GetInventory().CreateInInventory("HatchbackWheel");
1129 GetInventory().CreateInInventory("HatchbackWheel");
1130 GetInventory().CreateInInventory("HatchbackWheel");
1131 GetInventory().CreateInInventory("HatchbackWheel");
1132
1133 GetInventory().CreateInInventory("HatchbackDoors_Driver_Blue");
1134 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_Blue");
1135 GetInventory().CreateInInventory("HatchbackHood_Blue");
1136 GetInventory().CreateInInventory("HatchbackTrunk_Blue");
1137
1138 //-----IN CAR CARGO
1139 GetInventory().CreateInInventory("HatchbackWheel");
1140 GetInventory().CreateInInventory("HatchbackWheel");
1141 }
1142}
void AddAction(typename actionName)
Определения AdvancedCommunication.c:220
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
void SpawnUniversalParts()
Определения CarScript.c:2801
string m_CarSeatShiftInSound
Определения CarScript.c:215
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_CarSeatShiftOutSound
Определения CarScript.c:216
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
override void SetActions()
Определения OffroadHatchback.c:909
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения OffroadHatchback.c:850
override string GetAnimSourceFromSelection(string selection)
Определения OffroadHatchback.c:789
override int GetSeatAnimationType(int posIdx)
Определения OffroadHatchback.c:556
override string GetDoorConditionPointFromSelection(string selection)
Определения OffroadHatchback.c:810
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения OffroadHatchback.c:744
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:727
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения OffroadHatchback.c:535
override void OnEngineStop()
Определения OffroadHatchback.c:525
override float GetTransportCameraDistance()
Определения OffroadHatchback.c:551
override void EEInit()
Определения OffroadHatchback.c:497
override bool CanReleaseAttachment(EntityAI attachment)
Определения OffroadHatchback.c:585
override bool CanDisplayCargo()
Определения OffroadHatchback.c:628
override void OnEngineStart()
Определения OffroadHatchback.c:515
override CarLightBase CreateFrontLight()
Определения OffroadHatchback.c:580
override int GetAnimInstance()
Определения OffroadHatchback.c:546
override bool CrewCanGetThrough(int posIdx)
Определения OffroadHatchback.c:671
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения OffroadHatchback.c:876
bool CanManipulateSpareWheel(string slotSelectionName)
Определения OffroadHatchback.c:604
override bool IsVitalGlowPlug()
Определения OffroadHatchback.c:845
override CarRearLightBase CreateRearLight()
Определения OffroadHatchback.c:575
class OffroadHatchback extends CarScript OnDebugSpawn()
Определения OffroadHatchback.c:471
override int GetSeatIndexFromDoor(string pDoorSelection)
Определения OffroadHatchback.c:896
void OffroadHatchback()
Определения OffroadHatchback.c:476
override bool IsVitalTruckBattery()
Определения OffroadHatchback.c:840
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения OffroadHatchback.c:712
override int GetCarDoorsState(string slotType)
Определения OffroadHatchback.c:643
override int GetCrewIndex(string selection)
Определения OffroadHatchback.c:827
override bool CanDisplayAttachmentCategory(string category_name)
Определения OffroadHatchback.c:609
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
Определения EnEntity.c:165
Определения EnMath.c:7
override void OnDebugSpawn()
Определения OffroadHatchback.c:495
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
const int STATE_RUINED
Определения constants.c:846
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.