Files
pokemon-battle-engine/include/README.md
2025-08-13 23:27:08 +00:00

1.8 KiB

Include Directory (include/)

This directory contains all C++ header files (.h/.hpp) for the Pokemon battle simulator.

Planned Structure

include/
├── pokemon_sim/           # Main namespace headers
│   ├── core/              # Core battle system headers
│   │   ├── battle.h       # Battle class and enums
│   │   ├── pokemon.h      # Pokemon class definition
│   │   ├── move.h         # Move system headers
│   │   ├── type.h         # Type system and effectiveness
│   │   └── status.h       # Status effects
│   ├── data/              # Data management headers
│   │   ├── pokemon_data.h # Pokemon species data
│   │   ├── move_data.h    # Move definitions
│   │   └── loader.h       # Data loading interface
│   ├── ai/                # AI system headers
│   │   ├── ai_base.h      # Base AI interface
│   │   ├── random_ai.h    # Random AI strategy
│   │   └── minimax_ai.h   # Minimax AI strategy
│   ├── utils/             # Utility headers
│   │   ├── random.h       # Random utilities
│   │   ├── stats.h        # Stat calculation helpers
│   │   └── constants.h    # Game constants
│   └── pokemon_sim.h      # Main include file

Header Guidelines

  • Include Guards: Use #pragma once for all headers
  • Forward Declarations: Minimize #include dependencies
  • Const Correctness: Mark methods const where appropriate
  • Documentation: Doxygen-style comments for public APIs
  • Namespace: All code in pokemon_sim namespace

Public API

The main pokemon_sim.h header provides a clean public interface for library users, hiding implementation details while exposing necessary functionality for battle simulation.