# luigimtn/west_shoot architecture

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

- Interactive diagram: https://gitdiagram.com/luigimtn/west_shoot
- Repository: https://github.com/luigimtn/west_shoot

## Overview

west_shoot is a GameMaker prototype described as a roguelike game. Its tree shows a playable room, a controller, player and weapon object families, targets, bottles, projectiles, and a HUD, suggesting a shooting-game workflow with combat and on-screen status. Scripts cover life animation, weapon spin, and reloading. The README provides no workflow details, and no source excerpts were available, so connections between these components are omitted rather than inferred from names alone.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_play["Game Runtime"]
  node_room["Game Room<br/>[Room1.yy]"]
  node_controller["Controller"]
  node_player_obj["Player Base"]
  node_life_anim["Life Animation"]
end

subgraph group_combat["Combat Objects"]
  node_weapon_obj["Weapon Base"]
  node_weapon_spin["Weapon Spin"]
  node_reload["Weapon Reload"]
  node_bullet["Projectile"]
  node_target["Target"]
  node_bottle["Bottle Box"]
  node_collision["Collision Object"]
end

subgraph group_interface["Player Interface"]
  node_hud["HUD"]
end

subgraph group_art["Game Assets"]
  node_sprites["Game Sprites"]
  node_font["Pixel Font"]
end

node_player(("Player"))

click node_room "https://github.com/luigimtn/west_shoot/blob/main/west_shoot/rooms/Room1/Room1.yy"
click node_controller "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_controller"
click node_player_obj "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_player_parent"
click node_life_anim "https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_life_animation/scr_life_animation.gml"
click node_weapon_obj "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_weapon_parent"
click node_weapon_spin "https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_weapon_base_spin/scr_weapon_base_spin.gml"
click node_reload "https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_weapon_reload/scr_weapon_reload.gml"
click node_bullet "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_bullet_simple"
click node_target "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_alvo"
click node_bottle "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_box_bottle"
click node_collision "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_collision"
click node_hud "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_hud"
click node_sprites "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/sprites"
click node_font "https://github.com/luigimtn/west_shoot/tree/main/west_shoot/fonts/fnt_ReffsPixelFont"

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_room,node_controller,node_player_obj,node_life_anim toneBlue
class node_weapon_obj,node_weapon_spin,node_reload,node_bullet,node_target,node_bottle,node_collision toneAmber
class node_hud toneMint
class node_sprites,node_font toneRose
class node_player toneIndigo
```

## Components

### Game Runtime

- [Game Room](https://github.com/luigimtn/west_shoot/blob/main/west_shoot/rooms/Room1/Room1.yy): `west_shoot/rooms/Room1/Room1.yy`
- [Controller](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_controller): `west_shoot/objects/obj_controller`
- [Player Base](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_player_parent): `west_shoot/objects/obj_player_parent`
- [Life Animation](https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_life_animation/scr_life_animation.gml): `west_shoot/scripts/scr_life_animation/scr_life_animation.gml`

### Combat Objects

- [Weapon Base](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_weapon_parent): `west_shoot/objects/obj_weapon_parent`
- [Weapon Spin](https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_weapon_base_spin/scr_weapon_base_spin.gml): `west_shoot/scripts/scr_weapon_base_spin/scr_weapon_base_spin.gml`
- [Weapon Reload](https://github.com/luigimtn/west_shoot/blob/main/west_shoot/scripts/scr_weapon_reload/scr_weapon_reload.gml): `west_shoot/scripts/scr_weapon_reload/scr_weapon_reload.gml`
- [Projectile](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_bullet_simple): `west_shoot/objects/obj_bullet_simple`
- [Target](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_alvo): `west_shoot/objects/obj_alvo`
- [Bottle Box](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_box_bottle): `west_shoot/objects/obj_box_bottle`
- [Collision Object](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_collision): `west_shoot/objects/obj_collision`

### Player Interface

- [HUD](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/objects/obj_hud): `west_shoot/objects/obj_hud`

### Game Assets

- [Game Sprites](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/sprites): `west_shoot/sprites`
- [Pixel Font](https://github.com/luigimtn/west_shoot/tree/main/west_shoot/fonts/fnt_ReffsPixelFont): `west_shoot/fonts/fnt_ReffsPixelFont`

### Other components

- **Player**
