fix: Fix Log Parser Test plugin event field names
The plugin was using wrong field names for EventBus events: SkillGainEvent: - Fixed: points → gain_amount - Fixed: new_value → skill_value LootEvent: - Fixed: Now uses items list instead of direct item_name/quantity/value - Updated to handle the dict structure in items list DamageEvent: - Fixed: amount → damage_amount - Fixed: Now uses is_outgoing instead of is_critical for direction - Added target_name and attacker_name fields GlobalEvent: - Fixed: player → player_name - Fixed: item → item_name - Added achievement_type field All simulate buttons should now work correctly.
This commit is contained in:
parent
899b74fe62
commit
345ec865e1
|
|
@ -70,27 +70,36 @@ class LogParserTestPlugin(BasePlugin):
|
||||||
def _on_skill_gain(self, event: SkillGainEvent):
|
def _on_skill_gain(self, event: SkillGainEvent):
|
||||||
"""Handle skill gain events."""
|
"""Handle skill gain events."""
|
||||||
self.event_counts['skill_gain'] += 1
|
self.event_counts['skill_gain'] += 1
|
||||||
self._add_event("Skill Gain", f"{event.skill_name}: +{event.points} pts", "#4ecdc4")
|
self._add_event("Skill Gain", f"{event.skill_name}: +{event.gain_amount} pts", "#4ecdc4")
|
||||||
|
|
||||||
def _on_loot(self, event: LootEvent):
|
def _on_loot(self, event: LootEvent):
|
||||||
"""Handle loot events."""
|
"""Handle loot events."""
|
||||||
self.event_counts['loot'] += 1
|
self.event_counts['loot'] += 1
|
||||||
value_str = f" ({event.value:.2f} PED)" if event.value else ""
|
# LootEvent has items list, extract first item for display
|
||||||
self._add_event("Loot", f"{event.item_name} x{event.quantity}{value_str}", "#ff8c42")
|
if event.items:
|
||||||
|
item = event.items[0]
|
||||||
|
item_name = item.get('name', 'Unknown')
|
||||||
|
quantity = item.get('quantity', 1)
|
||||||
|
value = item.get('value', 0)
|
||||||
|
value_str = f" ({value:.2f} PED)" if value else ""
|
||||||
|
self._add_event("Loot", f"{item_name} x{quantity}{value_str} from {event.mob_name}", "#ff8c42")
|
||||||
|
else:
|
||||||
|
self._add_event("Loot", f"Loot from {event.mob_name}", "#ff8c42")
|
||||||
|
|
||||||
def _on_damage(self, event: DamageEvent):
|
def _on_damage(self, event: DamageEvent):
|
||||||
"""Handle damage events."""
|
"""Handle damage events."""
|
||||||
if event.is_critical:
|
if event.is_outgoing:
|
||||||
self.event_counts['damage'] += 1
|
self.event_counts['damage'] += 1
|
||||||
self._add_event("Damage", f"{event.amount} damage ({event.damage_type})", "#ff6b6b")
|
self._add_event("Damage", f"{event.damage_amount} damage ({event.damage_type})", "#ff6b6b")
|
||||||
else:
|
else:
|
||||||
self.event_counts['damage_taken'] += 1
|
self.event_counts['damage_taken'] += 1
|
||||||
self._add_event("Damage Taken", f"{event.amount} damage", "#ff4757")
|
self._add_event("Damage Taken", f"{event.damage_amount} damage from {event.attacker_name}", "#ff4757")
|
||||||
|
|
||||||
def _on_global(self, event: GlobalEvent):
|
def _on_global(self, event: GlobalEvent):
|
||||||
"""Handle global events."""
|
"""Handle global events."""
|
||||||
self.event_counts['global'] += 1
|
self.event_counts['global'] += 1
|
||||||
self._add_event("Global", f"{event.player} found {event.item} worth {event.value} PED!", "#ffd93d")
|
item_str = f" with {event.item_name}" if event.item_name else ""
|
||||||
|
self._add_event("Global", f"{event.player_name} got {event.achievement_type}{item_str} worth {event.value} PED!", "#ffd93d")
|
||||||
|
|
||||||
def _on_raw_log_event(self, event_data):
|
def _on_raw_log_event(self, event_data):
|
||||||
"""Handle raw log events."""
|
"""Handle raw log events."""
|
||||||
|
|
@ -305,8 +314,8 @@ class LogParserTestPlugin(BasePlugin):
|
||||||
event = SkillGainEvent(
|
event = SkillGainEvent(
|
||||||
timestamp=datetime.now(),
|
timestamp=datetime.now(),
|
||||||
skill_name="Rifle",
|
skill_name="Rifle",
|
||||||
points=0.1234,
|
gain_amount=0.1234,
|
||||||
new_value=1234.56
|
skill_value=1234.56
|
||||||
)
|
)
|
||||||
self._on_skill_gain(event)
|
self._on_skill_gain(event)
|
||||||
self.log_info("Simulated skill gain event")
|
self.log_info("Simulated skill gain event")
|
||||||
|
|
@ -316,10 +325,10 @@ class LogParserTestPlugin(BasePlugin):
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
event = LootEvent(
|
event = LootEvent(
|
||||||
timestamp=datetime.now(),
|
timestamp=datetime.now(),
|
||||||
item_name="Shrapnel",
|
mob_name="Atrox",
|
||||||
quantity=100,
|
items=[{'name': 'Shrapnel', 'quantity': 100, 'value': 1.0}],
|
||||||
value=1.0,
|
total_tt_value=1.0,
|
||||||
mob_name="Atrox"
|
position=None
|
||||||
)
|
)
|
||||||
self._on_loot(event)
|
self._on_loot(event)
|
||||||
self.log_info("Simulated loot event")
|
self.log_info("Simulated loot event")
|
||||||
|
|
@ -329,9 +338,12 @@ class LogParserTestPlugin(BasePlugin):
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
event = DamageEvent(
|
event = DamageEvent(
|
||||||
timestamp=datetime.now(),
|
timestamp=datetime.now(),
|
||||||
amount=45,
|
damage_amount=45,
|
||||||
damage_type="Impact",
|
damage_type="Impact",
|
||||||
is_critical=True
|
is_critical=True,
|
||||||
|
target_name="Atrox",
|
||||||
|
attacker_name="Player",
|
||||||
|
is_outgoing=True
|
||||||
)
|
)
|
||||||
self._on_damage(event)
|
self._on_damage(event)
|
||||||
self.log_info("Simulated damage event")
|
self.log_info("Simulated damage event")
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue