691{
  695 
  697    {
  698        
  699        
  700        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  701        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  702        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  703        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  704        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  705        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  706 
  707        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  708        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  709        
  710        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  711        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  712        
  713        SetEnginePos("0 0.7 1.6");
  714    }
  715    
  717    {       
  718        super.EEInit();
  719        
  721        {
  728            
  731        }       
  732    }
  733    
  735    {
  736        super.OnEngineStart();
  737 
  739        {
  741        }
  742    }
  743    
  745    {
  746        super.OnEngineStop();
  747 
  749        {
  751        }
  752    }
  753    
  755    {
  757        {
  759            {
  761            }
  762        }
  763    }
  764    
  766    {
  768    }
  769    
  771    {
  772        return 4.5;
  773    }
  774 
  776    {
  777        switch (posIdx)
  778        {
  779        case 0:
  781        case 1:
  783        case 2:
  785        case 3:
  787        }
  788 
  789        return 0;
  790    }
  791    
  792    
  794    {
  796    }
  797    
  798    
  800    {
  802    }
  803    
  805    {
  806        if( !super.CanReleaseAttachment( attachment ) )
  807            return false;
  808        
  809        string attType = attachment.GetType();
  810        
  812        {
  813            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  814                return false;
  815        }
  816 
  817        return true;
  818    }
  819 
  821    {
  823    }
  824    
  826    {
  827        
  828        if (!super.CanDisplayAttachmentCategory(category_name))
  829            return false;
  830        
  831    
  833        if (category_name.
Contains(
"engine"))
 
  834        {
  836                return false;
  837        }
  838                
  839        return true;
  840    }
  841    
  843    {
  844        if ( !super.CanDisplayCargo() )
  845            return false;
  846        
  848            return false;
  849        
  850        return true;
  851    }
  852    
  854    {
  856 
  857        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  858        if (!carDoor)
  859        {
  861        }
  862    
  863        switch (slotType)
  864        {
  865        case "CivSedanDriverDoors":
  866            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  867            break;
  868        
  869        case "CivSedanCoDriverDoors":
  870            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  871            break;
  872 
  873        case "CivSedanCargo1Doors":
  874            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  875            break;
  876 
  877        case "CivSedanCargo2Doors":
  878            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  879            break;
  880        
  881        case "CivSedanTrunk":
  882            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  883            break;
  884        
  885        case "CivSedanHood":
  886            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  887            break;
  888        }
  889 
  891    }
  892    
  893 
  895    {
  896        switch( posIdx )
  897        {
  898            case 0:
  900                    return false;
  901 
  902                return true;
  903            break;
  904            
  905            case 1:
  907                    return false;
  908 
  909                return true;
  910            break;
  911 
  912            case 2:
  914                    return false;
  915 
  916                return true;
  917            break;
  918 
  919            case 3:
  921                    return false;
  922 
  923                return true;
  924            break;
  925        }
  926 
  927        return false;
  928    }
  929 
  931    {
  932        switch( posIdx )
  933        {
  934        case 0:
  935            return "doors_driver";
  936        break;
  937        case 1:
  938            return "doors_codriver";
  939        break;
  940        case 2:
  941            return "doors_cargo1";
  942        break;
  943        case 3:
  944            return "doors_cargo2";
  945        break;
  946        }
  947        
  948        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  949    }
  950 
  952    {
  953        switch( posIdx )
  954        {
  955        case 0:
  956            return "CivSedanDriverDoors";
  957        break;
  958        case 1:
  959            return "CivSedanCoDriverDoors";
  960        break;
  961        case 2:
  962            return "CivSedanCargo1Doors";
  963        break;
  964        case 3:
  965            return "CivSedanCargo2Doors";
  966        break;
  967        }
  968        
  969        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  970    }
  971 
  972    
  973    
  975    {
  976        switch (ctrl)
  977        {
  979            float newValue = 0;
  981            {
  982                newValue += 0.25;
  983            }
  984 
  986            {
  987                newValue += 0.25;
  988            }
  989        
  991            {
  992                newValue += 0.25;
  993            }
  994 
  996            {
  997                newValue += 0.25;
  998            }
  999        
 1001            {
 1002                newValue -= 0.6;
 1003            }
 1004 
 1006            {
 1007                newValue -= 0.6;
 1008            }
 1009        
 1011        break;
 1012        }
 1013 
 1014        return super.OnSound(ctrl, oldValue);
 1015    }
 1016 
 1018    {
 1019        switch (selection)
 1020        {
 1021            case "doors_driver":
 1022                return "DoorsDriver";
 1023            case "doors_codriver":
 1024                return "DoorsCoDriver";
 1025            case "doors_cargo1":
 1026                return "DoorsCargo1";
 1027            case "doors_cargo2":
 1028                return "DoorsCargo2";
 1029            case "doors_hood":
 1030                return "DoorsHood";
 1031            case "doors_trunk":
 1032                return "DoorsTrunk";
 1033        }
 1034 
 1035        return "";
 1036    }
 1037 
 1039    {
 1040        return false;
 1041    }
 1042 
 1044    {
 1045        return false;
 1046    }
 1047    
 1049    {
 1050        switch (currentSeat)
 1051        {
 1052            case 0:
 1053                return nextSeat == 1;
 1054    
 1055            case 1:
 1056                return nextSeat == 0;
 1057    
 1058            case 2:
 1059                return nextSeat == 3;
 1060    
 1061            case 3:
 1062                return nextSeat == 2;
 1063        }
 1064        
 1065        return false;
 1066    }
 1067 
 1069    {
 1070        switch (pCurrentSeat)
 1071        {
 1072            case 0:
 1073                return pDoorsSelection == "DoorsDriver";
 1074    
 1075            case 1:
 1076                return pDoorsSelection == "DoorsCoDriver";
 1077    
 1078            case 2:
 1079                return pDoorsSelection == "DoorsCargo1";
 1080    
 1081            case 3:
 1082                return pDoorsSelection == "DoorsCargo2";
 1083        }
 1084        
 1085        return false;       
 1086    }
 1087 
 1089    {
 1090        SpawnUniversalParts();
 1091        SpawnAdditionalItems();
 1092        FillUpCarFluids();
 1093 
 1094        GetInventory().CreateInInventory("CivSedanWheel");
 1095        GetInventory().CreateInInventory("CivSedanWheel");
 1096        GetInventory().CreateInInventory("CivSedanWheel");
 1097        GetInventory().CreateInInventory("CivSedanWheel");
 1098 
 1099        GetInventory().CreateInInventory("CivSedanDoors_Driver");
 1100        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
 1101        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
 1102        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
 1103        GetInventory().CreateInInventory("CivSedanHood");
 1104        GetInventory().CreateInInventory("CivSedanTrunk");
 1105 
 1106        
 1107        GetInventory().CreateInInventory("CivSedanWheel");
 1108        GetInventory().CreateInInventory("CivSedanWheel");
 1109    }
 1110    
 1112    {
 1113        return 1.5;
 1114    }
 1115}
 1116 
 1118{
 1120    {
 1121        SpawnUniversalParts();
 1122        SpawnAdditionalItems();
 1123        FillUpCarFluids();
 1124 
 1125        GetInventory().CreateInInventory("CivSedanWheel");
 1126        GetInventory().CreateInInventory("CivSedanWheel");
 1127        GetInventory().CreateInInventory("CivSedanWheel");
 1128        GetInventory().CreateInInventory("CivSedanWheel");
 1129 
 1130        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
 1131        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
 1132        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
 1133        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
 1134        GetInventory().CreateInInventory("CivSedanHood_Wine");
 1135        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
 1136 
 1137        
 1138        GetInventory().CreateInInventory("CivSedanWheel");
 1139        GetInventory().CreateInInventory("CivSedanWheel");
 1140    }
 1141}
 1142 
 1144{
 1146    {
 1147        SpawnUniversalParts();
 1148        SpawnAdditionalItems();
 1149        FillUpCarFluids();
 1150 
 1151        GetInventory().CreateInInventory("CivSedanWheel");
 1152        GetInventory().CreateInInventory("CivSedanWheel");
 1153        GetInventory().CreateInInventory("CivSedanWheel");
 1154        GetInventory().CreateInInventory("CivSedanWheel");
 1155 
 1156        GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
 1157        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
 1158        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
 1159        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
 1160        GetInventory().CreateInInventory("CivSedanHood_Black");
 1161        GetInventory().CreateInInventory("CivSedanTrunk_Black");
 1162 
 1163        
 1164        GetInventory().CreateInInventory("CivSedanWheel");
 1165        GetInventory().CreateInInventory("CivSedanWheel");
 1166    }
 1167}
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.