714{
  718 
  720    {
  721        
  722        
  723        m_EngineStartOK         = "CivilianSedan_engine_start_SoundSet";
  724        m_EngineStartBattery    = "CivilianSedan_engine_failed_start_battery_SoundSet";
  725        m_EngineStartPlug       = "CivilianSedan_engine_failed_start_sparkplugs_SoundSet";
  726        m_EngineStartFuel       = "CivilianSedan_engine_failed_start_fuel_SoundSet";
  727        m_EngineStop            = "CivilianSedan_engine_stop_SoundSet";
  728        m_EngineStopFuel        = "CivilianSedan_engine_stop_fuel_SoundSet";
  729 
  730        m_CarDoorOpenSound      = "offroad_door_open_SoundSet";
  731        m_CarDoorCloseSound     = "offroad_door_close_SoundSet";
  732        
  733        m_CarHornShortSoundName = "CivilianSedan_Horn_Short_SoundSet";
  734        m_CarHornLongSoundName  = "CivilianSedan_Horn_SoundSet";
  735        
  736        SetEnginePos("0 0.7 1.6");
  737    }
  738    
  740    {       
  741        super.EEInit();
  742        
  744        {
  751            
  754        }       
  755    }
  756    
  758    {
  759        super.OnEngineStart();
  760 
  762        {
  764        }
  765    }
  766    
  768    {
  769        super.OnEngineStop();
  770 
  772        {
  774        }
  775    }
  776    
  778    {
  780        {
  782            {
  784            }
  785        }
  786    }
  787    
  789    {
  791    }
  792    
  794    {
  795        return 4.5;
  796    }
  797 
  799    {
  800        switch (posIdx)
  801        {
  802        case 0:
  804        case 1:
  806        case 2:
  808        case 3:
  810        }
  811 
  812        return 0;
  813    }
  814    
  815    
  817    {
  819    }
  820    
  821    
  823    {
  825    }
  826    
  828    {
  829        if( !super.CanReleaseAttachment( attachment ) )
  830            return false;
  831        
  832        string attType = attachment.GetType();
  833        
  835        {
  836            if ( attType == "CarRadiator" || attType == "CarBattery" || attType == "SparkPlug")
  837                return false;
  838        }
  839 
  840        return true;
  841    }
  842 
  844    {
  846    }
  847    
  849    {
  850        
  851        if (!super.CanDisplayAttachmentCategory(category_name))
  852            return false;
  853        
  854    
  856        if (category_name.
Contains(
"engine"))
 
  857        {
  859                return false;
  860        }
  861                
  862        return true;
  863    }
  864    
  866    {
  867        if ( !super.CanDisplayCargo() )
  868            return false;
  869        
  871            return false;
  872        
  873        return true;
  874    }
  875    
  877    {
  879 
  880        Class.
CastTo( carDoor, FindAttachmentBySlotName( slotType ) );
 
  881        if (!carDoor)
  882        {
  884        }
  885    
  886        switch (slotType)
  887        {
  888        case "CivSedanDriverDoors":
  889            return TranslateAnimationPhaseToCarDoorState("DoorsDriver");
  890            break;
  891        
  892        case "CivSedanCoDriverDoors":
  893            return TranslateAnimationPhaseToCarDoorState("DoorsCoDriver");
  894            break;
  895 
  896        case "CivSedanCargo1Doors":
  897            return TranslateAnimationPhaseToCarDoorState("DoorsCargo1");
  898            break;
  899 
  900        case "CivSedanCargo2Doors":
  901            return TranslateAnimationPhaseToCarDoorState("DoorsCargo2");
  902            break;
  903        
  904        case "CivSedanTrunk":
  905            return TranslateAnimationPhaseToCarDoorState("DoorsTrunk");
  906            break;
  907        
  908        case "CivSedanHood":
  909            return TranslateAnimationPhaseToCarDoorState("DoorsHood");
  910            break;
  911        }
  912 
  914    }
  915    
  916 
  918    {
  919        switch( posIdx )
  920        {
  921            case 0:
  923                    return false;
  924 
  925                return true;
  926            break;
  927            
  928            case 1:
  930                    return false;
  931 
  932                return true;
  933            break;
  934 
  935            case 2:
  937                    return false;
  938 
  939                return true;
  940            break;
  941 
  942            case 3:
  944                    return false;
  945 
  946                return true;
  947            break;
  948        }
  949 
  950        return false;
  951    }
  952 
  954    {
  955        switch( posIdx )
  956        {
  957        case 0:
  958            return "doors_driver";
  959        break;
  960        case 1:
  961            return "doors_codriver";
  962        break;
  963        case 2:
  964            return "doors_cargo1";
  965        break;
  966        case 3:
  967            return "doors_cargo2";
  968        break;
  969        }
  970        
  971        return super.GetDoorSelectionNameFromSeatPos(posIdx);
  972    }
  973 
  975    {
  976        switch( posIdx )
  977        {
  978        case 0:
  979            return "CivSedanDriverDoors";
  980        break;
  981        case 1:
  982            return "CivSedanCoDriverDoors";
  983        break;
  984        case 2:
  985            return "CivSedanCargo1Doors";
  986        break;
  987        case 3:
  988            return "CivSedanCargo2Doors";
  989        break;
  990        }
  991        
  992        return super.GetDoorInvSlotNameFromSeatPos(posIdx);
  993    }
  994 
  995    
  996    
  998    {
  999        switch (ctrl)
 1000        {
 1002            float newValue = 0;
 1004            {
 1005                newValue += 0.25;
 1006            }
 1007 
 1009            {
 1010                newValue += 0.25;
 1011            }
 1012        
 1014            {
 1015                newValue += 0.25;
 1016            }
 1017 
 1019            {
 1020                newValue += 0.25;
 1021            }
 1022        
 1024            {
 1025                newValue -= 0.6;
 1026            }
 1027 
 1029            {
 1030                newValue -= 0.6;
 1031            }
 1032        
 1034        break;
 1035        }
 1036 
 1037        return super.OnSound(ctrl, oldValue);
 1038    }
 1039 
 1041    {
 1042        switch (selection)
 1043        {
 1044            case "doors_driver":
 1045                return "DoorsDriver";
 1046            case "doors_codriver":
 1047                return "DoorsCoDriver";
 1048            case "doors_cargo1":
 1049                return "DoorsCargo1";
 1050            case "doors_cargo2":
 1051                return "DoorsCargo2";
 1052            case "doors_hood":
 1053                return "DoorsHood";
 1054            case "doors_trunk":
 1055                return "DoorsTrunk";
 1056        }
 1057 
 1058        return "";
 1059    }
 1060 
 1062    {
 1063        return false;
 1064    }
 1065 
 1067    {
 1068        return false;
 1069    }
 1070    
 1072    {
 1073        switch (currentSeat)
 1074        {
 1075            case 0:
 1076                return nextSeat == 1;
 1077    
 1078            case 1:
 1079                return nextSeat == 0;
 1080    
 1081            case 2:
 1082                return nextSeat == 3;
 1083    
 1084            case 3:
 1085                return nextSeat == 2;
 1086        }
 1087        
 1088        return false;
 1089    }
 1090 
 1092    {
 1093        switch (pCurrentSeat)
 1094        {
 1095            case 0:
 1096                return pDoorsSelection == "DoorsDriver";
 1097    
 1098            case 1:
 1099                return pDoorsSelection == "DoorsCoDriver";
 1100    
 1101            case 2:
 1102                return pDoorsSelection == "DoorsCargo1";
 1103    
 1104            case 3:
 1105                return pDoorsSelection == "DoorsCargo2";
 1106        }
 1107        
 1108        return false;       
 1109    }
 1110 
 1112    {
 1113        SpawnUniversalParts();
 1114        SpawnAdditionalItems();
 1115        FillUpCarFluids();
 1116 
 1117        GetInventory().CreateInInventory("CivSedanWheel");
 1118        GetInventory().CreateInInventory("CivSedanWheel");
 1119        GetInventory().CreateInInventory("CivSedanWheel");
 1120        GetInventory().CreateInInventory("CivSedanWheel");
 1121 
 1122        GetInventory().CreateInInventory("CivSedanDoors_Driver");
 1123        GetInventory().CreateInInventory("CivSedanDoors_CoDriver");
 1124        GetInventory().CreateInInventory("CivSedanDoors_BackLeft");
 1125        GetInventory().CreateInInventory("CivSedanDoors_BackRight");
 1126        GetInventory().CreateInInventory("CivSedanHood");
 1127        GetInventory().CreateInInventory("CivSedanTrunk");
 1128 
 1129        
 1130        GetInventory().CreateInInventory("CivSedanWheel");
 1131        GetInventory().CreateInInventory("CivSedanWheel");
 1132    }
 1133    
 1135    {
 1136        return 1.5;
 1137    }
 1138}
 1139 
 1141{
 1143    {
 1144        SpawnUniversalParts();
 1145        SpawnAdditionalItems();
 1146        FillUpCarFluids();
 1147 
 1148        GetInventory().CreateInInventory("CivSedanWheel");
 1149        GetInventory().CreateInInventory("CivSedanWheel");
 1150        GetInventory().CreateInInventory("CivSedanWheel");
 1151        GetInventory().CreateInInventory("CivSedanWheel");
 1152 
 1153        GetInventory().CreateInInventory("CivSedanDoors_Driver_Wine");
 1154        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Wine");
 1155        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Wine");
 1156        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Wine");
 1157        GetInventory().CreateInInventory("CivSedanHood_Wine");
 1158        GetInventory().CreateInInventory("CivSedanTrunk_Wine");
 1159 
 1160        
 1161        GetInventory().CreateInInventory("CivSedanWheel");
 1162        GetInventory().CreateInInventory("CivSedanWheel");
 1163    }
 1164}
 1165 
 1167{
 1169    {
 1170        SpawnUniversalParts();
 1171        SpawnAdditionalItems();
 1172        FillUpCarFluids();
 1173 
 1174        GetInventory().CreateInInventory("CivSedanWheel");
 1175        GetInventory().CreateInInventory("CivSedanWheel");
 1176        GetInventory().CreateInInventory("CivSedanWheel");
 1177        GetInventory().CreateInInventory("CivSedanWheel");
 1178 
 1179        GetInventory().CreateInInventory("CivSedanDoors_Driver_Black");
 1180        GetInventory().CreateInInventory("CivSedanDoors_CoDriver_Black");
 1181        GetInventory().CreateInInventory("CivSedanDoors_BackLeft_Black");
 1182        GetInventory().CreateInInventory("CivSedanDoors_BackRight_Black");
 1183        GetInventory().CreateInInventory("CivSedanHood_Black");
 1184        GetInventory().CreateInInventory("CivSedanTrunk_Black");
 1185 
 1186        
 1187        GetInventory().CreateInInventory("CivSedanWheel");
 1188        GetInventory().CreateInInventory("CivSedanWheel");
 1189    }
 1190}
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.