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

◆ OnEngineStop()

override void OnDebugSpawn::OnEngineStop ( )
protected

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

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