Single source of truth: combat logic, storage parity, slot ordering #3

Merged
robert merged 32 commits from single-source into main 2026-07-05 00:07:57 -04:00
Showing only changes of commit 9ef3e3bd9e - Show all commits
+1 -1
View File
@@ -1352,7 +1352,7 @@ function ParticipantManager({ encounter, encounterPath, campaignCharacters, camp
className="mt-1 w-full px-3 py-2 bg-stone-700 border-stone-600 rounded text-white" className="mt-1 w-full px-3 py-2 bg-stone-700 border-stone-600 rounded text-white"
> >
<option value="">-- Select from Campaign --</option> <option value="">-- Select from Campaign --</option>
{campaignCharacters.map(c => ( {campaignCharacters.filter(c => !participants.some(p => p.type === 'character' && p.originalCharacterId === c.id)).map(c => (
<option key={c.id} value={c.id}> <option key={c.id} value={c.id}>
{c.name} (HP: {c.defaultMaxHp || 'N/A'}, Mod: {formatInitMod(c.defaultInitMod)}) {c.name} (HP: {c.defaultMaxHp || 'N/A'}, Mod: {formatInitMod(c.defaultInitMod)})
</option> </option>