DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ UpdateLightsServer()

void Car::UpdateLightsServer ( int newGear = -1)
inlineprotected

См. определение в файле CarScript.c строка 1974

1975 {
1976 int gear;
1977
1978 if (newGear == -1)
1979 {
1980 gear = GetGear();
1981 if (GearboxGetType() == CarGearboxType.AUTOMATIC)
1982 {
1983 gear = GearboxGetMode();
1984 }
1985 }
1986 else
1987 {
1988 gear = newGear;
1989 }
1990
1991 if (LightIsOn())
1992 {
1993 m_LightsComponent.SetSelectionMaterial("DashboardOn");
1994
1995 switch (m_HeadlightsState)
1996 {
1997 case CarHeadlightBulbsState.LEFT:
1998 m_LightsComponent.SetSelectionMaterial("TailLeftOnly");
1999 m_LightsComponent.SetSelectionMaterial("FrontLeftOn");
2000 m_LightsComponent.SetSelectionMaterial("FrontRightOff");
2001 break;
2002 case CarHeadlightBulbsState.RIGHT:
2003 m_LightsComponent.SetSelectionMaterial("TailRightOnly");
2004 m_LightsComponent.SetSelectionMaterial("FrontLeftOff");
2005 m_LightsComponent.SetSelectionMaterial("FrontRightOn");
2006 break;
2007 case CarHeadlightBulbsState.BOTH:
2008 m_LightsComponent.SetSelectionMaterial("TailOn");
2009 m_LightsComponent.SetSelectionMaterial("FrontLeftOn");
2010 m_LightsComponent.SetSelectionMaterial("FrontRightOn");
2011 break;
2012 default:
2013 m_LightsComponent.SetSelectionMaterial("FrontLeftOff");
2014 m_LightsComponent.SetSelectionMaterial("FrontRightOff");
2015 }
2016
2017 //Debug.Log(string.Format("LightIsOn=%1, m_HeadlightsState=%2", LightIsOn().ToString(), EnumTools.EnumToString(CarHeadlightBulbsState, m_HeadlightsState)));
2018 }
2019 else
2020 {
2021 m_LightsComponent.SetSelectionMaterial("TailOff");
2022 m_LightsComponent.SetSelectionMaterial("DashboardOff");
2023 m_LightsComponent.SetSelectionMaterial("FrontLeftOff");
2024 m_LightsComponent.SetSelectionMaterial("FrontRightOff");
2025 }
2026
2027
2028 // brakes & reverse
2029 switch (gear)
2030 {
2031 case CarGear.REVERSE:
2034 m_RearLightType = CarRearLightType.BRAKES_AND_REVERSE;
2035 else
2036 m_RearLightType = CarRearLightType.REVERSE_ONLY;
2037 break;
2038 default:
2040 m_RearLightType = CarRearLightType.BRAKES_ONLY;
2041 else
2042 m_RearLightType = CarRearLightType.NONE;
2043 }
2044
2045 //Debug.Log(string.Format("m_BrakesArePressed=%1, m_RearLightType=%2", m_BrakesArePressed.ToString(), EnumTools.EnumToString(CarRearLightType, m_RearLightType)));
2046
2047
2048 // rear lights
2049 if (m_RearLightType != CarRearLightType.NONE && m_HeadlightsState != CarHeadlightBulbsState.NONE)
2050 {
2051 switch (m_RearLightType)
2052 {
2053 case CarRearLightType.BRAKES_ONLY:
2054 m_LightsComponent.SetSelectionMaterial("ReverseOff");
2055 m_LightsComponent.SetSelectionMaterial("BrakesOn");
2056 break;
2057 case CarRearLightType.REVERSE_ONLY:
2058 if (EngineIsOn())
2059 {
2060 m_LightsComponent.SetSelectionMaterial("ReverseOn");
2062 m_LightsComponent.SetSelectionMaterial("BrakesOff");
2063 }
2064 else
2065 {
2066 m_LightsComponent.SetSelectionMaterial("ReverseOff");
2067 m_LightsComponent.SetSelectionMaterial("BrakesOff");
2068 }
2069 break;
2070 case CarRearLightType.BRAKES_AND_REVERSE:
2071 if (EngineIsOn())
2072 {
2073 m_LightsComponent.SetSelectionMaterial("BrakesOn");
2074 m_LightsComponent.SetSelectionMaterial("ReverseOn");
2075 }
2076 else
2077 {
2078 m_LightsComponent.SetSelectionMaterial("ReverseOff");
2079 m_LightsComponent.SetSelectionMaterial("BrakesOn");
2080 }
2081 break;
2082 default:
2083 m_LightsComponent.SetSelectionMaterial("ReverseOff");
2084
2086 m_LightsComponent.SetSelectionMaterial("BrakesOff");
2087 }
2088 }
2089 else
2090 {
2091 m_LightsComponent.SetSelectionMaterial("ReverseOff");
2092
2094 m_LightsComponent.SetSelectionMaterial("BrakesOff");
2095 }
2096 }
CarAutomaticGearboxMode
Enumerated automatic gearbox modes. (native, do not change or extend)
Определения Car.c:58
CarGearboxType
Enumerated gearbox types. (native, do not change or extend)
Определения Car.c:24
proto native CarGearboxType GearboxGetType()
Returns gearbox type. See CarGearboxType enum for more info.
proto native CarAutomaticGearboxMode GearboxGetMode()
Returns gearbox mode. This is useful when motorbike has automatic gearbox.
proto native bool EngineIsOn()
Returns true when engine is running, false otherwise.
proto native int GetGear()
Returns the index of the future gear, -1 if there is no engine.
ref VehicleLightsComponent m_LightsComponent
Определения CarScript.c:187
bool HasGangedTailAndBrakeLights()
Определения CarScript.c:468
bool m_BrakesArePressed
Определения CarScript.c:2774

Перекрестные ссылки EngineIsOn(), GearboxGetMode(), GearboxGetType(), GetGear(), HasGangedTailAndBrakeLights(), m_BrakesArePressed и m_LightsComponent.