484{
  488 
  490    {
  491        
  492        
  493        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  494        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  495        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  496        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  497        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  498        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  499 
  500        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  501        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  502        
  503        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  504        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  505        
  506        SetEnginePos("0 0.7 1.6");
  507    }
  508    
  510    {       
  511        super.EEInit();
  512        
  514        {
  521            
  524        }       
  525    }
  526    
  528    {
  529        super.OnEngineStart();
  530 
  532        {
  534        }
  535    }
  536    
  538    {
  539        super.OnEngineStop();
  540 
  542        {
  544        }
  545    }
  546    
  548    {
  550        {
  552            {
  554            }
  555        }
  556    }
  557    
  559    {
  561    }
  562    
  564    {
  565        return 4.5;
  566    }
  567 
  569    {
  570        switch (posIdx)
  571        {
  572        case 0:
  574        case 1:
  576        case 2:
  578        case 3:
  580        }
  581 
  582        return 0;
  583    }
  584    
  585    
  587    {
  589    }
  590    
  591    
  593    {
  595    }
  596    
  598    {
  599        if( !super.CanReleaseAttachment( attachment ) )
  600            return false;
  601        
  602        string attType = attachment.GetType();
  603        
  605        {
  606            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  607                return false;
  608        }
  609 
  610        return true;
  611    }
  612 
  614    {
  616    }
  617    
  619    {
  620        
  621        if (!super.CanDisplayAttachmentCategory(category_name))
  622            return false;
  623        
  624    
  626        if (category_name.
Contains(
"engine"))
 
  627        {
  629                return false;
  630        }
  631                
  632        return true;
  633    }
  634    
  636    {
  637        if ( !super.CanDisplayCargo() )
  638            return false;
  639        
  641            return false;
  642        
  643        return true;
  644    }
  645    
  647    {
  649 
  650        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  651        if (!carDoor)
  652        {
  654        }
  655    
  656        switch (slotType)
  657        {
  658        case "CivSedanDriverDoors":
  659            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  660            break;
  661        
  662        case "CivSedanCoDriverDoors":
  663            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  664            break;
  665 
  666        case "CivSedanCargo1Doors":
  667            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  668            break;
  669 
  670        case "CivSedanCargo2Doors":
  671            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  672            break;
  673        
  674        case "CivSedanTrunk":
  675            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  676            break;
  677        
  678        case "CivSedanHood":
  679            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  680            break;
  681        }
  682 
  684    }
  685    
  686 
  688    {
  689        switch( posIdx )
  690        {
  691            case 0:
  693                    return false;
  694 
  695                return true;
  696            break;
  697            
  698            case 1:
  700                    return false;
  701 
  702                return true;
  703            break;
  704 
  705            case 2:
  707                    return false;
  708 
  709                return true;
  710            break;
  711 
  712            case 3:
  714                    return false;
  715 
  716                return true;
  717            break;
  718        }
  719 
  720        return false;
  721    }
  722 
  724    {
  725        switch( posIdx )
  726        {
  727        case 0:
  728            return "doors_driver";
  729        break;
  730        case 1:
  731            return "doors_codriver";
  732        break;
  733        case 2:
  734            return "doors_cargo1";
  735        break;
  736        case 3:
  737            return "doors_cargo2";
  738        break;
  739        }
  740        
  741        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  742    }
  743 
  745    {
  746        switch( posIdx )
  747        {
  748        case 0:
  749            return "CivSedanDriverDoors";
  750        break;
  751        case 1:
  752            return "CivSedanCoDriverDoors";
  753        break;
  754        case 2:
  755            return "CivSedanCargo1Doors";
  756        break;
  757        case 3:
  758            return "CivSedanCargo2Doors";
  759        break;
  760        }
  761        
  762        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  763    }
  764 
  765    
  766    
  768    {
  769        switch (ctrl)
  770        {
  772            float newValue = 0;
  774            {
  775                newValue += 0.25;
  776            }
  777 
  779            {
  780                newValue += 0.25;
  781            }
  782        
  784            {
  785                newValue += 0.25;
  786            }
  787 
  789            {
  790                newValue += 0.25;
  791            }
  792        
  794            {
  795                newValue -= 0.6;
  796            }
  797 
  799            {
  800                newValue -= 0.6;
  801            }
  802        
  804        break;
  805        }
  806 
  807        return super.OnSound(ctrl, oldValue);
  808    }
  809 
  811    {
  812        switch (selection)
  813        {
  814            case "doors_driver":
  815                return "DoorsDriver";
  816            case "doors_codriver":
  817                return "DoorsCoDriver";
  818            case "doors_cargo1":
  819                return "DoorsCargo1";
  820            case "doors_cargo2":
  821                return "DoorsCargo2";
  822            case "doors_hood":
  823                return "DoorsHood";
  824            case "doors_trunk":
  825                return "DoorsTrunk";
  826        }
  827 
  828        return "";
  829    }
  830 
  832    {
  833        return false;
  834    }
  835 
  837    {
  838        return false;
  839    }
  840    
  842    {
  843        switch (currentSeat)
  844        {
  845            case 0:
  846                return nextSeat == 1;
  847    
  848            case 1:
  849                return nextSeat == 0;
  850    
  851            case 2:
  852                return nextSeat == 3;
  853    
  854            case 3:
  855                return nextSeat == 2;
  856        }
  857        
  858        return false;
  859    }
  860 
  862    {
  863        switch (pCurrentSeat)
  864        {
  865            case 0:
  866                return pDoorsSelection == "DoorsDriver";
  867    
  868            case 1:
  869                return pDoorsSelection == "DoorsCoDriver";
  870    
  871            case 2:
  872                return pDoorsSelection == "DoorsCargo1";
  873    
  874            case 3:
  875                return pDoorsSelection == "DoorsCargo2";
  876        }
  877        
  878        return false;       
  879    }
  880 
  882    {
  883        SpawnUniversalParts();
  884        SpawnAdditionalItems();
  885        FillUpCarFluids();
  886 
  887        GetInventory().CreateInInventory("CivSedanWheel");
  888        GetInventory().CreateInInventory("CivSedanWheel");
  889        GetInventory().CreateInInventory("CivSedanWheel");
  890        GetInventory().CreateInInventory("CivSedanWheel");
  891 
  892        GetInventory().CreateInInventory("CivSedanDoors_Driver");
  893        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
  894        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
  895        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
  896        GetInventory().CreateInInventory("CivSedanHood");
  897        GetInventory().CreateInInventory("CivSedanTrunk");
  898 
  899        
  900        GetInventory().CreateInInventory("CivSedanWheel");
  901        GetInventory().CreateInInventory("CivSedanWheel");
  902    }
  903    
  905    {
  906        return 1.5;
  907    }
  908}
  909 
  911{
  913    {
  914        SpawnUniversalParts();
  915        SpawnAdditionalItems();
  916        FillUpCarFluids();
  917 
  918        GetInventory().CreateInInventory("CivSedanWheel");
  919        GetInventory().CreateInInventory("CivSedanWheel");
  920        GetInventory().CreateInInventory("CivSedanWheel");
  921        GetInventory().CreateInInventory("CivSedanWheel");
  922 
  923        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
  924        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
  925        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
  926        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
  927        GetInventory().CreateInInventory("CivSedanHood_Wine");
  928        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
  929 
  930        
  931        GetInventory().CreateInInventory("CivSedanWheel");
  932        GetInventory().CreateInInventory("CivSedanWheel");
  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_Black");
  950        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
  951        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
  952        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
  953        GetInventory().CreateInInventory("CivSedanHood_Black");
  954        GetInventory().CreateInInventory("CivSedanTrunk_Black");
  955 
  956        
  957        GetInventory().CreateInInventory("CivSedanWheel");
  958        GetInventory().CreateInInventory("CivSedanWheel");
  959    }
  960}
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.