vagabond-rpg-foundryvtt/module/data/item/_module.mjs
Cal Corum bf2cd92e93 Add Status item system and separate attack/damage rolls
Status System:
- Add StatusData model with mechanical modifiers (damageDealt, healingReceived)
- Add status item sheet with modifier configuration
- Add status-bar.hbs for displaying status chips on actor sheets
- Status chips show tooltip on hover, can be removed via click
- Add 17 status items to compendium (Blinded, Burning, Charmed, etc.)
- Frightened applies -2 damage dealt, Sickened applies -2 healing received

Attack Roll Changes:
- Separate attack and damage into two discrete rolls
- Attack hit now shows "Roll Damage" button instead of auto-rolling
- Button click rolls damage and updates the chat message in-place
- Store weapon/attack data in message flags for later damage rolling
- Fix favor/hinder and modifier preset buttons in attack dialog
- Show individual damage dice results in chat card breakdown

Mechanical Integration:
- Add _applyStatusModifiers() to VagabondActor for aggregating status effects
- Update getRollData() to include statusModifiers for roll formulas
- Update damageRoll() to automatically apply damageDealt modifier
- Update applyHealing() to respect healingReceived modifier

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 14:36:57 -06:00

17 lines
653 B
JavaScript

/**
* Item Data Models
*
* Exports all item data model classes for registration with Foundry.
*/
export { default as VagabondItemBase } from "./base-item.mjs";
export { default as AncestryData } from "./ancestry.mjs";
export { default as ClassData } from "./class.mjs";
export { default as SpellData } from "./spell.mjs";
export { default as PerkData } from "./perk.mjs";
export { default as WeaponData } from "./weapon.mjs";
export { default as ArmorData } from "./armor.mjs";
export { default as EquipmentData } from "./equipment.mjs";
export { default as FeatureData } from "./feature.mjs";
export { default as StatusData } from "./status.mjs";