# onezhazha233/thunder-fighter-project architecture

> Architecture diagram of the GitHub repository onezhazha233/thunder-fighter-project, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/onezhazha233/thunder-fighter-project
- Repository: https://github.com/onezhazha233/thunder-fighter-project

## Overview

The repository appears to be a GameMaker action shooter, with player aircraft, weapons, enemies, staged waves, bosses, and battle UI represented in its object and room directories. It also includes equipment, localization, audio, and game-state scripts. The README is empty and no source excerpts were provided, so these capabilities are inferred from names; execution order, calls, and data flow cannot be verified, and are not shown.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_gameflow["Game Flow"]
  node_battle["Battle Runtime"]
  node_waves["Wave Stages"]
  node_swarm["Swarm Waves"]
  node_battleui["Battle Interface"]
  node_rooms["Game Rooms"]
end

subgraph group_combat["Combat"]
  node_player["Player Actor"]
  node_bosses["Boss Encounters"]
  node_enemies["Enemy Actors"]
  node_playerweapons["Player Weapons"]
  node_enemyweapons["Enemy Weapons"]
  node_items["Battle Items"]
end

subgraph group_content["Player Content"]
  node_planes["Aircraft"]
  node_wingmen["Wingmen"]
  node_equipment["Equipment Setup"]
end

subgraph group_services["Game Services"]
  node_state["Game State"]
  node_save["Save Flags"]
  node_language["Localization"]
  node_audio["Audio Control"]
end

click node_player "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/player"
click node_battle "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle"
click node_waves "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_wave_manager_stage"
click node_swarm "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_wave_swarm"
click node_bosses "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/boss_agent"
click node_enemies "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/enemy_agent"
click node_playerweapons "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/emitter_player"
click node_enemyweapons "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/emitter_enemy"
click node_items "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_item_agent"
click node_planes "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/plane_agent"
click node_wingmen "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/wingman_agent"
click node_equipment "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/equipment_main"
click node_battleui "https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_ui"
click node_rooms "https://github.com/onezhazha233/thunder-fighter-project/tree/main/rooms"
click node_state "https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/GlobalInit"
click node_save "https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/Flag_Save"
click node_language "https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/Lang_Init"
click node_audio "https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/BGM_Init"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_battle,node_waves,node_swarm,node_battleui,node_rooms toneBlue
class node_player,node_bosses,node_enemies,node_playerweapons,node_enemyweapons,node_items toneAmber
class node_planes,node_wingmen,node_equipment toneMint
class node_state,node_save,node_language,node_audio toneRose
```

## Components

### Game Flow

- [Battle Runtime](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle): `objects/battle`
- [Wave Stages](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_wave_manager_stage): `objects/battle_wave_manager_stage`
- [Swarm Waves](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_wave_swarm): `objects/battle_wave_swarm`
- [Battle Interface](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_ui): `objects/battle_ui`
- [Game Rooms](https://github.com/onezhazha233/thunder-fighter-project/tree/main/rooms): `rooms`

### Combat

- [Player Actor](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/player): `objects/player`
- [Boss Encounters](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/boss_agent): `objects/boss_agent`
- [Enemy Actors](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/enemy_agent): `objects/enemy_agent`
- [Player Weapons](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/emitter_player): `objects/emitter_player`
- [Enemy Weapons](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/emitter_enemy): `objects/emitter_enemy`
- [Battle Items](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/battle_item_agent): `objects/battle_item_agent`

### Player Content

- [Aircraft](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/plane_agent): `objects/plane_agent`
- [Wingmen](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/wingman_agent): `objects/wingman_agent`
- [Equipment Setup](https://github.com/onezhazha233/thunder-fighter-project/tree/main/objects/equipment_main): `objects/equipment_main`

### Game Services

- [Game State](https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/GlobalInit): `scripts/GlobalInit`
- [Save Flags](https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/Flag_Save): `scripts/Flag_Save`
- [Localization](https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/Lang_Init): `scripts/Lang_Init`
- [Audio Control](https://github.com/onezhazha233/thunder-fighter-project/tree/main/scripts/BGM_Init): `scripts/BGM_Init`
