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

◆ GetTransportCameraDistance()

override float OnDebugSpawn::GetTransportCameraDistance ( )
protected

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

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