supermax писал(а):АКБ - это про аккумуляторную батарею речь?
Да.
function Initialise ()
prevBatteryTime = 0
source1 = 0
source2 = 0
source3 = 0
source4 = 0
source5 = 0
source6 = 0
chargeBattery = 0
end
function OnControlValueChange(name, index, value)
if(name == "tm_LightingChassis") then
if(value == 1) then
Call("Wheel01_Left_Light:Activate", 1)
Call("Wheel01_Right_Light:Activate", 1)
Call("Wheel02_Left_Light:Activate", 1)
Call("Wheel02_Right_Light:Activate", 1)
Call("Wheel03_Left_Light:Activate", 1)
Call("Wheel03_Right_Light:Activate", 1)
Call("Wheel04_Left_Light:Activate", 1)
Call("Wheel04_Right_Light:Activate", 1)
source1 = 0.0008
else
Call("Wheel01_Left_Light:Activate", 0)
Call("Wheel01_Right_Light:Activate", 0)
Call("Wheel02_Left_Light:Activate", 0)
Call("Wheel02_Right_Light:Activate", 0)
Call("Wheel03_Left_Light:Activate", 0)
Call("Wheel03_Right_Light:Activate", 0)
Call("Wheel04_Left_Light:Activate", 0)
Call("Wheel04_Right_Light:Activate", 0)
source1 = 0
end
end
end
function Update(time)
simulationTime = Call( "*:GetSimulationTime") --время начала симуляции
--------------------------------------------------------------------------------------
--Зарядка батареи при включённом МВ---------------------------------------------------
if(Call( "*:GetControlValue", "vnt_low", 0 ) == 1 and Call("*:GetControlValue", "Voltmeter_battery", 0) < 50) then
chargeBattery = 0.0036
elseif(Call( "*:GetControlValue", "vnt_hight", 0 ) == 1 and Call("*:GetControlValue", "Voltmeter_battery", 0) < 50) then
chargeBattery = 0.0048
else
chargeBattery = 0
end
--------------------------------------------------------------------------------------
--Симуляция вольтметра батареи--------------------------------------------------------
if(simulationTime >= prevBatteryTime + 1) then
Call("*:SetControlValue", "Voltmeter_battery", 0, Call("*:GetControlValue", "Voltmeter_battery", 0) - source1 - source2 - source3 - source4 - source5 - source6 + chargeBattery)
prevBatteryTime = simulationTime
--------------------------------------------------------------------------------------
--Изменение интенсивности освещения в зависимости от заряда батареи------------------
Call( "Front_Light_dim:SetRange", 1.02 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Front_Light_bright:SetRange", 4.09 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "CabLight_bright:SetRange", 0.1 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "CabLight_bright2:SetRange", 0.1 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "CabLight_dim:SetRange", 0.04 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "CabLight_dim2:SetRange", 0.04 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel01_Left_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel01_Right_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel02_Left_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel02_Right_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel03_Left_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel03_Right_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel04_Left_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "Wheel04_Right_Light:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "LeftBufer:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
Call( "RightBufer:SetRange", 0.2 * Call("*:GetControlValue", "Voltmeter_battery", 0))
end
-- идентификаторы сообщений для SendConsistMessage
LOCO_ID = 313101200
RETURN_V0 = LOCO_ID + 4
Вернуться в [RW] Другие вопросы
Сейчас этот форум просматривают: Claude [Bot] и гости: 0