예제 #1
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()