Пример #1
0
def itemPlusFive():
    model = ui_inventory.inventoryView.model()
    selected = []
    data = tojson.loadfromjson()
    indexes = ui_inventory.inventoryView.selectionModel().selectedRows()
    for i in sorted(indexes):
        row = i.row()
        print(row)
        index = model.index(row, 0)
        # We suppose data are strings
        selected.append(model.data(index))
        strselected = "".join(selected)
        print(selected)
        for element in data["Inventory"]:
            if element == strselected:
                menge = data["Inventory"][strselected]["menge"]
                newMenge = int(menge) + 5
                data["Inventory"][strselected].update({"menge": newMenge})
                gewicht = data["Inventory"][strselected]["gewicht"]
                newGewicht = math.ceil(gewicht / menge * newMenge)
                if newMenge <= 0:
                    del data["Inventory"][strselected]
                else:
                    data["Inventory"][strselected].update({"menge": newMenge})
                    data["Inventory"][strselected].update(
                        {"gewicht": newGewicht})
                tojson.savetojson(data)
                updateListView()
                inv = Inventory()
                inv.update(ui)
                data = inv.save(data, ui)
                updateinv(inv, data)
                break
Пример #2
0
def saveItem():
    x = Item()
    data = tojson.loadfromjson()
    global ui_editor
    x.create(ui_editor)
    data = x.save(data)
    tojson.savetojson(data)
    closeEditor()
    updateListView()
Пример #3
0
def save():
    data = tojson.loadfromjson()
    stats = Stats()
    inv = Inventory()
    stats.update(ui)
    data = stats.save(data, ui)
    updateui(stats)
    inv.update(ui)
    data = inv.save(data, ui)
    updateinv(inv, data)
    tojson.savetojson(data)
Пример #4
0
def main():
    ui.setupUi(window)
    window.show()
    stats = Stats()
    data = tojson.loadfromjson()
    stats.load(data)
    inv = Inventory()
    print(data)
    inv.load(data)
    inituivalues(stats)
    initinvvalues(inv, data)
    StartUpdate()
    sys.exit(app.exec_())
Пример #5
0
def updateListView():
    global ui_inventory
    data = tojson.loadfromjson()
    model = QStandardItemModel()
    if model.rowCount() is not 0:
        model.removeRows(0, model.rowCount())
        ui_inventory.inventoryView.setModel(model)
    counter = 0
    for inv in data["Inventory"]:

        if inv == "muenzen":
            pass
        elif inv == "edelsteine":
            pass
        elif inv == "feldrationen":
            pass
        elif inv == "abenteuerausruestung":
            pass
        elif inv == "heiltraenke":
            pass
        elif inv == "pfeile":
            pass
        else:
            item = None
            gegenstand = None
            l = []
            l.append("Menge: ")
            l.append(str(data["Inventory"][inv]["menge"]))
            l.append(" Gewicht: ")
            l.append(str(data["Inventory"][inv]["gewicht"]))
            l.append(" ")

            if data["Inventory"][inv]["staerke"] is not 0:
                l.append("Stärke: ")
                if data["Inventory"][inv]["staerke"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["staerke"]))
                l.append(" ")
            if data["Inventory"][inv]["geschick"] is not 0:
                l.append("Geschick: ")
                if data["Inventory"][inv]["geschick"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["geschick"]))
                l.append(" ")
            if data["Inventory"][inv]["konstitution"] is not 0:
                l.append("Konstitution: ")
                if data["Inventory"][inv]["konstitution"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["konstitution"]))
                l.append(" ")
            if data["Inventory"][inv]["intelligenz"] is not 0:
                l.append("Intelligenz: ")
                if data["Inventory"][inv]["intelligenz"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["intelligenz"]))
                l.append(" ")
            if data["Inventory"][inv]["weisheit"] is not 0:
                l.append("Weisheit: ")
                if data["Inventory"][inv]["weisheit"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["weisheit"]))
                l.append(" ")
            if data["Inventory"][inv]["charisma"] is not 0:
                l.append("Charisma: ")
                if data["Inventory"][inv]["charisma"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["charisma"]))
                l.append(" ")
            if data["Inventory"][inv]["ruestung"] is not 0:
                l.append("Rüstung: ")
                if data["Inventory"][inv]["ruestung"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["ruestung"]))
                l.append(" ")
            if data["Inventory"][inv]["schaden"] is not 0:
                l.append("Schaden: ")
                if data["Inventory"][inv]["schaden"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["schaden"]))
                l.append(" ")
            if data["Inventory"][inv]["leben"] is not 0:
                l.append("Leben: ")
                if data["Inventory"][inv]["leben"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["leben"]))
                l.append(" ")
            if data["Inventory"][inv]["belastung"] is not 0:
                l.append("Belastung: ")
                if data["Inventory"][inv]["belastung"] > 0:
                    l.append("+")
                l.append(str(data["Inventory"][inv]["belastung"]))
                l.append(" ")
            gegenstand = "".join(l)
            name = QStandardItem(inv)
            item = QStandardItem(gegenstand)
            beschreibung = QStandardItem(
                str(data["Inventory"][inv]["beschreibung"]))
            itemList = (name, beschreibung, item)
            model.insertRow(counter, itemList)
            counter = counter + 1
            model.setHorizontalHeaderLabels(["Name", "Beschreibung", "Stats"])
    ui_inventory.inventoryView.setModel(model)
    ui_inventory.inventoryView.resizeColumnToContents(0)
    ui_inventory.inventoryView.resizeColumnToContents(1)
    ui_inventory.inventoryView.resizeColumnToContents(2)