debug: add logging to trace armor calculation issue

- Added debug logging to _get_current_config to see pieces found
- Added debug logging to _update_calculations to see equipped armor state
- This will help diagnose why armor shows 0 protection
This commit is contained in:
LemonNexus 2026-02-09 19:20:01 +00:00
parent 22b4e6e8bb
commit d265bc2113
1 changed files with 15 additions and 0 deletions

View File

@ -2081,6 +2081,15 @@ class LoadoutManagerDialog(QDialog):
"""Update all cost and performance calculations."""
try:
config = self._get_current_config()
# DEBUG: Log armor status
if config.equipped_armor:
pieces = config.equipped_armor.get_all_pieces()
logger.debug(f"_update_calculations: {len(pieces)} pieces equipped")
for slot, piece in pieces.items():
logger.debug(f" {slot}: {piece.name}, prot={piece.protection.get_total()}")
else:
logger.debug("_update_calculations: No equipped_armor")
# Weapon metrics (per shot, not per hour)
cost_per_shot_pec = config.get_total_decay_per_shot() + config.get_total_ammo_per_shot()
@ -2138,9 +2147,12 @@ class LoadoutManagerDialog(QDialog):
"""Get current configuration from UI fields."""
# Build equipped armor from slot widgets
equipped = EquippedArmor()
piece_count = 0
for slot, widget in self.slot_widgets.items():
piece = widget.get_piece()
if piece:
piece_count += 1
logger.debug(f"_get_current_config: Found piece in {slot}: {piece.name}, prot={piece.protection.get_total()}")
# Create a copy
piece_copy = ArmorPiece(
name=piece.name,
@ -2186,6 +2198,9 @@ class LoadoutManagerDialog(QDialog):
piece_copy.attach_plate(plate_copy)
equipped.equip_piece(piece_copy)
logger.debug(f"_get_current_config: Total pieces equipped: {piece_count}")
logger.debug(f"_get_current_config: equipped.get_all_pieces() returns {len(equipped.get_all_pieces())} pieces")
# Note: We don't call equip_full_set here because:
# 1. current_armor_set is a NexusArmorSet (API type), not ArmorSet (core type)