505{
  509 
  511    {
  512        
  513        
  514        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  515        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  516        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  517        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  518        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  519        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  520 
  521        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  522        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  523        
  524        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  525        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  526        
  527        SetEnginePos("0 0.7 1.6");
  528    }
  529    
  531    {       
  532        super.EEInit();
  533        
  535        {
  542            
  545        }       
  546    }
  547    
  549    {
  550        super.OnEngineStart();
  551 
  553        {
  555        }
  556    }
  557    
  559    {
  560        super.OnEngineStop();
  561 
  563        {
  565        }
  566    }
  567    
  569    {
  571        {
  573            {
  575            }
  576        }
  577    }
  578    
  580    {
  582    }
  583    
  585    {
  586        return 4.5;
  587    }
  588 
  590    {
  591        switch (posIdx)
  592        {
  593        case 0:
  595        case 1:
  597        case 2:
  599        case 3:
  601        }
  602 
  603        return 0;
  604    }
  605    
  606    
  608    {
  610    }
  611    
  612    
  614    {
  616    }
  617    
  619    {
  620        if( !super.CanReleaseAttachment( attachment ) )
  621            return false;
  622        
  623        string attType = attachment.GetType();
  624        
  626        {
  627            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  628                return false;
  629        }
  630 
  631        return true;
  632    }
  633 
  635    {
  637    }
  638    
  640    {
  641        
  642        if (!super.CanDisplayAttachmentCategory(category_name))
  643            return false;
  644        
  645    
  647        if (category_name.
Contains(
"engine"))
 
  648        {
  650                return false;
  651        }
  652                
  653        return true;
  654    }
  655    
  657    {
  658        if ( !super.CanDisplayCargo() )
  659            return false;
  660        
  662            return false;
  663        
  664        return true;
  665    }
  666    
  668    {
  670 
  671        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  672        if (!carDoor)
  673        {
  675        }
  676    
  677        switch (slotType)
  678        {
  679        case "CivSedanDriverDoors":
  680            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  681            break;
  682        
  683        case "CivSedanCoDriverDoors":
  684            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  685            break;
  686 
  687        case "CivSedanCargo1Doors":
  688            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  689            break;
  690 
  691        case "CivSedanCargo2Doors":
  692            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  693            break;
  694        
  695        case "CivSedanTrunk":
  696            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  697            break;
  698        
  699        case "CivSedanHood":
  700            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  701            break;
  702        }
  703 
  705    }
  706    
  707 
  709    {
  710        switch( posIdx )
  711        {
  712            case 0:
  714                    return false;
  715 
  716                return true;
  717            break;
  718            
  719            case 1:
  721                    return false;
  722 
  723                return true;
  724            break;
  725 
  726            case 2:
  728                    return false;
  729 
  730                return true;
  731            break;
  732 
  733            case 3:
  735                    return false;
  736 
  737                return true;
  738            break;
  739        }
  740 
  741        return false;
  742    }
  743 
  745    {
  746        switch( posIdx )
  747        {
  748        case 0:
  749            return "doors_driver";
  750        break;
  751        case 1:
  752            return "doors_codriver";
  753        break;
  754        case 2:
  755            return "doors_cargo1";
  756        break;
  757        case 3:
  758            return "doors_cargo2";
  759        break;
  760        }
  761        
  762        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  763    }
  764 
  766    {
  767        switch( posIdx )
  768        {
  769        case 0:
  770            return "CivSedanDriverDoors";
  771        break;
  772        case 1:
  773            return "CivSedanCoDriverDoors";
  774        break;
  775        case 2:
  776            return "CivSedanCargo1Doors";
  777        break;
  778        case 3:
  779            return "CivSedanCargo2Doors";
  780        break;
  781        }
  782        
  783        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  784    }
  785 
  786    
  787    
  789    {
  790        switch (ctrl)
  791        {
  793            float newValue = 0;
  795            {
  796                newValue += 0.25;
  797            }
  798 
  800            {
  801                newValue += 0.25;
  802            }
  803        
  805            {
  806                newValue += 0.25;
  807            }
  808 
  810            {
  811                newValue += 0.25;
  812            }
  813        
  815            {
  816                newValue -= 0.6;
  817            }
  818 
  820            {
  821                newValue -= 0.6;
  822            }
  823        
  825        break;
  826        }
  827 
  828        return super.OnSound(ctrl, oldValue);
  829    }
  830 
  832    {
  833        switch (selection)
  834        {
  835            case "doors_driver":
  836                return "DoorsDriver";
  837            case "doors_codriver":
  838                return "DoorsCoDriver";
  839            case "doors_cargo1":
  840                return "DoorsCargo1";
  841            case "doors_cargo2":
  842                return "DoorsCargo2";
  843            case "doors_hood":
  844                return "DoorsHood";
  845            case "doors_trunk":
  846                return "DoorsTrunk";
  847        }
  848 
  849        return "";
  850    }
  851 
  853    {
  854        return false;
  855    }
  856 
  858    {
  859        return false;
  860    }
  861    
  863    {
  864        switch (currentSeat)
  865        {
  866            case 0:
  867                return nextSeat == 1;
  868    
  869            case 1:
  870                return nextSeat == 0;
  871    
  872            case 2:
  873                return nextSeat == 3;
  874    
  875            case 3:
  876                return nextSeat == 2;
  877        }
  878        
  879        return false;
  880    }
  881 
  883    {
  884        switch (pCurrentSeat)
  885        {
  886            case 0:
  887                return pDoorsSelection == "DoorsDriver";
  888    
  889            case 1:
  890                return pDoorsSelection == "DoorsCoDriver";
  891    
  892            case 2:
  893                return pDoorsSelection == "DoorsCargo1";
  894    
  895            case 3:
  896                return pDoorsSelection == "DoorsCargo2";
  897        }
  898        
  899        return false;       
  900    }
  901 
  903    {
  904        SpawnUniversalParts();
  905        SpawnAdditionalItems();
  906        FillUpCarFluids();
  907 
  908        GetInventory().CreateInInventory("CivSedanWheel");
  909        GetInventory().CreateInInventory("CivSedanWheel");
  910        GetInventory().CreateInInventory("CivSedanWheel");
  911        GetInventory().CreateInInventory("CivSedanWheel");
  912 
  913        GetInventory().CreateInInventory("CivSedanDoors_Driver");
  914        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
  915        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
  916        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
  917        GetInventory().CreateInInventory("CivSedanHood");
  918        GetInventory().CreateInInventory("CivSedanTrunk");
  919 
  920        
  921        GetInventory().CreateInInventory("CivSedanWheel");
  922        GetInventory().CreateInInventory("CivSedanWheel");
  923    }
  924    
  926    {
  927        return 1.5;
  928    }
  929}
  930 
  932{
  934    {
  935        SpawnUniversalParts();
  936        SpawnAdditionalItems();
  937        FillUpCarFluids();
  938 
  939        GetInventory().CreateInInventory("CivSedanWheel");
  940        GetInventory().CreateInInventory("CivSedanWheel");
  941        GetInventory().CreateInInventory("CivSedanWheel");
  942        GetInventory().CreateInInventory("CivSedanWheel");
  943 
  944        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
  945        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
  946        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
  947        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
  948        GetInventory().CreateInInventory("CivSedanHood_Wine");
  949        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
  950 
  951        
  952        GetInventory().CreateInInventory("CivSedanWheel");
  953        GetInventory().CreateInInventory("CivSedanWheel");
  954    }
  955}
  956 
  958{
  960    {
  961        SpawnUniversalParts();
  962        SpawnAdditionalItems();
  963        FillUpCarFluids();
  964 
  965        GetInventory().CreateInInventory("CivSedanWheel");
  966        GetInventory().CreateInInventory("CivSedanWheel");
  967        GetInventory().CreateInInventory("CivSedanWheel");
  968        GetInventory().CreateInInventory("CivSedanWheel");
  969 
  970        GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
  971        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
  972        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
  973        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
  974        GetInventory().CreateInInventory("CivSedanHood_Black");
  975        GetInventory().CreateInInventory("CivSedanTrunk_Black");
  976 
  977        
  978        GetInventory().CreateInInventory("CivSedanWheel");
  979        GetInventory().CreateInInventory("CivSedanWheel");
  980    }
  981}
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.