Skip to content

Commit 2321614

Browse files
committed
Start again handling weapons in same code
1 parent a1db0d9 commit 2321614

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

printouts/equipment.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,10 @@ def __init__(self, template: Template, is_dsx: bool):
6767
screen_name = template.compute_value('common', 'screen_name')
6868
self.screen_name = screen_name.strip('"') if screen_name is not None else None
6969

70-
self.equipment_type = 'armor' if template.is_descendant_of('armor') else None
70+
self.equipment_type = 'armor' if template.is_descendant_of('armor') else 'weapon' if template.is_descendant_of('weapon') else None
71+
self.weapon_kind = 'melee' if template.is_descendant_of('weapon_melee') else 'ranged' if template.is_descendant_of('weapon_ranged') else None
7172

72-
self.world_level, self.armor_type, self.rarity, self.material, self.tn_stance = self.parse_template_name(self.template_name)
73+
self.world_level, self.armor_type, self.weapon_type, self.rarity, self.material, self.tn_stance = self.parse_template_name(self.template_name)
7374

7475
variant_sections = get_pcontent_variants(template)
7576
self.variants = [s.header for s in variant_sections]
@@ -150,9 +151,14 @@ def parse_template_name(cls, template_name: str):
150151
world_level = None
151152
if name_parts[0].lower() in ['2w', '3w']:
152153
world_level = name_parts.pop(0).lower()
154+
153155
armor_type = None
154156
if name_parts[0] in ['bd', 'he', 'bo', 'gl', 'sh']:
155157
armor_type = name_parts.pop(0)
158+
weapon_type = None
159+
if name_parts[0] in ['ax', 'bw', 'cb', 'dg', 'hm', 'mc', 'st', 'sd', 'ss']:
160+
weapon_type = name_parts.pop(0)
161+
156162
rarity = None
157163
if name_parts[0] in ['ra', 'un']:
158164
rarity = name_parts.pop(0)
@@ -173,21 +179,21 @@ def parse_template_name(cls, template_name: str):
173179
print(f'wtf helmet {template_name}')
174180

175181
material = None
176-
if armor_type != 'sh':
182+
if armor_type is not None and armor_type != 'sh':
177183
if name_parts[0] in ['le', 'bl', 'sl', 'ro', 'ba', 'br', 'fp', 'pl', 'ch', 'sc', 'bp']:
178184
material = name_parts.pop(0)
179185
else:
180186
print(f'wtf material {template_name}')
181187

182188
stance = None
183-
if armor_type != 'sh':
189+
if armor_type is not None and armor_type != 'sh':
184190
is_fighter = 'f' in name_parts
185191
is_ranger = 'r' in name_parts
186192
is_mage = 'm' in name_parts
187193
if is_fighter + is_ranger + is_mage == 1:
188194
stance = 'f' if is_fighter else 'r' if is_ranger else 'm' if is_mage else None
189195

190-
return world_level, armor_type, rarity, material, stance
196+
return world_level, armor_type, weapon_type, rarity, material, stance
191197

192198
@classmethod
193199
def get_equip_requirement_stat(cls, template: Template):
@@ -217,7 +223,7 @@ def load_dsx_armor_template_names(bits: Bits) -> list[str]:
217223
def load_armor_templates(bits: Bits) -> tuple[list[str], list[Template]]:
218224
dsx_armor_template_names = load_dsx_armor_template_names(bits)
219225
armor_templates = list(bits.templates.get_leaf_templates('armor').values())
220-
# armor_templates.extend(bits.templates.get_leaf_templates('weapon').values())
226+
armor_templates.extend(bits.templates.get_leaf_templates('weapon').values())
221227
return dsx_armor_template_names, armor_templates
222228

223229

0 commit comments

Comments
 (0)