Spaces:
Runtime error
Runtime error
from general.gains.team import TEAM_GAIN_LIMIT | |
from qt.components import ComboWithLabel, SpinWithLabel, RadioWithLabel | |
from PySide6.QtWidgets import QWidget, QVBoxLayout, QHBoxLayout, QGridLayout, QTabWidget | |
class FormationWidget(QWidget): | |
def __init__(self): | |
super().__init__() | |
layout = QHBoxLayout() | |
self.setLayout(layout) | |
self.formation = ComboWithLabel("阵法") | |
layout.addWidget(self.formation) | |
self.core_rate = SpinWithLabel("四重覆盖(%)", maximum=100) | |
layout.addWidget(self.core_rate) | |
self.rate = SpinWithLabel("五重覆盖(%)", maximum=100) | |
layout.addWidget(self.rate) | |
class TeamGainsWidget(QWidget): | |
def __init__(self): | |
super().__init__() | |
layout = QVBoxLayout(self) | |
self.team_gains = {} | |
tabs = QTabWidget() | |
layout.addWidget(tabs) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "七秀") | |
self.team_gains["袖气"] = RadioWithLabel("袖气", "常驻") | |
tab_layout.addWidget(self.team_gains["袖气"], 0, 0) | |
self.team_gains["左旋右转"] = { | |
"stack": SpinWithLabel("左旋右转", "层数", maximum=TEAM_GAIN_LIMIT["左旋右转"]["stack"]) | |
} | |
tab_layout.addWidget(self.team_gains["左旋右转"]["stack"], 1, 0) | |
self.team_gains["泠风解怀"] = { | |
"rate": SpinWithLabel("泠风解怀", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["泠风解怀"]["rate"], 2, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "天策") | |
self.team_gains["撼如雷"] = RadioWithLabel("撼如雷", "常驻") | |
tab_layout.addWidget(self.team_gains["撼如雷"], 0, 0) | |
self.team_gains["破风"] = { | |
"variety": ComboWithLabel("破风", "种类", ["", "破风", "劲风"]) | |
} | |
tab_layout.addWidget(self.team_gains["破风"]["variety"], 1, 0) | |
self.team_gains["乘龙箭"] = { | |
"rate": SpinWithLabel("乘龙箭", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["乘龙箭"]["rate"], 2, 0) | |
self.team_gains["号令三军"] = { | |
"stack": SpinWithLabel("号令三军", "层数", maximum=TEAM_GAIN_LIMIT["号令三军"]["stack"]), | |
"rate": SpinWithLabel("号令三军", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["号令三军"]["stack"], 3, 0) | |
tab_layout.addWidget(self.team_gains["号令三军"]["rate"], 3, 1) | |
self.team_gains["激雷"] = { | |
"rate": SpinWithLabel("激雷", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["激雷"]["rate"], 4, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "少林") | |
self.team_gains["立地成佛"] = { | |
"rate": SpinWithLabel("立地成佛", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["立地成佛"]["rate"], 0, 0) | |
self.team_gains["舍身弘法"] = { | |
"stack": SpinWithLabel("舍身弘法", "层数", maximum=TEAM_GAIN_LIMIT["舍身弘法"]["stack"]), | |
"rate": SpinWithLabel("舍身弘法", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["舍身弘法"]["stack"], 1, 0) | |
tab_layout.addWidget(self.team_gains["舍身弘法"]["rate"], 1, 1) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "万花") | |
self.team_gains["秋肃"] = RadioWithLabel("秋肃", "常驻") | |
tab_layout.addWidget(self.team_gains["秋肃"], 0, 0) | |
self.team_gains["皎素"] = { | |
"rate": SpinWithLabel("皎素", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["皎素"]["rate"], 1, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "纯阳") | |
self.team_gains["碎星辰"] = RadioWithLabel("碎星辰", "常驻") | |
tab_layout.addWidget(self.team_gains["碎星辰"], 0, 0) | |
self.team_gains["破苍穹"] = RadioWithLabel("破苍穹", "常驻") | |
tab_layout.addWidget(self.team_gains["破苍穹"], 1, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "藏剑") | |
self.team_gains["剑锋百锻"] = { | |
"rate": SpinWithLabel("剑锋百锻", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["剑锋百锻"]["rate"], 0, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "五毒") | |
self.team_gains["仙王蛊鼎"] = { | |
"rate": SpinWithLabel("仙王蛊鼎", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["仙王蛊鼎"]["rate"], 0, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "明教") | |
self.team_gains["戒火"] = RadioWithLabel("戒火", "常驻") | |
tab_layout.addWidget(self.team_gains["戒火"], 0, 0) | |
self.team_gains["朝圣言"] = { | |
"stack": SpinWithLabel("朝圣言", "层数", maximum=TEAM_GAIN_LIMIT["朝圣言"]["stack"]), | |
"rate": SpinWithLabel("朝圣言", "覆盖(%)", maximum=100), | |
"variety": ComboWithLabel("朝圣言", "种类", ["", "朝圣言", "圣浴明心"]) | |
} | |
tab_layout.addWidget(self.team_gains["朝圣言"]["variety"], 1, 0) | |
tab_layout.addWidget(self.team_gains["朝圣言"]["stack"], 1, 1) | |
tab_layout.addWidget(self.team_gains["朝圣言"]["rate"], 1, 2) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "丐帮") | |
self.team_gains["酒中仙"] = RadioWithLabel("酒中仙", "常驻") | |
tab_layout.addWidget(self.team_gains["酒中仙"], 0, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "苍云") | |
self.team_gains["虚弱"] = RadioWithLabel("虚弱", "常驻") | |
tab_layout.addWidget(self.team_gains["虚弱"], 0, 0) | |
self.team_gains["寒啸千军"] = { | |
"rate": SpinWithLabel("寒啸千军", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["寒啸千军"]["rate"], 1, 0) | |
self.team_gains["振奋"] = { | |
"stack": SpinWithLabel("振奋", "层数", maximum=TEAM_GAIN_LIMIT["振奋"]["stack"]), | |
"rate": SpinWithLabel("振奋", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["振奋"]["stack"], 2, 0) | |
tab_layout.addWidget(self.team_gains["振奋"]["rate"], 2, 1) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "长歌") | |
self.team_gains["庄周梦"] = { | |
"stack": SpinWithLabel("庄周梦", "层数", maximum=TEAM_GAIN_LIMIT["庄周梦"]["stack"]), | |
"rate": SpinWithLabel("庄周梦", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["庄周梦"]["stack"], 0, 0) | |
tab_layout.addWidget(self.team_gains["庄周梦"]["rate"], 0, 1) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "霸刀") | |
self.team_gains["疏狂"] = { | |
"rate": SpinWithLabel("疏狂", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["疏狂"]["rate"], 0, 0) | |
tab = QWidget() | |
tab_layout = QGridLayout(tab) | |
tabs.addTab(tab, "药宗") | |
self.team_gains["配伍"] = { | |
"rate": SpinWithLabel("配伍", "覆盖(%)", maximum=100) | |
} | |
tab_layout.addWidget(self.team_gains["配伍"]["rate"], 0, 0) | |
# self.team_gains["飘黄"] = { | |
# "rate": SpinWithLabel("飘黄", "覆盖", maximum=100) | |
# } | |
# tab_layout.addWidget(self.team_gains["飘黄"]["rate"], 1, 0) | |
layout.addStretch() | |
def __getitem__(self, item): | |
return self.team_gains[item] | |
def items(self): | |
return self.team_gains.items() | |
class BonusesWidget(QWidget): | |
def __init__(self): | |
super().__init__() | |
layout = QVBoxLayout() | |
self.setLayout(layout) | |
self.tab = QTabWidget() | |
layout.addWidget(self.tab) | |
self.formation = FormationWidget() | |
self.tab.addTab(self.formation, "阵法") | |
self.team_gains = TeamGainsWidget() | |
self.tab.addTab(self.team_gains, "团队增益") | |
layout.addStretch() | |