feat(combat): expose weapon reference in observation snapshot
This commit is contained in:
@@ -86,6 +86,7 @@ from pathlib import Path
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from pf1e_simulator.conditions import CONDITIONS_BY_NAME, Condition
|
||||
from pf1e_simulator.dice import dice_to_str
|
||||
from pf1e_simulator.effects import ActiveBuff, ActiveCondition, StatModifier, resolve_modifiers
|
||||
from pf1e_simulator.loaders.combatant import CombatantLoadError, load_combatant
|
||||
from pf1e_simulator.models import PREDEFINED_SKILLS
|
||||
@@ -613,6 +614,29 @@ class CombatEngine:
|
||||
},
|
||||
"cmb": self._maneuver_cmb(state),
|
||||
"cmd": self._maneuver_cmd(state),
|
||||
"attacks": tuple(
|
||||
{
|
||||
"id": attack.id,
|
||||
"name": attack.name,
|
||||
"kind": attack.kind,
|
||||
"attack_bonus": attack.attack_bonus,
|
||||
"damage": tuple(
|
||||
{
|
||||
"formula": dice_to_str(component.formula),
|
||||
"types": tuple(component.types),
|
||||
}
|
||||
for component in attack.damage
|
||||
),
|
||||
"damage_bonus": attack.damage_bonus,
|
||||
"crit_range": attack.crit_range,
|
||||
"crit_mult": attack.crit_mult,
|
||||
"reach_ft": attack.reach_ft,
|
||||
"range_increment_ft": attack.range_increment_ft,
|
||||
"count": attack.count,
|
||||
"firearm": attack.firearm,
|
||||
}
|
||||
for attack in state.combatant.attacks
|
||||
),
|
||||
}
|
||||
|
||||
def _pair_snapshot(
|
||||
|
||||
Reference in New Issue
Block a user