670{
  674 
  676    {
  677        
  678        
  679        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  680        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  681        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  682        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  683        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  684        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  685 
  686        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  687        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  688        
  689        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  690        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  691        
  692        SetEnginePos("0 0.7 1.6");
  693    }
  694    
  696    {       
  697        super.EEInit();
  698        
  700        {
  707            
  710        }       
  711    }
  712    
  714    {
  715        super.OnEngineStart();
  716 
  718        {
  720        }
  721    }
  722    
  724    {
  725        super.OnEngineStop();
  726 
  728        {
  730        }
  731    }
  732    
  734    {
  736        {
  738            {
  740            }
  741        }
  742    }
  743    
  745    {
  747    }
  748    
  750    {
  751        return 4.5;
  752    }
  753 
  755    {
  756        switch (posIdx)
  757        {
  758        case 0:
  760        case 1:
  762        case 2:
  764        case 3:
  766        }
  767 
  768        return 0;
  769    }
  770    
  771    
  773    {
  775    }
  776    
  777    
  779    {
  781    }
  782    
  784    {
  785        if( !super.CanReleaseAttachment( attachment ) )
  786            return false;
  787        
  788        string attType = attachment.GetType();
  789        
  791        {
  792            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  793                return false;
  794        }
  795 
  796        return true;
  797    }
  798 
  800    {
  802    }
  803    
  805    {
  806        
  807        if (!super.CanDisplayAttachmentCategory(category_name))
  808            return false;
  809        
  810    
  812        if (category_name.
Contains(
"engine"))
 
  813        {
  815                return false;
  816        }
  817                
  818        return true;
  819    }
  820    
  822    {
  823        if ( !super.CanDisplayCargo() )
  824            return false;
  825        
  827            return false;
  828        
  829        return true;
  830    }
  831    
  833    {
  835 
  836        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  837        if (!carDoor)
  838        {
  840        }
  841    
  842        switch (slotType)
  843        {
  844        case "CivSedanDriverDoors":
  845            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  846            break;
  847        
  848        case "CivSedanCoDriverDoors":
  849            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  850            break;
  851 
  852        case "CivSedanCargo1Doors":
  853            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  854            break;
  855 
  856        case "CivSedanCargo2Doors":
  857            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  858            break;
  859        
  860        case "CivSedanTrunk":
  861            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  862            break;
  863        
  864        case "CivSedanHood":
  865            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  866            break;
  867        }
  868 
  870    }
  871    
  872 
  874    {
  875        switch( posIdx )
  876        {
  877            case 0:
  879                    return false;
  880 
  881                return true;
  882            break;
  883            
  884            case 1:
  886                    return false;
  887 
  888                return true;
  889            break;
  890 
  891            case 2:
  893                    return false;
  894 
  895                return true;
  896            break;
  897 
  898            case 3:
  900                    return false;
  901 
  902                return true;
  903            break;
  904        }
  905 
  906        return false;
  907    }
  908 
  910    {
  911        switch( posIdx )
  912        {
  913        case 0:
  914            return "doors_driver";
  915        break;
  916        case 1:
  917            return "doors_codriver";
  918        break;
  919        case 2:
  920            return "doors_cargo1";
  921        break;
  922        case 3:
  923            return "doors_cargo2";
  924        break;
  925        }
  926        
  927        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  928    }
  929 
  931    {
  932        switch( posIdx )
  933        {
  934        case 0:
  935            return "CivSedanDriverDoors";
  936        break;
  937        case 1:
  938            return "CivSedanCoDriverDoors";
  939        break;
  940        case 2:
  941            return "CivSedanCargo1Doors";
  942        break;
  943        case 3:
  944            return "CivSedanCargo2Doors";
  945        break;
  946        }
  947        
  948        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  949    }
  950 
  951    
  952    
  954    {
  955        switch (ctrl)
  956        {
  958            float newValue = 0;
  960            {
  961                newValue += 0.25;
  962            }
  963 
  965            {
  966                newValue += 0.25;
  967            }
  968        
  970            {
  971                newValue += 0.25;
  972            }
  973 
  975            {
  976                newValue += 0.25;
  977            }
  978        
  980            {
  981                newValue -= 0.6;
  982            }
  983 
  985            {
  986                newValue -= 0.6;
  987            }
  988        
  990        break;
  991        }
  992 
  993        return super.OnSound(ctrl, oldValue);
  994    }
  995 
  997    {
  998        switch (selection)
  999        {
 1000            case "doors_driver":
 1001                return "DoorsDriver";
 1002            case "doors_codriver":
 1003                return "DoorsCoDriver";
 1004            case "doors_cargo1":
 1005                return "DoorsCargo1";
 1006            case "doors_cargo2":
 1007                return "DoorsCargo2";
 1008            case "doors_hood":
 1009                return "DoorsHood";
 1010            case "doors_trunk":
 1011                return "DoorsTrunk";
 1012        }
 1013 
 1014        return "";
 1015    }
 1016 
 1018    {
 1019        return false;
 1020    }
 1021 
 1023    {
 1024        return false;
 1025    }
 1026    
 1028    {
 1029        switch (currentSeat)
 1030        {
 1031            case 0:
 1032                return nextSeat == 1;
 1033    
 1034            case 1:
 1035                return nextSeat == 0;
 1036    
 1037            case 2:
 1038                return nextSeat == 3;
 1039    
 1040            case 3:
 1041                return nextSeat == 2;
 1042        }
 1043        
 1044        return false;
 1045    }
 1046 
 1048    {
 1049        switch (pCurrentSeat)
 1050        {
 1051            case 0:
 1052                return pDoorsSelection == "DoorsDriver";
 1053    
 1054            case 1:
 1055                return pDoorsSelection == "DoorsCoDriver";
 1056    
 1057            case 2:
 1058                return pDoorsSelection == "DoorsCargo1";
 1059    
 1060            case 3:
 1061                return pDoorsSelection == "DoorsCargo2";
 1062        }
 1063        
 1064        return false;       
 1065    }
 1066 
 1068    {
 1069        SpawnUniversalParts();
 1070        SpawnAdditionalItems();
 1071        FillUpCarFluids();
 1072 
 1073        GetInventory().CreateInInventory("CivSedanWheel");
 1074        GetInventory().CreateInInventory("CivSedanWheel");
 1075        GetInventory().CreateInInventory("CivSedanWheel");
 1076        GetInventory().CreateInInventory("CivSedanWheel");
 1077 
 1078        GetInventory().CreateInInventory("CivSedanDoors_Driver");
 1079        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
 1080        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
 1081        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
 1082        GetInventory().CreateInInventory("CivSedanHood");
 1083        GetInventory().CreateInInventory("CivSedanTrunk");
 1084 
 1085        
 1086        GetInventory().CreateInInventory("CivSedanWheel");
 1087        GetInventory().CreateInInventory("CivSedanWheel");
 1088    }
 1089    
 1091    {
 1092        return 1.5;
 1093    }
 1094}
 1095 
 1097{
 1099    {
 1100        SpawnUniversalParts();
 1101        SpawnAdditionalItems();
 1102        FillUpCarFluids();
 1103 
 1104        GetInventory().CreateInInventory("CivSedanWheel");
 1105        GetInventory().CreateInInventory("CivSedanWheel");
 1106        GetInventory().CreateInInventory("CivSedanWheel");
 1107        GetInventory().CreateInInventory("CivSedanWheel");
 1108 
 1109        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
 1110        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
 1111        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
 1112        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
 1113        GetInventory().CreateInInventory("CivSedanHood_Wine");
 1114        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
 1115 
 1116        
 1117        GetInventory().CreateInInventory("CivSedanWheel");
 1118        GetInventory().CreateInInventory("CivSedanWheel");
 1119    }
 1120}
 1121 
 1123{
 1125    {
 1126        SpawnUniversalParts();
 1127        SpawnAdditionalItems();
 1128        FillUpCarFluids();
 1129 
 1130        GetInventory().CreateInInventory("CivSedanWheel");
 1131        GetInventory().CreateInInventory("CivSedanWheel");
 1132        GetInventory().CreateInInventory("CivSedanWheel");
 1133        GetInventory().CreateInInventory("CivSedanWheel");
 1134 
 1135        GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
 1136        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
 1137        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
 1138        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
 1139        GetInventory().CreateInInventory("CivSedanHood_Black");
 1140        GetInventory().CreateInInventory("CivSedanTrunk_Black");
 1141 
 1142        
 1143        GetInventory().CreateInInventory("CivSedanWheel");
 1144        GetInventory().CreateInInventory("CivSedanWheel");
 1145    }
 1146}
