Hallo, ich möchte das mein Trekker immer dann eine Aktion ausführt (und dann auch nur solang) wenn der angehängte Anhänger / das angehängte Anbaugerät kippt, zusammenklappt und arbeitet. Wie kann ich das abfragen?
Wie frage ich die Bewegung eines Anhängers/Anbaugerät ab??
- Pitzmann Tuning
- Geschlossen
-
-
Mh, das ist in erster Hinsicht ein wenig schwierig zu realisieren. Wenn, dann ist es nur bei den original Anbaugeräten möglich. GgF. auch bei Mods, die Teile der Orginalscripte nutzen.
-
Genau die wollt ich ansprechen, weißt Du wie? Fürn Anfang wär die Kippbewegung eines Hängers nicht schlecht...
-
Moin,
sowas allgemein zu schreiben ist quasi und möglich
Ob ein Hänger, soweit er über das Original-Script läuft, kannst du mit dieser abfrage lösen:
[lua]self.tipState = Trailer.TIPSTATE_OPENING[/lua]
Hiermit wird aber nur geprüft ob er sich öffnet, zum schließen dann:
[lua]self.tipState = Trailer.TIPSTATE_CLOSING[/lua]Bei vielen Anbaugeräten wird über [lua]self.isTurnedOn[/lua] festgelegt ob die Maschine läuft oder nicht, es gibt aber auch etliche wo es anders gelöst wird
-
Wenn ich jetzt anstatt InputBinding diese Funktion abfragen möchte, wie muß es dann aussehen?
[lua]function setVehicleRpm:update(dt)
if self.isMotorStarted and self:getIsActiveForInput() and self.isEntered then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = not self.engine;
else
self.engine = self.engine;
end;
end;
end;[/lua] -
[lua]function setVehicleRpm:update(dt)
if self:getIsActiveForInput() then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = true;
else
self.engine = false;
end; -- true und false ergeben hier mehr Sinn
end;
if self:getIsActive() then
for _, implement in pairs(self.attachedImplements)
if implement.object.tipState = Trailer.TIPSTATE_CLOSING or implement.object.tipState = Trailer.TIPSTATE_OPENING or implement.object.isTurnedOn then
self.engine = true;
else
self.engine = false;
end;
end;
end;
end;[/lua]So in der Art. Den andern Code hab ich auch mal ein wenig überarbeitet
-
Erst mal vielen Dank für Deine Hilfe!!
Hab das mal so versucht: Die LOG verlangt in Reihe 12 ein do in der Nähe von if. Wenn ich eins einfüge sagt mir die Log das in Reihe 12 ein then anstatt einem = erwartet wird...
-
Oh, da fehlt ein do Sorry:
[lua]function setVehicleRpm:update(dt)
if self:getIsActiveForInput() then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = true;
else
self.engine = false;
end; -- true und false ergeben hier mehr Sinn
end;
if self:getIsActive() then
for _, implement in pairs(self.attachedImplements) do
if implement.object.tipState = Trailer.TIPSTATE_CLOSING or implement.object.tipState = Trailer.TIPSTATE_OPENING or implement.object.isTurnedOn then
self.engine = true;
else
self.engine = false;
end;
end;
end;
end;[/lua] -
Das do hatte ich probiert, dann sagt die LOG: 'then' expected near '=' für Reihe 12...
-
[lua]function setVehicleRpm:update(dt)
if self:getIsActiveForInput() then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = true;
else
self.engine = false;
end; -- true und false ergeben hier mehr Sinn
end;
if self:getIsActive() then
for _, implement in pairs(self.attachedImplements) do
if implement.object.tipState == Trailer.TIPSTATE_CLOSING or implement.object.tipState == Trailer.TIPSTATE_OPENING or implement.object.isTurnedOn then
self.engine = true;
else
self.engine = false;
end;
end;
end;
end;[/lua] -
ICH WERD VERRÜCKT, DAS GEHT JA!!!
:woot: :woot: :woot:
Vielen, vielen Dank!!!
Ich hab schon fast nicht mehr dran geglaubt das man das machen kann!!
Ich versuch grad ne Speci zu erstellen die bei arbeiten der Anbaugeräte die Drehzahl von dem Trekker erhöht. Darf ich Deinen Namen mit reinschreiben, da ich das ja ohne Dich nicht hinbekommen hätte??Und dann hätt ich noch fast drei Fragen:
-Kann man das jetzt noch ausschließen wenn der Trekker fährt?
-Kannst Du da auch noch das zusammenklappen eines Anbaugeräts mithineinnehmen?
-Ich hab festgestellt das wenn ich zwei Geräte (vorn und Hinten) dran hab er die Aktion nur für eins ausführt und das andere gar nicht beachtet -
Du kannst mich nennen, musst du aber nicht.
Ich bin nicht sicher ob das mit dem Klappen so funktioniert, kannst es ja mal probieren. Auch mehrere Geräte sollten jetzt korrekt erfasst werden:
[lua]function setVehicleRpm:update(dt)
if self:getIsActiveForInput() then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = true;
else
self.engine = false;
end;
end;
if self:getIsActive() then
self.engine = false;
for _, implement in pairs(self.attachedImplements) do
--foldable
if self.foldAnimTime ~= nil then
if implement.object.foldAnimTime < 0.999 or implement.object.foldAnimTime > 0.001 then
self.engine = true;
end;
end;
if implement.object.tipState == Trailer.TIPSTATE_CLOSING or implement.object.tipState == Trailer.TIPSTATE_OPENING or implement.object.isTurnedOn then
self.engine = true;
end;
end;
end;
end;[/lua] -
Würd ich schon gern tun... Unter Deinem hiesigen Benutzername?
Mehrere Geräte funktionieren jetzt tadellos!!
Nur die Funktion für das Zusammenklappen funktioniert so nicht...
Hab dann das ganze mal ohne Reihe 15 probiert, passiert aber au nix...
Ohne Reihe 14 ist die Drehzahl dann dauerhaft erhöht solange das Anbaugerät angehängt ist... -
Ja, wenn dann unter John Deere 6930
Probiers hiermit nochmal, hoffe das lag an den Flüchtigkeitsfehlern
[lua]function setVehicleRpm:update(dt)
if self:getIsActiveForInput() then
if InputBinding.isPressed(InputBinding.setVehicleRpmpress) then
self.engine = true;
else
self.engine = false;
end;
end;
if self:getIsActive() then
self.engine = false;
for _, implement in pairs(self.attachedImplements) do
if implement.object.foldAnimTime ~= nil then
if implement.object.foldAnimTime > 0.1 and implement.object.foldAnimTime < 0.9 then
self.engine = true;
end;
end;
if implement.object.tipState == Trailer.TIPSTATE_CLOSING or implement.object.tipState == Trailer.TIPSTATE_OPENING or implement.object.isTurnedOn then
self.engine = true;
end;
end;
end;
end;[/lua] -
Is ja Wahnsinn!!! :sekt: :sekt: Danke!!!
Hab die Zahlen noch bissle verändert, da es etwas gedauert hat bis die Drehzahl erhöht wurde. Sie wurde auch früher beendet, aber jetzt passts...
[lua] if implement.object.foldAnimTime > 0 and implement.object.foldAnimTime < 1 then[/lua]
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!