Text und Zahlen#

Score/Spielstatus#

In many games, you want to display the current score or other status indicators.

Miniworlds bietet dafür spezielle Akteure wie Text- oder Number-Akteure, die dir helfen, Informationen anzuzeigen.

Text erstellen#

To display a text, you can proceed as follows:

text = miniworlds.Text(position, string)
  • position: A tuple that defines the top-left corner of the text.

  • string: Der anzuzeigende Text.

Bemerkung

In einer normalen World wird der Text automatisch skaliert. In einer Tiledworld wird der Text in einer Kachel angezeigt, was bei längeren Texten zu Platzproblemen führen kann.

Example:#

import miniworlds 

world = miniworlds.World(400, 400)
hallo_welt = Text((100, 100), "Hallo Welt!")

world.run()
Textbeispiel

Text ändern#

You can adjust the displayed text at any time using the text attribute.

The following example shows the last key press:

from miniworlds import World, Text

world = World(400, 400)
key_display = Text((100, 100), "")

@key_display.register
def on_key_down(self, key):
    print(key)
    self.text = key[0]  # Zeigt den ersten Buchstaben des gedrückten Keys an

world.run()
Text mit Tasteneingabe

Show numbers#

To display numbers on the screen, you can use Number-Actors. The functionality is similar to that of Text-Actors. In the following example, the displayed number increases by 1 with each keystroke:

from miniworlds import World, Number

world = World(400, 400)
show_number = Number((100, 100), 1)

@show_number.register
def on_key_down(self, key):
    n = self.get_number()
    self.set_number(n + 1)

world.run()