diff options
| author | troido <troido@protonmail.com> | 2019-09-18 12:07:58 +0200 |
|---|---|---|
| committer | troido <troido@protonmail.com> | 2019-09-18 12:07:58 +0200 |
| commit | b95a08c303c08d955142312a72f0e51a5edcffdf (patch) | |
| tree | 891e612690f6618f85b48dda30a6b89bfa23bf56 /asciifarm/client/display/inventory.py | |
| parent | e2ecd2b2c5b6bc2bc1dbce6f669c96707683313d (diff) | |
cleanup!
Diffstat (limited to 'asciifarm/client/display/inventory.py')
| -rw-r--r-- | asciifarm/client/display/inventory.py | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/asciifarm/client/display/inventory.py b/asciifarm/client/display/inventory.py deleted file mode 100644 index 48bf41e..0000000 --- a/asciifarm/client/display/inventory.py +++ /dev/null @@ -1,73 +0,0 @@ - -from asciifarm.common import utils - -from .widimp import WidImp - -class Inventory(WidImp): - - def __init__(self, title, titlebar="{}:", selectorChar="*"): - self.title = title - self.titlebar = titlebar - self.selectorChar = selectorChar - self.items = [] - self.selector = 0 - - def getSelected(self): - return self.selector - - def select(self, value, relative=False, modular=False): - invLen = len(self.items) - if relative: - value += self.selector - if modular and invLen: - value %= invLen - if value < 0: - value = 0 - if value >= invLen: - value = invLen-1 - if value in range(invLen): - self.doSelect(value) - - def doSelect(self, value): - self.selector = value - self.change() - - def setInventory(self, items): - self.items = items - self.selector = utils.clamp(self.selector, 0, len(items)-1) - self.change() - - def getItem(self, num): - return self.items[num] - - def getSelectedItem(self): - return self.getItem(self.getSelected()) - - def setTitle(self, title): - self.title = title - - def getNumItems(self): - return len(self.items) - - def itemName(self, item): - return item - - def update(self, win): - - width, height = win.getSize() - height -= 1 - selected = self.selector - start = min(selected - height//2, len(self.items)-height) - start = max(start, 0) - end = start + height - win.erase() - win.addLine((0,0), (self.titlebar.format(self.title))[:width]) - for i, item in enumerate(self.items[start:end]): - if i + start == selected: - win.addLine((0, i+1), self.selectorChar) - win.addLine((1, i+1), self.itemName(item)) - if end < len(self.items): - win.addLine((width-1, height), "+") - if start > 0: - win.addLine((width-1, 1), "-") - win.noutrefresh() |
