Add display abstraction

In case we want to run this on something that isn't an ANSI terminal, we
have the option to implement it however we want.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
2021-11-20 19:38:06 -08:00
parent 4cf3608f71
commit e868d0e14f
8 changed files with 202 additions and 35 deletions

18
agame/display/__init__.py Normal file
View File

@@ -0,0 +1,18 @@
import platform
from .display import Display
if platform.system() in ("Linux", "Darwin", "Unix"):
from .unix import *
class BasicDisplay(Display):
"""
A basic display that should be supported on all platforms. It just outputs
text with some color.
"""
def line(self, line: str = ""):
print(line)
def input(self) -> str:
return input("> ")