fix: add missing LogWatcher event handlers to HUD

- on_global(): Handle global events
- on_hof(): Handle HoF events
- on_damage_dealt(): Handle damage dealt
- on_damage_taken(): Handle damage taken
- update_stats(): Legacy stats update compatibility
This commit is contained in:
LemonNexus 2026-02-10 13:23:46 +00:00
parent 050ddedc4e
commit b3f4045aed
1 changed files with 31 additions and 0 deletions

View File

@ -892,6 +892,37 @@ class HUDOverlay(QWidget):
self._stats.damage_taken += taken
self._refresh_display()
# === Event Handlers for LogWatcher ===
def on_global(self, value_ped: Decimal = Decimal('0.0')):
"""Handle global event from LogWatcher."""
if self.session_active:
self._stats.globals_count += 1
self._refresh_display()
def on_hof(self, value_ped: Decimal = Decimal('0.0')):
"""Handle Hall of Fame event from LogWatcher."""
if self.session_active:
self._stats.hofs_count += 1
self._refresh_display()
def on_damage_dealt(self, damage: Decimal):
"""Handle damage dealt event from LogWatcher."""
self.update_damage(dealt=damage)
def on_damage_taken(self, damage: Decimal):
"""Handle damage taken event from LogWatcher."""
self.update_damage(taken=damage)
def update_stats(self, stats: dict):
"""Handle stats update from LogWatcher (legacy compatibility)."""
if self.session_active:
# Update loot from stats
if 'loot_value' in stats:
self.update_loot(Decimal(str(stats['loot_value'])))
# Update other stats as needed
self._refresh_display()
# === Mouse Handling ===
def mousePressEvent(self, event: QMouseEvent):