From 6f1afaf5a3597c5febd83695a230be0587a90021 Mon Sep 17 00:00:00 2001 From: Bastian Wagner Date: Thu, 20 Aug 2026 21:12:46 +0200 Subject: [PATCH] feat(combat): add the Slice 0.6 action and event-type enum members --- apps/api/src/combat/combat-action.enum.ts | 7 ++++--- apps/api/src/combat/combat-event-type.enum.ts | 4 ++++ apps/api/src/combat/combat.controller.spec.ts | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/api/src/combat/combat-action.enum.ts b/apps/api/src/combat/combat-action.enum.ts index 1dadb45..9e388dd 100644 --- a/apps/api/src/combat/combat-action.enum.ts +++ b/apps/api/src/combat/combat-action.enum.ts @@ -1,6 +1,7 @@ -// Only ATTACK is implemented in Slice 0.3. Future slices add HEAVY_STRIKE, -// SHIELD_BASH, DEFEND, POTION, FLEE as real members with their own -// CombatEngineService cases — do not add them here until their behavior ships. export enum CombatAction { ATTACK = 'ATTACK', + HEAVY_STRIKE = 'HEAVY_STRIKE', + SHIELD_BASH = 'SHIELD_BASH', + DEFEND = 'DEFEND', + POTION = 'POTION', } diff --git a/apps/api/src/combat/combat-event-type.enum.ts b/apps/api/src/combat/combat-event-type.enum.ts index 61294e1..6fea0f3 100644 --- a/apps/api/src/combat/combat-event-type.enum.ts +++ b/apps/api/src/combat/combat-event-type.enum.ts @@ -1,5 +1,9 @@ export enum CombatEventType { DAMAGE = 'DAMAGE', + HEAL = 'HEAL', + DEFEND = 'DEFEND', + TELEGRAPH = 'TELEGRAPH', + INTERRUPT = 'INTERRUPT', COMBAT_WON = 'COMBAT_WON', COMBAT_LOST = 'COMBAT_LOST', } diff --git a/apps/api/src/combat/combat.controller.spec.ts b/apps/api/src/combat/combat.controller.spec.ts index ab89048..90d6899 100644 --- a/apps/api/src/combat/combat.controller.spec.ts +++ b/apps/api/src/combat/combat.controller.spec.ts @@ -80,7 +80,7 @@ describe('CombatController', () => { it('rejects an unknown action value', async () => { await request(app.getHttpServer()) .post('/api/combats/combat-1/actions') - .send({ action: 'HEAVY_STRIKE' }) + .send({ action: 'FLEE' }) .expect(400); expect(performAction).not.toHaveBeenCalled();