Okej, såhär ser det ut nu. Det funkar betydligt bättre! Och trainemessive är verkligen natt och dag för lamporna. Tack för tipset Mawkish
1. Jag kör LogMate, men får inte ut något debugmeddelande från skriptet. Vart går print eller hur får jag meddelandena att dyka upp i LogMate? Försökte göra som i class390.
2.hlcontrolpos == 0 och hlcontrolpos == 1 funkar, hlcontrolpos == 2 eller högre ändrar inget. Lamporna stannar i konfigurationen som ges av lightsOFF().
Jag hade innan 6st konfigurationen men har bantat ner det till 3 för att debugga.
Kontrolvärdet har:
name: Headlights
default value: 0
min value: 0
max value: 2
..och en internal notched lever med 3 notches.
3. Funkar Activate Node på child objekt också, dvs kan jag använda det för att slå av/på ljuset?
Fortsätter testa mig framåt
PHP-kod:
gInit=false
DEBUG = true
function DebugPrint(msg)
if DEBUG then
Print(msg)
end
end
function Initialise ()
Call("BeginUpdate")
end
function safeInitialise()
LightsOFF()
end
function LightsOFF()
--Geometri för tända lampor
Call("*:ActivateNode","hlaon",0) --Geometri nedre:yttre:påslagen
Call("*:ActivateNode","hlbon",0) --Geometri nedre:inre:påslagen
Call("*:ActivateNode","hlcon",0) --Geometri övre:inre:påslagen
Call("*:ActivateNode","hldon",0) --Geometri slutljus:påslagen
--Geometri för släkta lampor
Call("*:ActivateNode","hlaoff",1) --Geometri nedre:yttre:frånslagen
Call("*:ActivateNode","hlboff",1) --Geometri nedre:inre:frånslagen
Call("*:ActivateNode","hlcoff",1) --Geometri övre:inre:frånslagen
Call("*:ActivateNode","hldoff",1) --Geometri slutljus:frånslagen
end
function LightsON(hlcontrolpos)
LightsOFF()
Print("DEBUG: LightsOn - start")
if hlcontrolpos==0 then
Print("DEBUG: hlccontrolpos == 0")
Call("*:ActivateNode","hlaon",0)
Call("*:ActivateNode","hlbon",0)
Call("*:ActivateNode","hlcon",0)
Call("*:ActivateNode","hldon",1)
Call("*:ActivateNode","hlaoff",1)
Call("*:ActivateNode","hlboff",1)
Call("*:ActivateNode","hlcoff",1)
Call("*:ActivateNode","hldoff",0)
elseif hlcontrolpos==1 then
Print("DEBUG: hlccontrolpos == 1")
Call("*:ActivateNode","hlaon",1)
Call("*:ActivateNode","hlbon",1)
Call("*:ActivateNode","hlcon",0)
Call("*:ActivateNode","hldon",0)
Call("*:ActivateNode","hlaoff",0)
Call("*:ActivateNode","hlboff",0)
Call("*:ActivateNode","hlcoff",1)
Call("*:ActivateNode","hldoff",1)
elseif hlControlpos==2 then
Print("DEBUG: hlccontrolpos == 2")
Call("*:ActivateNode","hlaon",1)
Call("*:ActivateNode","hlbon",1)
Call("*:ActivateNode","hlcon",1)
Call("*:ActivateNode","hldon",0)
Call("*:ActivateNode","hlaoff",0)
Call("*:ActivateNode","hlboff",0)
Call("*:ActivateNode","hlcoff",0)
Call("*:ActivateNode","hldoff",1)
end
Print("DEBUG: LightsOn - end")
end
function OnControlValueChange ( name, index, value)
Print (("DEBUG: OnControlValueChange - name = " .. name .. ", index = " .. index .. ",value = " .. value))
if Call( "*:ControlExists", name, index ) then
if name=="Headlights" then
Print (("DEBUG: OnControlValueChange - Headlights, value = " .. value))
LightsON(value)
end
end
Call( "*:SetControlValue", name, index, value)
end
function Update(dTime)
if gInit==false then
gInit=true
safeInitialise()
end
end
hlcontrolpos 1 och 0. Ingen verklighetsåterkoppling, bara för test. Inte ställt in glow-effekten.
05.jpg