diff --git a/main.py b/main.py index 6912380..2ab6231 100644 --- a/main.py +++ b/main.py @@ -15,11 +15,11 @@ def titleScreen(): def mainGame(): tools.clearScreen() - tradeableItems = { - "flour" : obj.Item("flour", 0.5), - "Rice Cakes" : obj.Item("Rice Cakes", 1), - "Water" : obj.Item("Water", 25) - } + tradeableItems = [ + obj.Item("flour", 0.5), + obj.Item("Rice Cakes", 1), + obj.Item("Water", 25) + ] #Create TradeHubs tradeHubs = { @@ -29,7 +29,7 @@ def mainGame(): tradeHubs["The Jackel"].addItems(tradeableItems) - tradeableItems.pop("flour") + tradeableItems.pop() tradeHubs["Star Crapper"].addItems(tradeableItems) diff --git a/obj/gameManager.py b/obj/gameManager.py index dd88eba..87c043c 100644 --- a/obj/gameManager.py +++ b/obj/gameManager.py @@ -26,8 +26,15 @@ class GameManager: def buyMenu(self): print() - #list items - #assign each item a number + while True: + i=0 + for item in self.planets[self.player.getLocation()].getTradeHub().getItems().getInventory(): + print(f"{i}, {item.getName()}") + i+=1 + userInput = input("Which Item would you like to buy? (e)xit \n>> ") + + if userInput == "e": + break #choose number #ask for quantity #Confirm diff --git a/obj/inventory.py b/obj/inventory.py index 70c6105..dc632a5 100644 --- a/obj/inventory.py +++ b/obj/inventory.py @@ -5,20 +5,13 @@ class Inventory: 'Object to hold items and quantity' def __init__(self): - self.slot1 = InventorySlot(Item("empty", 0), 0) - self.slot2 = InventorySlot(Item("empty", 0), 0) - self.items = [self.slot1, self.slot2] + #TODO Make limited slots + # __init__(self, numberOfSlots) + self.items = [] def addItem(self, item, quantity): - for slot in self.items: - if slot.getName() == "empty": - self.slot1 = InventorySlot(item, quantity) - self.items.append(self.slot1) - break - else: - self.slot1.incItem(quantity) - - + self.items.append(InventorySlot(item, quantity)) + def printInventory(self): print("Items: ") print(f"{'Name' : <15}{'- - - - - | - - - - -' : ^10}{'Quantity' : >8}") @@ -26,3 +19,6 @@ class Inventory: for slot in self.items: print(f"{slot.getName() : <15}{'* * * * * | * * * * *' : ^10}{str(slot.getQuantity()) : >5}") print() + + def getInventory(self): + return self.items diff --git a/obj/inventorySlot.py b/obj/inventorySlot.py index e5caf03..182e6c2 100644 --- a/obj/inventorySlot.py +++ b/obj/inventorySlot.py @@ -18,3 +18,6 @@ class InventorySlot: def getName(self): return self.item.getName() + + def getPrice(self): + return self.item.getPrice() diff --git a/obj/tradeHub.py b/obj/tradeHub.py index 4cfed63..c77835a 100644 --- a/obj/tradeHub.py +++ b/obj/tradeHub.py @@ -1,15 +1,22 @@ + + +from obj.inventory import Inventory + + class TradeHub: 'Contains items to sell' def __init__(self, name): self.name = name - self.items = {} + self.items = Inventory() def addItems(self, items): - self.items = items + for item in items: + self.items.addItem(item, 100) + def getItems(self): return self.items def printItems(self): print(f"{'Name' : <15}{'- - - - - | - - - - -' : ^10}{'Cost' : >6}") print() - for item in self.items.values(): - print(f"{item.getName() : <15}{'* * * * * | * * * * *' : ^10}{str(item.getPrice()) : >5}") + for slot in self.items.getInventory(): + print(f"{slot.getName() : <15}{'* * * * * | * * * * *' : ^10}{str(slot.getPrice()) : >5}") print()