CarSoundCtrl
Car's sound controller list. (native, do not change or extend)
override float GetPushForceCoefficientMultiplier()
class CivilianSedan extends CarScript OnDebugSpawn()
override bool CanReachSeatFromSeat(int currentSeat, int nextSeat)
override string GetAnimSourceFromSelection(string selection)
override int GetSeatAnimationType(int posIdx)
override float OnSound(CarSoundCtrl ctrl, float oldValue)
override string GetDoorInvSlotNameFromSeatPos(int posIdx)
override void EOnPostSimulate(IEntity other, float timeSlice)
override void OnEngineStop()
ref UniversalTemperatureSourceLambdaEngine m_UTSLEngine
override float GetTransportCameraDistance()
override bool CanReleaseAttachment(EntityAI attachment)
override bool CanDisplayCargo()
override void OnEngineStart()
override CarLightBase CreateFrontLight()
override int GetAnimInstance()
override bool CrewCanGetThrough(int posIdx)
override bool CanReachDoorsFromSeat(string pDoorsSelection, int pCurrentSeat)
bool CanManipulateSpareWheel(string slotSelectionName)
override bool IsVitalGlowPlug()
override CarRearLightBase CreateRearLight()
override bool IsVitalTruckBattery()
override string GetDoorSelectionNameFromSeatPos(int posIdx)
override int GetCarDoorsState(string slotType)
override bool CanDisplayAttachmentCategory(string category_name)
ref UniversalTemperatureSourceSettings m_UTSSettings
ref UniversalTemperatureSource m_UTSource
UniversalTemperatureSourceLambdaBaseImpl UniversalTemperatureSourceLambdaBase UniversalTemperatureSourceLambdaEngine()
override void OnDebugSpawn()
Super root of all classes in Enforce script.
original Timer deletes m_params which is unwanted
DayZPlayerConstants
defined in C++
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
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.
proto int ToLower()
Changes string to lowercase. Returns length.