585{
589
591 {
592
593
599
604
607
608 SetEnginePos("0 0.7 1.2");
609 }
610
612 {
614
616 {
624
627 }
628 }
629
631 {
632 super.OnEngineStart();
633
636 }
637
639 {
640 super.OnEngineStop();
641
644 }
645
647 {
649 {
652 }
653 }
654
656 {
658 }
659
661 {
662 return 3.5;
663 }
664
666 {
668 {
669 case 0:
671 case 1:
673 case 2:
675 case 3:
677 }
678
679 return 0;
680
681 }
682
683
685 {
687 }
688
690 {
692 }
693
695 {
697 return false;
698
700 {
703 return false;
704 }
705
706 return true;
707 }
708
710 {
712 }
713
715 {
717 return false;
718
721 {
723 return false;
724 }
725
726 return true;
727 }
728
730 {
731 if (!
super.CanDisplayCargo())
732 return false;
733
735 return false;
736
737 return true;
738 }
739
741 {
743
747
749 {
750 case "NivaDriverDoors":
752
753 case "NivaCoDriverDoors":
755
756 case "NivaHood":
758
759 case "NivaTrunk":
761 }
762
764 }
765
767 {
770 {
771 case 0:
773 return false;
774 else if (GetAnimationPhase("SeatDriver") > 0.5)
775 return false;
776
777 return true;
778
779 case 1:
781 return false;
782 else if (GetAnimationPhase("SeatCoDriver") > 0.5)
783 return false;
784
785 return true;
786
787 case 2:
789 return false;
790 else if (GetAnimationPhase("SeatDriver") <= 0.5)
791 return false;
792
793 return true;
794
795 case 3:
797 return false;
798 else if (GetAnimationPhase("SeatCoDriver") <= 0.5)
799 return false;
800
801 return true;
802 }
803
804 return false;
805 }
806
808 {
810 {
811 case 0:
812 case 2:
813 return "doors_driver";
814 case 1:
815 case 3:
816 return "doors_codriver";
817 }
818
819 return super.GetDoorSelectionNameFromSeatPos(
posIdx);
820 }
821
823 {
825 {
826 case 0:
827 case 2:
828 return "NivaDriverDoors";
829 case 1:
830 case 3:
831 return "NivaCoDriverDoors";
832 }
833
834 return super.GetDoorInvSlotNameFromSeatPos(
posIdx);
835 }
836
837
838
840 {
842
844 {
849
852
855
858
861
864
866 break;
867 }
868
870 }
871
873 {
874 switch (selection)
875 {
876 case "doors_driver":
877 return "DoorsDriver";
878 case "doors_codriver":
879 return "DoorsCoDriver";
880 case "doors_hood":
881 return "DoorsHood";
882 case "doors_trunk":
883 return "DoorsTrunk";
884 case "seatback_driver":
885 return "SeatDriver";
886 case "seatback_codriver":
887 return "SeatCoDriver";
888 }
889
890 return "";
891 }
892
894 {
895 switch (selection)
896 {
897 case "seat_driver":
898 case "seatback_driver":
899 case "seat_cargo1":
900 return "seat_con_1_1";
901 case "seat_codriver":
902 case "seatback_codriver":
903 case "seat_cargo2":
904 return "seat_con_2_1";
905 }
906
907 return "";
908 }
909
911 {
912 switch (selection)
913 {
914 case "seatback_driver":
915 return 0;
916 case "seatback_codriver":
917 return 1;
918 }
919
920 return -1;
921 }
922
924 {
925 return false;
926 }
927
929 {
930 return false;
931 }
932
934 {
935 if (
nextSeat == 0 && GetAnimationPhase(
"SeatDriver") > 0.5)
936 return false;
937
938 if (
nextSeat == 1 && GetAnimationPhase(
"SeatCoDriver") > 0.5)
939 return false;
940
942 {
943 case 0:
945
946 case 1:
948
949 case 2:
951
952 case 3:
954 }
955
956 return false;
957 }
958
960 {
962 {
963 case 0:
965
966 case 1:
968
969 case 2:
971
972 case 3:
974 }
975
976 return false;
977 }
978
980 {
982 {
983 case "DoorsDriver":
984 return 0;
985 case "DoorsCoDriver":
986 return 1;
987 }
988
989 return -1;
990 }
991
993 {
995
997 }
998
1000 {
1004
1005 GetInventory().CreateInInventory("HatchbackWheel");
1006 GetInventory().CreateInInventory("HatchbackWheel");
1007 GetInventory().CreateInInventory("HatchbackWheel");
1008 GetInventory().CreateInInventory("HatchbackWheel");
1009
1010 GetInventory().CreateInInventory("HatchbackDoors_Driver");
1011 GetInventory().CreateInInventory("HatchbackDoors_CoDriver");
1012 GetInventory().CreateInInventory("HatchbackHood");
1013 GetInventory().CreateInInventory("HatchbackTrunk");
1014
1015
1016 GetInventory().CreateInInventory("HatchbackWheel");
1017 GetInventory().CreateInInventory("HatchbackWheel");
1018 }
1019}
1020
1022{
1024 {
1028
1029 GetInventory().CreateInInventory("HatchbackWheel");
1030 GetInventory().CreateInInventory("HatchbackWheel");
1031 GetInventory().CreateInInventory("HatchbackWheel");
1032 GetInventory().CreateInInventory("HatchbackWheel");
1033
1034 GetInventory().CreateInInventory("HatchbackDoors_Driver_White");
1035 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_White");
1036 GetInventory().CreateInInventory("HatchbackHood_White");
1037 GetInventory().CreateInInventory("HatchbackTrunk_White");
1038
1039
1040 GetInventory().CreateInInventory("HatchbackWheel");
1041 GetInventory().CreateInInventory("HatchbackWheel");
1042 }
1043}
1044
1046{
1048 {
1052
1053 GetInventory().CreateInInventory("HatchbackWheel");
1054 GetInventory().CreateInInventory("HatchbackWheel");
1055 GetInventory().CreateInInventory("HatchbackWheel");
1056 GetInventory().CreateInInventory("HatchbackWheel");
1057
1058 GetInventory().CreateInInventory("HatchbackDoors_Driver_Blue");
1059 GetInventory().CreateInInventory("HatchbackDoors_CoDriver_Blue");
1060 GetInventory().CreateInInventory("HatchbackHood_Blue");
1061 GetInventory().CreateInInventory("HatchbackTrunk_Blue");
1062
1063
1064 GetInventory().CreateInInventory("HatchbackWheel");
1065 GetInventory().CreateInInventory("HatchbackWheel");
1066 }
1067}
void AddAction(typename actionName)
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
void SpawnUniversalParts()
string m_CarSeatShiftInSound
CarDoorState TranslateAnimationPhaseToCarDoorState(string animation)
void SpawnAdditionalItems()
string m_EngineStartOK
Sounds.
string m_CarDoorCloseSound
string m_EngineStartBattery
string m_CarHornShortSoundName
string m_CarHornLongSoundName
string m_CarSeatShiftOutSound
string m_CarDoorOpenSound
class Hatchback_02_Blue extends Hatchback_02 OnDebugSpawn
ref UniversalTemperatureSourceSettings m_UTSSettings
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()
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
override float GetTransportCameraDistance()
override bool CanReleaseAttachment(EntityAI attachment)
override bool CanDisplayCargo()
override void OnEngineStart()
override CarLightBase CreateFrontLight()
override int GetAnimInstance()
override bool CrewCanGetThrough(int posIdx)
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
bool CanManipulateSpareWheel(string slotSelectionName)
override bool IsVitalGlowPlug()
ref UniversalTemperatureSource m_UTSource
override CarRearLightBase CreateRearLight()
class OffroadHatchback extends CarScript OnDebugSpawn()
override int GetSeatIndexFromDoor(string pDoorSelection)
override bool IsVitalTruckBattery()
override string GetDoorSelectionNameFromSeatPos(int posIdx)
override int GetCarDoorsState(string slotType)
override int GetCrewIndex(string selection)
override bool CanDisplayAttachmentCategory(string category_name)
Super root of all classes in Enforce script.
original Timer deletes m_params which is unwanted
DayZPlayerConstants
defined in C++
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
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'.