diff options
Diffstat (limited to 'asciifarm/client')
| -rw-r--r-- | asciifarm/client/commandhandler.py | 15 | ||||
| -rw-r--r-- | asciifarm/client/gameclient.py | 3 | ||||
| -rw-r--r-- | asciifarm/client/inputhandler.py | 2 |
3 files changed, 8 insertions, 12 deletions
diff --git a/asciifarm/client/commandhandler.py b/asciifarm/client/commandhandler.py index 0c3027f..ec5baa3 100644 --- a/asciifarm/client/commandhandler.py +++ b/asciifarm/client/commandhandler.py @@ -29,7 +29,7 @@ class CommandHandler: "selectitem": self.selectItem, "inputwithselected": self.actWithSelected, "use": self.useSelected, - "unuse": self.unUseSelected, + "drop": self.dropSelected, "take": self.takeSelected, "eval": self.eval, "exec": self.exec, @@ -74,7 +74,7 @@ class CommandHandler: self.input(["say", text]) def pick(self, option): - self.input(["pick", option]) + self.input(["interact", [None, "north", "south", "east", "west"], option]) def chat(self, text): self.client.sendChat( text) @@ -103,20 +103,15 @@ class CommandHandler: menu = self.client.display.getSelectedMenu() selected = self.client.display.getSelectedItem(menu) if menu in ("inventory", "equipment"): - action = "use" + self.input(["use", menu, selected]) elif menu == "ground": - action = "interact", - else: - return - self.input([action, selected]) + self.input(["interact", selected]) - def unUseSelected(self): + def dropSelected(self): menu = self.client.display.getSelectedMenu() selected = self.client.display.getSelectedItem(menu) if menu == "inventory": action = "drop" - elif menu == "equipment": - action = "unequip" else: return self.input([action, selected]) diff --git a/asciifarm/client/gameclient.py b/asciifarm/client/gameclient.py index 4013505..c0f702c 100644 --- a/asciifarm/client/gameclient.py +++ b/asciifarm/client/gameclient.py @@ -129,7 +129,8 @@ class Client: if msgType == "ground": self.display.setGround(msg[1]) if msgType == "message": - self.log(*msg[1:]) + type, text = msg[1][:2] + self.log(text, type) if msgType == "options": if msg[1] != None: description, options = msg[1] diff --git a/asciifarm/client/inputhandler.py b/asciifarm/client/inputhandler.py index 0657749..4281c01 100644 --- a/asciifarm/client/inputhandler.py +++ b/asciifarm/client/inputhandler.py @@ -87,7 +87,7 @@ class InputHandler: elif key == "^I": # tab # return to game but keep entered string self.typing = False - elif key.isprintable(): + elif key.isprintable() and len(key) == 1: self.string = self.string[:self.cursor] + key + self.string[self.cursor:] self.cursor += len(key) |
