diff --git a/apps/api/src/app.module.ts b/apps/api/src/app.module.ts index fff7a2a..c8be7e0 100644 --- a/apps/api/src/app.module.ts +++ b/apps/api/src/app.module.ts @@ -1,5 +1,6 @@ import { Module } from '@nestjs/common'; import { CharactersModule } from './characters/characters.module'; +import { CombatModule } from './combat/combat.module'; import { DatabaseModule } from './database/database.module'; import { HealthModule } from './health/health.module'; import { HuntingModule } from './hunting/hunting.module'; @@ -14,6 +15,7 @@ import { WorldModule } from './world/world.module'; TravelModule, WorldModule, HuntingModule, + CombatModule, ], }) export class AppModule {} diff --git a/apps/api/src/characters/characters.module.ts b/apps/api/src/characters/characters.module.ts index cb5e2c3..f8a46c1 100644 --- a/apps/api/src/characters/characters.module.ts +++ b/apps/api/src/characters/characters.module.ts @@ -1,5 +1,6 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; +import { CharacterCombatStatsService } from './character-combat-stats.service'; import { CharactersController } from './characters.controller'; import { CharactersService } from './characters.service'; import { Character } from './entities/character.entity'; @@ -7,6 +8,7 @@ import { Character } from './entities/character.entity'; @Module({ imports: [TypeOrmModule.forFeature([Character])], controllers: [CharactersController], - providers: [CharactersService], + providers: [CharactersService, CharacterCombatStatsService], + exports: [CharacterCombatStatsService], }) export class CharactersModule {} diff --git a/apps/api/src/combat/combat.module.ts b/apps/api/src/combat/combat.module.ts new file mode 100644 index 0000000..10ace1b --- /dev/null +++ b/apps/api/src/combat/combat.module.ts @@ -0,0 +1,25 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmModule } from '@nestjs/typeorm'; +import { CharactersModule } from '../characters/characters.module'; +import { Character } from '../characters/entities/character.entity'; +import { Hunt } from '../hunting/entities/hunt.entity'; +import { HuntEncounter } from '../hunting/entities/hunt-encounter.entity'; +import { MonsterDefinition } from '../monsters/entities/monster-definition.entity'; +import { TravelModule } from '../travel/travel.module'; +import { CombatEngineService } from './combat-engine.service'; +import { CombatController } from './combat.controller'; +import { CombatService } from './combat.service'; +import { Combat } from './entities/combat.entity'; +import { CombatEvent } from './entities/combat-event.entity'; +import { HuntEncounterAttackController } from './hunt-encounter-attack.controller'; + +@Module({ + imports: [ + TypeOrmModule.forFeature([Character, Hunt, HuntEncounter, MonsterDefinition, Combat, CombatEvent]), + TravelModule, + CharactersModule, + ], + controllers: [CombatController, HuntEncounterAttackController], + providers: [CombatService, CombatEngineService], +}) +export class CombatModule {}