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

◆ GetAnimInstance()

override int OnDebugSpawn::GetAnimInstance ( )
protected

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

503{
507
508 void CivilianSedan()
509 {
510 //m_dmgContactCoef = 0.065;
511
512 m_EngineStartOK = "CivilianSedan_engine_start_SoundSet";
513 m_EngineStartBattery = "CivilianSedan_engine_failed_start_battery_SoundSet";
514 m_EngineStartPlug = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
515 m_EngineStartFuel = "CivilianSedan_engine_failed_start_fuel_SoundSet";
516 m_EngineStopFuel = "offroad_engine_stop_fuel_SoundSet";
517
518 m_CarDoorOpenSound = "offroad_door_open_SoundSet";
519 m_CarDoorCloseSound = "offroad_door_close_SoundSet";
520
521 m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
522 m_CarHornLongSoundName = "CivilianSedan_Horn_SoundSet";
523
524 SetEnginePos("0 0.7 1.6");
525 }
526
527 override void EEInit()
528 {
529 super.EEInit();
530
531 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
532 {
534 m_UTSSettings.m_ManualUpdate = true;
536 m_UTSSettings.m_TemperatureCap = 0;
537 m_UTSSettings.m_RangeFull = 0.5;
538 m_UTSSettings.m_RangeMax = 2;
539
542 }
543 }
544
545 override void OnEngineStart()
546 {
547 super.OnEngineStart();
548
549 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
550 {
551 m_UTSource.SetDefferedActive(true, 20.0);
552 }
553 }
554
555 override void OnEngineStop()
556 {
557 super.OnEngineStop();
558
559 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
560 {
561 m_UTSource.SetDefferedActive(false, 10.0);
562 }
563 }
564
565 override void EOnPostSimulate(IEntity other, float timeSlice)
566 {
567 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
568 {
569 if (m_UTSource.IsActive())
570 {
572 }
573 }
574 }
575
576 override int GetAnimInstance()
577 {
578 return VehicleAnimInstances.SEDAN;
579 }
580
581 override float GetTransportCameraDistance()
582 {
583 return 4.5;
584 }
585
586 override int GetSeatAnimationType(int posIdx)
587 {
588 switch (posIdx)
589 {
590 case 0:
591 return DayZPlayerConstants.VEHICLESEAT_DRIVER;
592 case 1:
593 return DayZPlayerConstants.VEHICLESEAT_CODRIVER;
594 case 2:
595 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_L;
596 case 3:
597 return DayZPlayerConstants.VEHICLESEAT_PASSENGER_R;
598 }
599
600 return 0;
601 }
602
603 // Override for car-specific light type
605 {
606 return CarLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanFrontLight) );
607 }
608
609 // Override for car-specific light type
611 {
612 return CarRearLightBase.Cast( ScriptedLightBase.CreateLight(CivilianSedanRearLight) );
613 }
614
615 override bool CanReleaseAttachment( EntityAI attachment )
616 {
617 if( !super.CanReleaseAttachment( attachment ) )
618 return false;
619
620 string attType = attachment.GetType();
621
622 if ( EngineIsOn() || GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED )
623 {
624 if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
625 return false;
626 }
627
628 return true;
629 }
630
631 override protected bool CanManipulateSpareWheel(string slotSelectionName)
632 {
633 return GetCarDoorsState("CivSedanTrunk") != CarDoorState.DOORS_CLOSED;
634 }
635
636 override bool CanDisplayAttachmentCategory(string category_name)
637 {
638 //super
639 if (!super.CanDisplayAttachmentCategory(category_name))
640 return false;
641 //
642
643 category_name.ToLower();
644 if (category_name.Contains("engine"))
645 {
646 if (GetCarDoorsState("CivSedanHood") == CarDoorState.DOORS_CLOSED)
647 return false;
648 }
649
650 return true;
651 }
652
653 override bool CanDisplayCargo()
654 {
655 if ( !super.CanDisplayCargo() )
656 return false;
657
658 if ( GetCarDoorsState("CivSedanTrunk") == CarDoorState.DOORS_CLOSED )
659 return false;
660
661 return true;
662 }
663
664 override int GetCarDoorsState( string slotType )
665 {
666 CarDoor carDoor;
667
668 Class.CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
669 if (!carDoor)
670 {
671 return CarDoorState.DOORS_MISSING;
672 }
673
674 switch (slotType)
675 {
676 case "CivSedanDriverDoors":
677 return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
678 break;
679
680 case "CivSedanCoDriverDoors":
681 return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
682 break;
683
684 case "CivSedanCargo1Doors":
685 return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
686 break;
687
688 case "CivSedanCargo2Doors":
689 return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
690 break;
691
692 case "CivSedanTrunk":
693 return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
694 break;
695
696 case "CivSedanHood":
697 return TranslateAnimationPhaseToCarDoorState("DoorsHood");
698 break;
699 }
700
701 return CarDoorState.DOORS_MISSING;
702 }
703
704
705 override bool CrewCanGetThrough( int posIdx )
706 {
707 switch( posIdx )
708 {
709 case 0:
710 if ( GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED )
711 return false;
712
713 return true;
714 break;
715
716 case 1:
717 if ( GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED )
718 return false;
719
720 return true;
721 break;
722
723 case 2:
724 if ( GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED )
725 return false;
726
727 return true;
728 break;
729
730 case 3:
731 if ( GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED )
732 return false;
733
734 return true;
735 break;
736 }
737
738 return false;
739 }
740
741 override string GetDoorSelectionNameFromSeatPos(int posIdx)
742 {
743 switch( posIdx )
744 {
745 case 0:
746 return "doors_driver";
747 break;
748 case 1:
749 return "doors_codriver";
750 break;
751 case 2:
752 return "doors_cargo1";
753 break;
754 case 3:
755 return "doors_cargo2";
756 break;
757 }
758
759 return super.GetDoorSelectionNameFromSeatPos(posIdx);
760 }
761
762 override string GetDoorInvSlotNameFromSeatPos(int posIdx)
763 {
764 switch( posIdx )
765 {
766 case 0:
767 return "CivSedanDriverDoors";
768 break;
769 case 1:
770 return "CivSedanCoDriverDoors";
771 break;
772 case 2:
773 return "CivSedanCargo1Doors";
774 break;
775 case 3:
776 return "CivSedanCargo2Doors";
777 break;
778 }
779
780 return super.GetDoorInvSlotNameFromSeatPos(posIdx);
781 }
782
783 // 0 full ambient and engine sound
784 // 1 zero ambient and engine sound
785 override float OnSound(CarSoundCtrl ctrl, float oldValue)
786 {
787 switch (ctrl)
788 {
789 case CarSoundCtrl.DOORS:
790 float newValue = 0;
791 if (GetCarDoorsState("CivSedanDriverDoors") == CarDoorState.DOORS_CLOSED)
792 {
793 newValue += 0.25;
794 }
795
796 if (GetCarDoorsState("CivSedanCoDriverDoors") == CarDoorState.DOORS_CLOSED)
797 {
798 newValue += 0.25;
799 }
800
801 if (GetCarDoorsState("CivSedanCargo1Doors") == CarDoorState.DOORS_CLOSED)
802 {
803 newValue += 0.25;
804 }
805
806 if (GetCarDoorsState("CivSedanCargo2Doors") == CarDoorState.DOORS_CLOSED)
807 {
808 newValue += 0.25;
809 }
810
811 if (GetHealthLevel("WindowFront") == GameConstants.STATE_RUINED)
812 {
813 newValue -= 0.6;
814 }
815
816 if (GetHealthLevel("WindowBack") == GameConstants.STATE_RUINED)
817 {
818 newValue -= 0.6;
819 }
820
821 return Math.Clamp(newValue, 0, 1);
822 break;
823 }
824
825 return super.OnSound(ctrl, oldValue);
826 }
827
828 override string GetAnimSourceFromSelection(string selection)
829 {
830 switch (selection)
831 {
832 case "doors_driver":
833 return "DoorsDriver";
834 case "doors_codriver":
835 return "DoorsCoDriver";
836 case "doors_cargo1":
837 return "DoorsCargo1";
838 case "doors_cargo2":
839 return "DoorsCargo2";
840 case "doors_hood":
841 return "DoorsHood";
842 case "doors_trunk":
843 return "DoorsTrunk";
844 }
845
846 return "";
847 }
848
849 override bool IsVitalTruckBattery()
850 {
851 return false;
852 }
853
854 override bool IsVitalGlowPlug()
855 {
856 return false;
857 }
858
859 override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
860 {
861 switch (currentSeat)
862 {
863 case 0:
864 return nextSeat == 1;
865
866 case 1:
867 return nextSeat == 0;
868
869 case 2:
870 return nextSeat == 3;
871
872 case 3:
873 return nextSeat == 2;
874 }
875
876 return false;
877 }
878
879 override bool CanReachDoorsFromSeat( string pDoorsSelection, int pCurrentSeat )
880 {
881 switch (pCurrentSeat)
882 {
883 case 0:
884 return pDoorsSelection == "DoorsDriver";
885
886 case 1:
887 return pDoorsSelection == "DoorsCoDriver";
888
889 case 2:
890 return pDoorsSelection == "DoorsCargo1";
891
892 case 3:
893 return pDoorsSelection == "DoorsCargo2";
894 }
895
896 return false;
897 }
898
899 override void OnDebugSpawn()
900 {
904
905 GetInventory().CreateInInventory("CivSedanWheel");
906 GetInventory().CreateInInventory("CivSedanWheel");
907 GetInventory().CreateInInventory("CivSedanWheel");
908 GetInventory().CreateInInventory("CivSedanWheel");
909
910 GetInventory().CreateInInventory("CivSedanDoors_Driver");
911 GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
912 GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
913 GetInventory().CreateInInventory("CivSedanDoors_BackRight");
914 GetInventory().CreateInInventory("CivSedanHood");
915 GetInventory().CreateInInventory("CivSedanTrunk");
916
917 //-----IN CAR CARGO
918 GetInventory().CreateInInventory("CivSedanWheel");
919 GetInventory().CreateInInventory("CivSedanWheel");
920 }
921
922 override float GetPushForceCoefficientMultiplier()
923 {
924 return 1.5;
925 }
926}
927
928class CivilianSedan_Wine extends CivilianSedan
929{
930 override void OnDebugSpawn()
931 {
935
936 GetInventory().CreateInInventory("CivSedanWheel");
937 GetInventory().CreateInInventory("CivSedanWheel");
938 GetInventory().CreateInInventory("CivSedanWheel");
939 GetInventory().CreateInInventory("CivSedanWheel");
940
941 GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
942 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
943 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
944 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
945 GetInventory().CreateInInventory("CivSedanHood_Wine");
946 GetInventory().CreateInInventory("CivSedanTrunk_Wine");
947
948 //-----IN CAR CARGO
949 GetInventory().CreateInInventory("CivSedanWheel");
950 GetInventory().CreateInInventory("CivSedanWheel");
951 }
952}
953
954class CivilianSedan_Black extends CivilianSedan
955{
956 override void OnDebugSpawn()
957 {
961
962 GetInventory().CreateInInventory("CivSedanWheel");
963 GetInventory().CreateInInventory("CivSedanWheel");
964 GetInventory().CreateInInventory("CivSedanWheel");
965 GetInventory().CreateInInventory("CivSedanWheel");
966
967 GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
968 GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
969 GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
970 GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
971 GetInventory().CreateInInventory("CivSedanHood_Black");
972 GetInventory().CreateInInventory("CivSedanTrunk_Black");
973
974 //-----IN CAR CARGO
975 GetInventory().CreateInInventory("CivSedanWheel");
976 GetInventory().CreateInInventory("CivSedanWheel");
977 }
978}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
Определения Car.c:4
void SpawnUniversalParts()
Определения CarScript.c:2801
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_CarDoorOpenSound
Определения CarScript.c:213
override float GetPushForceCoefficientMultiplier()
Определения CivilianSedan.c:848
class CivilianSedan extends CarScript OnDebugSpawn()
Определения CivilianSedan.c:429
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
Определения CivilianSedan.c:785
override string GetAnimSourceFromSelection(string selection)
Определения CivilianSedan.c:754
override int GetSeatAnimationType(int posIdx)
Определения CivilianSedan.c:512
override float OnSound(CarSoundCtrl ctrl, float oldValue)
Определения CivilianSedan.c:711
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:688
override void EOnPostSimulate(IEntity other, float timeSlice)
Определения CivilianSedan.c:491
override void OnEngineStop()
Определения CivilianSedan.c:481
void CivilianSedan()
Определения CivilianSedan.c:434
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
Определения CivilianSedan.c:432
override float GetTransportCameraDistance()
Определения CivilianSedan.c:507
override void EEInit()
Определения CivilianSedan.c:453
override bool CanReleaseAttachment(EntityAI attachment)
Определения CivilianSedan.c:541
override bool CanDisplayCargo()
Определения CivilianSedan.c:579
override void OnEngineStart()
Определения CivilianSedan.c:471
override CarLightBase CreateFrontLight()
Определения CivilianSedan.c:530
override int GetAnimInstance()
Определения CivilianSedan.c:502
override bool CrewCanGetThrough(int posIdx)
Определения CivilianSedan.c:631
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
Определения CivilianSedan.c:805
bool CanManipulateSpareWheel(string slotSelectionName)
Определения CivilianSedan.c:557
override bool IsVitalGlowPlug()
Определения CivilianSedan.c:780
override CarRearLightBase CreateRearLight()
Определения CivilianSedan.c:536
override bool IsVitalTruckBattery()
Определения CivilianSedan.c:775
override string GetDoorSelectionNameFromSeatPos(int posIdx)
Определения CivilianSedan.c:667
override int GetCarDoorsState(string slotType)
Определения CivilianSedan.c:590
override bool CanDisplayAttachmentCategory(string category_name)
Определения CivilianSedan.c:562
ref UniversalTemperatureSourceSettings m_UTSSettings
Определения FireplaceBase.c:220
ref UniversalTemperatureSource m_UTSource
Определения FireplaceBase.c:219
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
VehicleAnimInstances
Определения VehicleAnimInstances.c:2
Определения InventoryItem.c:496
Определения CarRearLightBase.c:2
override void OnDebugSpawn()
Определения CivilianSedan.c:455
Определения CivilianSedan.c:454
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения Building.c:6
Определения constants.c:659
Определения EnEntity.c:165
Определения EnMath.c:7
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.