510{
  514 
  516    {
  517        
  518        
  519        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  520        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  521        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  522        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  523        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  524        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  525 
  526        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  527        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  528        
  529        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  530        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  531        
  532        SetEnginePos("0 0.7 1.6");
  533    }
  534    
  536    {       
  537        super.EEInit();
  538        
  540        {
  547            
  550        }       
  551    }
  552    
  554    {
  555        super.OnEngineStart();
  556 
  558        {
  560        }
  561    }
  562    
  564    {
  565        super.OnEngineStop();
  566 
  568        {
  570        }
  571    }
  572    
  574    {
  576        {
  578            {
  580            }
  581        }
  582    }
  583    
  585    {
  587    }
  588    
  590    {
  591        return 4.5;
  592    }
  593 
  595    {
  596        switch (posIdx)
  597        {
  598        case 0:
  600        case 1:
  602        case 2:
  604        case 3:
  606        }
  607 
  608        return 0;
  609    }
  610    
  611    
  613    {
  615    }
  616    
  617    
  619    {
  621    }
  622    
  624    {
  625        if( !super.CanReleaseAttachment( attachment ) )
  626            return false;
  627        
  628        string attType = attachment.GetType();
  629        
  631        {
  632            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  633                return false;
  634        }
  635 
  636        return true;
  637    }
  638 
  640    {
  642    }
  643    
  645    {
  646        
  647        if (!super.CanDisplayAttachmentCategory(category_name))
  648            return false;
  649        
  650    
  652        if (category_name.
Contains(
"engine"))
 
  653        {
  655                return false;
  656        }
  657                
  658        return true;
  659    }
  660    
  662    {
  663        if ( !super.CanDisplayCargo() )
  664            return false;
  665        
  667            return false;
  668        
  669        return true;
  670    }
  671    
  673    {
  675 
  676        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  677        if (!carDoor)
  678        {
  680        }
  681    
  682        switch (slotType)
  683        {
  684        case "CivSedanDriverDoors":
  685            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  686            break;
  687        
  688        case "CivSedanCoDriverDoors":
  689            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  690            break;
  691 
  692        case "CivSedanCargo1Doors":
  693            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  694            break;
  695 
  696        case "CivSedanCargo2Doors":
  697            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  698            break;
  699        
  700        case "CivSedanTrunk":
  701            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  702            break;
  703        
  704        case "CivSedanHood":
  705            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  706            break;
  707        }
  708 
  710    }
  711    
  712 
  714    {
  715        switch( posIdx )
  716        {
  717            case 0:
  719                    return false;
  720 
  721                return true;
  722            break;
  723            
  724            case 1:
  726                    return false;
  727 
  728                return true;
  729            break;
  730 
  731            case 2:
  733                    return false;
  734 
  735                return true;
  736            break;
  737 
  738            case 3:
  740                    return false;
  741 
  742                return true;
  743            break;
  744        }
  745 
  746        return false;
  747    }
  748 
  750    {
  751        switch( posIdx )
  752        {
  753        case 0:
  754            return "doors_driver";
  755        break;
  756        case 1:
  757            return "doors_codriver";
  758        break;
  759        case 2:
  760            return "doors_cargo1";
  761        break;
  762        case 3:
  763            return "doors_cargo2";
  764        break;
  765        }
  766        
  767        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  768    }
  769 
  771    {
  772        switch( posIdx )
  773        {
  774        case 0:
  775            return "CivSedanDriverDoors";
  776        break;
  777        case 1:
  778            return "CivSedanCoDriverDoors";
  779        break;
  780        case 2:
  781            return "CivSedanCargo1Doors";
  782        break;
  783        case 3:
  784            return "CivSedanCargo2Doors";
  785        break;
  786        }
  787        
  788        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  789    }
  790 
  791    
  792    
  794    {
  795        switch (ctrl)
  796        {
  798            float newValue = 0;
  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.25;
  817            }
  818        
  820            {
  821                newValue -= 0.6;
  822            }
  823 
  825            {
  826                newValue -= 0.6;
  827            }
  828        
  830        break;
  831        }
  832 
  833        return super.OnSound(ctrl, oldValue);
  834    }
  835 
  837    {
  838        switch (selection)
  839        {
  840            case "doors_driver":
  841                return "DoorsDriver";
  842            case "doors_codriver":
  843                return "DoorsCoDriver";
  844            case "doors_cargo1":
  845                return "DoorsCargo1";
  846            case "doors_cargo2":
  847                return "DoorsCargo2";
  848            case "doors_hood":
  849                return "DoorsHood";
  850            case "doors_trunk":
  851                return "DoorsTrunk";
  852        }
  853 
  854        return "";
  855    }
  856 
  858    {
  859        return false;
  860    }
  861 
  863    {
  864        return false;
  865    }
  866    
  868    {
  869        switch (currentSeat)
  870        {
  871            case 0:
  872                return nextSeat == 1;
  873    
  874            case 1:
  875                return nextSeat == 0;
  876    
  877            case 2:
  878                return nextSeat == 3;
  879    
  880            case 3:
  881                return nextSeat == 2;
  882        }
  883        
  884        return false;
  885    }
  886 
  888    {
  889        switch (pCurrentSeat)
  890        {
  891            case 0:
  892                return pDoorsSelection == "DoorsDriver";
  893    
  894            case 1:
  895                return pDoorsSelection == "DoorsCoDriver";
  896    
  897            case 2:
  898                return pDoorsSelection == "DoorsCargo1";
  899    
  900            case 3:
  901                return pDoorsSelection == "DoorsCargo2";
  902        }
  903        
  904        return false;       
  905    }
  906 
  908    {
  909        SpawnUniversalParts();
  910        SpawnAdditionalItems();
  911        FillUpCarFluids();
  912 
  913        GetInventory().CreateInInventory("CivSedanWheel");
  914        GetInventory().CreateInInventory("CivSedanWheel");
  915        GetInventory().CreateInInventory("CivSedanWheel");
  916        GetInventory().CreateInInventory("CivSedanWheel");
  917 
  918        GetInventory().CreateInInventory("CivSedanDoors_Driver");
  919        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
  920        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
  921        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
  922        GetInventory().CreateInInventory("CivSedanHood");
  923        GetInventory().CreateInInventory("CivSedanTrunk");
  924 
  925        
  926        GetInventory().CreateInInventory("CivSedanWheel");
  927        GetInventory().CreateInInventory("CivSedanWheel");
  928    }
  929    
  931    {
  932        return 1.5;
  933    }
  934}
  935 
  937{
  939    {
  940        SpawnUniversalParts();
  941        SpawnAdditionalItems();
  942        FillUpCarFluids();
  943 
  944        GetInventory().CreateInInventory("CivSedanWheel");
  945        GetInventory().CreateInInventory("CivSedanWheel");
  946        GetInventory().CreateInInventory("CivSedanWheel");
  947        GetInventory().CreateInInventory("CivSedanWheel");
  948 
  949        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
  950        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
  951        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
  952        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
  953        GetInventory().CreateInInventory("CivSedanHood_Wine");
  954        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
  955 
  956        
  957        GetInventory().CreateInInventory("CivSedanWheel");
  958        GetInventory().CreateInInventory("CivSedanWheel");
  959    }
  960}
  961 
  963{
  965    {
  966        SpawnUniversalParts();
  967        SpawnAdditionalItems();
  968        FillUpCarFluids();
  969 
  970        GetInventory().CreateInInventory("CivSedanWheel");
  971        GetInventory().CreateInInventory("CivSedanWheel");
  972        GetInventory().CreateInInventory("CivSedanWheel");
  973        GetInventory().CreateInInventory("CivSedanWheel");
  974 
  975        GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
  976        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
  977        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
  978        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
  979        GetInventory().CreateInInventory("CivSedanHood_Black");
  980        GetInventory().CreateInInventory("CivSedanTrunk_Black");
  981 
  982        
  983        GetInventory().CreateInInventory("CivSedanWheel");
  984        GetInventory().CreateInInventory("CivSedanWheel");
  985    }
  986}
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.