diff options
| author | troido <troido@hotmail.com> | 2018-01-02 21:26:46 +0100 |
|---|---|---|
| committer | troido <troido@hotmail.com> | 2018-01-02 21:26:46 +0100 |
| commit | 44c26befaab94781e35d159db82d875bff2ed31e (patch) | |
| tree | 2667a10afd1b62c1217f9bce6b266a5d114cac46 /asciifarm/client/gameclient.py | |
| parent | 8cd98452054fbfe46bc3c78b5b844742e7ed07a4 (diff) | |
keybindings are now executed a bit smarter as hy code
Diffstat (limited to 'asciifarm/client/gameclient.py')
| -rw-r--r-- | asciifarm/client/gameclient.py | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/asciifarm/client/gameclient.py b/asciifarm/client/gameclient.py index b3b046b..6a80572 100644 --- a/asciifarm/client/gameclient.py +++ b/asciifarm/client/gameclient.py @@ -13,11 +13,7 @@ import string from .display.display import Display import hy - -hywrapper = """\ -(do - (require [asciifarm.client.keymacros [*]]) - {{ {} }})""" +from .inputhandling import InputHandler class Client: @@ -29,8 +25,10 @@ class Client: self.connection = connection self.logFile = logFile - self.commands = hy.eval(hy.read_str(hywrapper.format(keybindings))) - self.controlsString = self.commands.get("help", "") + self.inputHandler = InputHandler(self, self.display, self.connection) + self.inputHandler.readCommands(keybindings) + + self.controlsString = self.inputHandler.getDocs() self.display.showInfo(self.controlsString) @@ -38,15 +36,6 @@ class Client: def send(self, data): self.connection.send(json.dumps(data)) - def getDisplay(self): - return self.display - - def readString(self): - text = self.display.getString() - string = str(text, "utf-8") - if string: - self.connection.send(json.dumps(["input", ["say", string]])) - def start(self): threading.Thread(target=self.listen, daemon=True).start() self.connection.send(json.dumps(["name", self.name])) @@ -126,8 +115,7 @@ class Client: keyname = str(curses.keyname(key), "utf-8") except ValueError: continue - if keyname in self.commands: - self.commands[keyname](self) + self.inputHandler.onKey(keyname) |
