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

◆ GetTransportCameraDistance()

override float OnDebugSpawn::GetTransportCameraDistance ( )
protected

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

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