def __init__(self, logic, *args, **kwds):
"""Initialize the scene with a core object for basic functions."""
+ # set the background color to white
+ gl.glClearColor(255, 255, 255, 0)
#: the core provides data persistence between scenes.
#: The logic tells us what should be visible
self.visible = self.logic.model.visible
#: Overlay sprites. They are above all other sprites (included for convenience, since most games need an overlay of sorts)
#: We still need the hexmap overlay here. The logic does not have to know how an overlay looks.
- # set the background color to white
- gl.glClearColor(255, 255, 255, 0)
- self.terrain = self.logic.model.terrain
+ self.terrain = self.logic.model.terrain
+ self.possible_commands = 
"""Update the stats of all scene objects.
-Don't blit them, though. That's done by the
+Don't blit them, though. That's done by the .
To show something, add it to the self.visible list.
To add a collider, add it to the self.colliding list.
To add an overlay sprite, add it to the self.overlay list.
+ # Update the visible representation of the char.
for char in self.logic.model.chars:
+ # TODO: Just execute a step action, when the model tells us
+ # TODO: Add an inactive state: There’s nothing we can do
+ # (action already scheduled).
# do the computer actions. As soon as it’s the players turn, computer_turn() changes the state.
if self.logic.model.phase["player"] == "setup":