Hi...
Ich habe in einen Mod die Ic Components eingebaut, zum einen die zusätzlichen Cameras und auch die "normalen" IC Buttons. Es handelt sich dabei um die StandartSelbstfahrspritze, als Mod. Zudem hat sie modelleichers "wheelScale.LUA" eingebaut bekommen.
Die wheelScale funktioniert auch ohne Probleme, wird im Mod auch vor den IC Einträgen geladen.
Die ICs funktionieren,bis auf einer, auch ohne Problem, folgende Dinge werden per IC (zusätzlich) bedient:
-Licht an/aus
-Fernlicht an/aus
-Arbeitslichter (es sind 3 verbaut, einzeln zu schalten um keine LOG fehler zu bekommen, klappt auch)
-Spritze aufklappen/zuklappen
-Rundumleuchten an/aus
-Spritze an/ausschalten
diese IC bedienungen funktionieren alle, mit Texten usw.
Nur der IC für die wheelScale geht nicht.
Vielleicht kann mir da jemand weiterhelfen, damit ich auch verstehe warum es nicht geht. Die IC skripte stammen aus dem Lexion 770, die IC Button.LUA muss ja angepasst werden an die unterschiedlichen Buttons. Dort gebe ich jetzt mal die Zeilen für die Lichter/RUL und das anschalten der Spritze
[lua]
function Button:update(dt)
if self.vehicle ~= nil then
if self.event == "toggleHighbeam" then --Fernlicht
self.isOpen = self.vehicle.B3["highbeam"][1].a;
elseif self.event == "toggleBeaconLights" then --Rundumleuchten
self.isOpen = self.vehicle.beaconLightsActive;
elseif self.event == "toggleLight" then --normales Licht
self.isOpen = self.vehicle.lightsActive;
elseif self.event == "toggleSprayerActivate" then --Sprayer anschalten
self.isOpen = self.vehicle.isTurnedOn;
end;
end;
function Button:doAction(noEventSend, forceAction)
if self.vehicle ~= nil then
if self.event == "toggleHighbeam" then --Fernlicht
if forceAction == nil then
local lt = self.vehicle.B3["highbeam"];
self.vehicle:setState("highbeam", not lt[1].a, true); --hier wird dann je nach zustand umgeschaltet zwischen
else
self.vehicle:setState("highbeam", forceAction, true); --State true or not true, also an/aus
end;
elseif self.event == "toggleBeaconLights" then --Rundumleuchten
if self.vehicle ~= nil then
if self.vehicle.beaconLightsActive then
self.vehicle:setBeaconLightsVisibility(false); --hier wie in StandartSpezi set Visibility false/true
else
self.vehicle:setBeaconLightsVisibility(true);
end;
end;
elseif self.event == "toggleLight" then --normales Licht
if self.vehicle ~= nil then
if self.vehicle.lightsActive then
self.vehicle:setLightsVisibility(false); --hier wie in StandartSpezi set Visibility false/true
else
self.vehicle:setLightsVisibility(true);
end;
end;
elseif self.event == "toggleSprayerActivate" then --Spritze anschalten
if self.vehicle ~= nil then
if self.vehicle.isTurnedOn then
self.vehicle:setIsTurnedOn(false); --wie in Standartspezi "isTurnedON) true/false
else
self.vehicle:setIsTurnedOn(true);
end;
[/lua]
das klappt auch alles, die Texte werden auch richtig angezeigt, mit anschalten oder ausschalten.
Nun das Problem mit der "wheelScale", da ist der Status beim laden "false", der Button zeigt mit auch den Text für "aufziehen" korrekt an, beim klicken passiert aber nix, wenn ich über den definierten InputBinding die wheelScale setze, also Reifen scaliere und dann auf den IC Button gehe, dann zeigt er mir auch den Text an, für "abziehen" der Räder, also das IC Skript erkennt den Status, setzt ihn dann aber halt nicht von false auf true bzw umgekehrt.
Und das müsste mir mal jemand erklären, bitte... ich habe es im IC Skript zur zeit so stehen:
[lua]update(dt)
elseif self.event == "toggleCareTyreIC" then --unter die oben reinkopierten events,
self.isOpen = self.vehicle.wheelScaleState;
end;
doAction(noEventSend, forceAction)
elseif self.event == "toggleCareTyreIC" then
if self.vehicle ~= nil then
if self.vehicle.wheelScaleState then
self.vehicle:setWheelScaleState(true);
else
self.vehicle:setWheelScaleState(false);
end;
end;
[/lua]
So sieht es zur zeit aus... habe es auch schon nur mit
[lua]
self.wheelScaleState(true);
[/lua]
versucht, ging aber auch nicht. Oder funktioniert das so einfach nicht wie ich das Versuche???
Die Variable sollte er ja kenne, da die "wheelScale.LUA" vor den Ic Skripten geladen wird, und somit sollte sie doch wie bei den Standart Spezis auch bekannt sein, oder?
Wenn mir da jemand helfen kann, bin ich dankbar, es wäre auch nett wenn ich dann nicht einfach nen Code bekommen, sondern es mir auch erklärt wird, damit auch ich es verstehe.
Achso, die LOG ist sauber, keine Einträge das Fehler vorhanden sind.