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

◆ GetTransportCameraDistance()

override float OnDebugSpawn::GetTransportCameraDistance ( )
protected

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

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