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

◆ GetAnimInstance()

override int OnDebugSpawn::GetAnimInstance ( )
protected

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

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