From b1ea1bff79c5e9edf6aedbe8f4183c7e4f92f1e8 Mon Sep 17 00:00:00 2001 From: troido Date: Wed, 17 Jan 2018 21:26:52 +0100 Subject: fixed selectorvalue crash and selector disappearing when selected is removed --- asciifarm/client/display/inventory.py | 4 +++- asciifarm/keybindings/keybindings.hy | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'asciifarm') diff --git a/asciifarm/client/display/inventory.py b/asciifarm/client/display/inventory.py index 0db9037..6481602 100644 --- a/asciifarm/client/display/inventory.py +++ b/asciifarm/client/display/inventory.py @@ -1,5 +1,6 @@ import curses +from asciifarm.common import utils class Inventory: @@ -12,7 +13,7 @@ class Inventory: def setWidget(self, widget): self.widget = widget - def getSelector(self): + def getSelected(self): return self.selector def select(self, value, relative=False, modular=False): @@ -31,6 +32,7 @@ class Inventory: def setInventory(self, items): self.items = items + self.selector = utils.clamp(self.selector, 0, len(items)-1) self.widget.change() def setTitle(self, title): diff --git a/asciifarm/keybindings/keybindings.hy b/asciifarm/keybindings/keybindings.hy index d64bc8c..2919d1d 100644 --- a/asciifarm/keybindings/keybindings.hy +++ b/asciifarm/keybindings/keybindings.hy @@ -11,9 +11,9 @@ k (inp ["move" "north"]) j (inp ["move" "south"]) l (inp ["move" "east"]) h (inp ["move" "west"]) -e (inp ["take" (selectorvalue "ground")]) -q (inp ["drop" (selectorvalue "inventory")]) -E (inp ["use" (selectorvalue "inventory")]) +e (inp ["take" (.getSelected (self.display.getWidget "ground"))]) +q (inp ["drop" (.getSelected (self.display.getWidget "inventory"))]) +E (inp ["use" (.getSelected (self.display.getWidget "inventory"))]) R (inp ["interact"]) r (do [ (inp ["interact"]) @@ -24,7 +24,7 @@ r (do [ c (.select (self.display.getWidget "inventory") 1 True True) x (.select (self.display.getWidget "ground") 1 True True) v (.select (self.display.getWidget "equipment") 1 True True) -z (inp ["unequip" (selectorvalue "equipment")]) +z (inp ["unequip" (.getSelected (self.display.getWidget "equipment"))]) f (do [ (inp ["attack"]) (inp ["attack" "north"]) -- cgit