Spaces:
Runtime error
Runtime error
File size: 915 Bytes
f0b1638 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
from qt.components.talents import TalentsWidget
from qt.constant import MAX_TALENTS
class Talents:
def __init__(self):
self.talents = ["" for _ in range(MAX_TALENTS)]
def __getitem__(self, item):
return self.talents[item]
def __setitem__(self, key, value):
self.talents[key] = value
@property
def gains(self):
return [talent for talent in self.talents if talent]
def talents_script(talents_widget: TalentsWidget):
talents = Talents()
def talent_update(i):
widget = talents_widget[i]
def inner(index):
if talent := widget.combo_box.currentText():
talents[i] = talent
else:
talents[i] = ""
return inner
for n, talent_widget in enumerate(talents_widget.values()):
talent_widget.combo_box.currentIndexChanged.connect(talent_update(n))
return talents
|