ariogato / Koramu

A selfmade 2D RPG
5 stars 0 forks source link

Größen von GameObjects mit Lua skalieren #57

Closed ariogato closed 7 years ago

ariogato commented 7 years ago

Um z.B. die Darstellung von Buttons an niedrigere Bildschirmauflösungen anzupassen, brauchen wir Funktionen, die es uns ermöglichen width & height eines SDL_GameObjects (auch Button) über ein Lua Skript zu verändern.

Um dies zu implementieren müssen in den Registrations der betroffenen Klassen neue Methoden hinzugefügt werden. Sowohl getter und setter Methoden müssen für width & height der Objekte erstellt werden.

Setter:

  1. Die Referenz auf das Objekt muss mit Hilfe von checkAndGet...() aus den Argumenten vom Lua-Stack geholt werden.
  2. Der int Wert für jeweils Breite oder Höhe muss mit lua_tointeger() aus den Argumenten vom Lua-Stack geholt werden.
  3. Die Breite/Höhe muss über eine Funktion setWidth()/setHeight() dem Objekt übergeben werden. (Anmerkung: Die setter-Funktionen müssen für SDL_GameObject implementiert werden)

Getter:

    1. Die Referenz auf das Objekt muss mit Hilfe von checkAndGet...() aus den Argumenten vom Lua-Stack geholt werden.
  1. Die Breite/Höhe des Objekts muss mit Hilfe von "lua_pushinteger()" auf den Stack gepusht werden.
  2. return 1; gibt an, dass ein Wert von der Funktion zurückgegeben wird.

Zum Schluss:

Die Methoden in der Funktion registerToLua() zu regs hinzufügen!!!