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

◆ GetTransportCameraDistance()

override float OnDebugSpawn::GetTransportCameraDistance ( )
protected

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

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