• Ich bin mir nicht sicher, aber ich könnte mir vorstellen, dass...


    ...inputBinding.isPressed eine Taste/Binding wie z.B. W,A,S,D ist. Die Taste muss man auch gedrückt halten um zu fahren.


    ...inputBinding.hasEvent könnte dann eine Aktionstaste sein, die durch einmaliges drücken aktiviert wird. Z.B. bei den Standardgeräten die Taste X zum ausklappen.


    Ist nur ne Vermutung, kann auch sein, dass ich total daneben liege :P

  • ok ich habe ein Problem in einem Script.


    [lua]ballenwagen = {};


    function ballenwagen.prerequisitesPresent(specializations)
    return SpecializationUtil.hasSpecialization(Attachable, specializations);
    end;


    function ballenwagen:load(xmlFile)
    self.schiebena = false
    self.klappea = false



    end;
    function ballenwagen:readStream(streamId, connection)

    end;


    function ballenwagen:writeStream(streamId, connection)

    end;
    function ballenwagen:update(dt)

    end;


    function ballenwagen:updateTick(dt)
    if self:getIsActiveForInput() then
    if InputBinding.hasEvent(InputBinding.klappeoffnen) then
    self.klappea = true;
    end;


    if InputBinding.hasEvent(InputBinding.entladen) then
    if self.balesAttached == false and self.klappea == true then
    self.schiebena = true;
    else
    self.schiebena = false;
    renderText(0.5, 0.5, 0.05, "Ballen zum entladen loesen");
    end;
    end;
    end;
    end;


    function ballenwagen:draw()
    renderText(0.55, 0.08, 0.04, tostring(self.klappea));
    renderText(0.55, 0.08, 0.04, tostring(self.schiebena));

    end;


    function ballenwagen:onDetach()


    end;


    function ballenwagen:delete()


    end;


    function ballenwagen:mouseEvent(posX, posY, isDown, isUp, button)
    end;


    function ballenwagen:keyEvent(unicode, sym, modifier, isDown)


    end;
    [/lua]


    ich arbeite mit toggleanimatedparts (listenTo)
    es funktioniert nur nicht ganz.
    wenn ich ingame nun die taste für InputBinding.klappeoffnen drücke, öffnet sich auch die klappe, nur beim erneutem drücken geht sie nicht wieder zu??


    an was liegt das?


    Mit freundlichen Grüßen


    schlüter55v

  • ok was ich aber auch nicht verstehe ist folgendes.


    Ich drück die Taste für
    InputBinding.klappeoffnen


    welchen wert erhält denn nun das inputbinding?


    ich will es quassi auf die weise machen.


    [lua]if InputBinding.hasEvent(InputBinding.klappeoffnen) then
    x = x + 1;
    if x == 2 then
    x = 0
    end;
    end;


    if x > 0 then
    self.klappea = true;
    else
    self.klappea = false;
    end;
    [/lua]


    ich hab aber mal nen Thread gesehen, in dem geschrieben wurde, das dass mit den Zahlen umständlicher ist.
    Es muss doch auch anders gehen.
    Weil in manchen scripten, die auf der selben taste öffnen und schließen, ist auch nichts mit x = x +1?


    Wisst ihr was ich meine?

  • geht am einfachsten so:
    [lua]
    if InputBinding.hasEvent(InputBinding.klappeoffnen) then
    self.klappea = not self.klappea;
    end;
    [/lua]
    self.klappea muss im load bereich definiert werden und true oder false haben. beim drücken der taste wird der wert umgekehrt, aus true wird false und false - true.


    in deinem letzten beispiel mit den zahlen verwendet man eigentlich nur wenn man nacheinander aktionen aufrufen will.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!