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

◆ GetTransportCameraDistance()

override float OnDebugSpawn::GetTransportCameraDistance ( )
protected

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

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