pip install asciimatics
python
from asciimatics.screen import Screen
from asciimatics.event import KeyboardEvent
import random
python
class Game:
def __init__(self, screen):
self.screen = screen
self.player_x = screen.width // 2
self.score = 0
def start(self):
self.screen.play([self._draw], stop_on_resize=True)
def _draw(self):
self.screen.clear()
self.screen.print_at('Score: {}'.format(self.score), 0, 0)
self.screen.print_at('Press Q to quit', 0, 1)
self.screen.print_at('@', self.player_x, self.screen.height - 1)
self.screen.refresh()
def process_event(self, event):
if isinstance(event, KeyboardEvent):
if event.key_code == ord('q'):
self.screen.stop()
return
elif event.key_code == ord('a'):
self.player_x -= 1
elif event.key_code == ord('d'):
self.player_x += 1
self._draw()
python
def demo(screen):
game = Game(screen)
game.start()
Screen.wrapper(demo)