How itsamecycy/hit works
HIT is a small Raylib first-person-shooter exercise. The user-facing flow is menu selection into real-time first-person movement around obstacles, with grappling, pause/settings navigation, and rendered/audio feedback; credits and menu music are also handled by the game loop. A separate loadout/model path exists in source, but the sampled main loop does not connect it to gameplay. The map interface and manual are present in the tree, but their contents were not sampled, so their runtime role is unclear.
Main entry points: main.cpp Game State Loop · playerMovement.cpp Player Movement · mainMenu.cpp Main Menu · pauseSystem.cpp Pause Menu
Components 15
Game Loop
- Game State Loop
HITler/src/main.cpp - Audio Playback
HITler/src/main.cpp - Sound Assets
HITler/assets/sounds
Menus And Settings
- Main Menu
HITler/src/scenes/mainMenu.cpp - Pause Menu
HITler/src/system/pauseSystem.cpp - Settings
HITler/src/system/settings.cpp
Gameplay
- Player Movement
HITler/src/system/playerMovement.cpp - Obstacle State
HITler/src/main.cpp - Gameplay Rendering
HITler/src/main.cpp
Loadout And Models
- Weapon Loadout
HITler/src/system/loadout.cpp - Gun Model
HITler/src/models/guns.cpp - Gun Assets
HITler/assets/models/guns
Other components
- Player
- Raylib Runtime
- Game Display
Connections 21
- Player → Game State Loop: provides input
- Game State Loop → Main Menu: updates and draws
- Game State Loop → Pause Menu: updates and draws
- Game State Loop → Settings: updates and draws
- Game State Loop → Player Movement: updates
- Game State Loop → Obstacle State: provides collision data
- Game State Loop → Player Movement: provides obstacles
- Player Movement → Game State Loop: updates camera
- Game State Loop → Gameplay Rendering: draws gameplay
- Game State Loop → Audio Playback: controls playback
- Audio Playback → Sound Assets: loads audio
- Weapon Loadout → Gun Model: loads and previews
- Gun Model → Gun Assets: loads models
- Game State Loop → Raylib Runtime: uses window and audio
- Main Menu → Raylib Runtime: reads input and draws
- Pause Menu → Raylib Runtime: reads input and draws
- Settings → Raylib Runtime: reads input and draws
- Player Movement → Raylib Runtime: reads input and collision
- Gameplay Rendering → Raylib Runtime: draws scene
- Game State Loop → Game Display: presents frames
- Audio Playback → Raylib Runtime: plays sounds