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

◆ GetSeatAnimationType()

override int OnDebugSpawn::GetSeatAnimationType ( int posIdx)
protected

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

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