Пример #1
0
    def show_text(self, *args):
        try:
            id = self.box_list.curselection()
            luku = int(id[0])
        except Exception:
            luku = self.last_list_selection
        
        category_luku = self.last_category_selection

        for armor in self.contr.settings.armors:
            if armor.get_attribute('brand')==self.box_categories.get(category_luku):
                #print('past the first if statement in armor sp retrieval')
                #print(armor.get_attribute('name'))

                #print(self.box_list.get(luku))
                full_name = armor.get_attribute('brand') + " " + armor.get_attribute('name')
                if full_name==self.box_list.get(luku):
                    #print('past the second if statement in armor sp retrieval')
                    for loc in self.armorbox.segmented_file_array:
                        bodypart_name = loc[1]
                        #self.armorbox.variables[bodypart_name].set(armor.get_attribute(bodypart_name))
                        #print(self.armorbox.variables[bodypart_name].get())
                        if int(self.armorbox.variables[bodypart_name].get()) == 0:
                            self.armorbox.added_variables[bodypart_name].set('+' + str(armor.get_sp_value(bodypart_name)))
                        else:
                            #print('else lauseessa')
                            e = Effective_armor()
                            layer1=self.armorbox.variables[bodypart_name].get()
                            #print('layer1' + layer1)
                            layer2=armor.get_sp_value(bodypart_name)
                            bonus = e.calc_sp_layers(layer1, layer2)
                            self.armorbox.added_variables[bodypart_name].set('+' + str(bonus))
Пример #2
0
    def inventory_changed(self, *args):
        #flag = self.text_inventory.edit_modified()
        #print(flag)
        f = open(self.inventory_file, 'w+')
        f.write(self.text_inventory.get(1.0, 'end'))
        f.close()
        e = Effective_armor()
        self.contr.clear_ability_list(self.name)

        d= open(self.inventory_file, 'r')
        for line in d:
            merkkijono = line[:-1]
            try: 
                #merkkijono = line
                rivitiedot = merkkijono.split('|', -1)
                key = str.strip(rivitiedot[0])
                value = rivitiedot[1]
                #print(merkkijono + ' ' + key + ' ' + value)
                self.contr.set_to_ability_list(self.name, key, value)
                for armor in self.contr.settings.armors:
                    #print('armorfinding: ' + key + ' ' + armor.get_attribute('full name'))
                    if key == armor.get_attribute('full name'):
                        #print('armorfinding succeeded')
                        e.add_armor(armor)
                
            except Exception:
                #print('whupsee')
                print(self.contr._Controller__char.get_ability_list(self.name))
        
        for key, element in self.armorbox.variables.items():
            #print(e.sp)
            try:
                element.set(e.sp[key])
            except Exception:
                element.set('0')
        #print('armorlist pituus' +str(len(e.armor_list)))
        #self.contr.print_all_abilities()
        self.show_text()
        self.contr.recalculate_points()
        self.text_inventory.edit_modified(False)
        d.close()