How aaaarrrrrrttttiiiiixxxx/game works
This is a desktop action game: the player starts a run from the Qt menu, survives real-time combat, gains levels, chooses upgrades or abilities, and returns a level result when defeated. The sampled code establishes the menu-to-game and game-loop orchestration, plus player combat, damage events, and the fire-roller ability. The README is empty and several gameplay modules are unsampled, so uncertain subsystem wiring is omitted.
Main entry points: game.py Game loop · player.py Player · main_window.py Main window · unit_layer.py Unit layer
Components 23
Desktop menu
- Application entry
main.py - Main window
main_menu/main_window.py - Menu widgets
main_menu/widgets - Best result
main_menu/best_result_repository.py
Run orchestration
- Game loop
game.py - Run result
main_menu/main_window.py
World and combat
- Player
units/player.py - Unit layer
unit_layer.py - Enemy generator
unit_generator.py - Enemies
units/enemies.py - Unit behavior
units/base_units.py - Combat events
EventAggregator.py - Moving units
units/moving_to_point.py
Abilities and progression
- Upgrade choice
ability_choose_screen.py - Upgrade factory
upgrades_and_abilities/upgrades.py - Ability system
upgrades_and_abilities/base_abilities.py - Fire roller
upgrades_and_abilities/fire_roller_ability.py
Rendering and state
- Frame clock
clock.py - Background
background.py - Camera
camera.py - Unit image stores
units/image_stores.py - Image provider
image_provider.py
Other components
- Player
Connections 29
- Player → Main window: starts run
- Application entry → Main window: opens
- Main window → Menu widgets: builds UI
- Main window → Game loop: runs game
- Main window → Best result: reads and updates
- Game loop → Frame clock: ticks
- Game loop → Background: draws
- Game loop → Camera: creates
- Game loop → Unit layer: creates and updates
- Game loop → Enemy generator: steps
- Game loop → Upgrade factory: requests choices
- Game loop → Upgrade choice: opens choice
- Game loop → Player: reads and controls
- Game loop → Run result: returns level
- Unit layer → Player: manages
- Enemy generator → Unit layer: adds enemies
- Player → Unit layer: queries nearby mobs
- Player → Combat events: dispatches damage
- Unit behavior → Combat events: subscribes to damage
- Unit behavior → Unit image stores: loads frames
- Unit behavior → Camera: maps positions
- Upgrade factory → Player: checks eligibility
- Game loop → Upgrade choice: applies selection
- Player → Ability system: uses and advances
- Fire roller → Moving units: creates moving unit
- Fire roller → Unit layer: adds projectile
- Fire roller → Combat events: dispatches damage
- Fire roller → Image provider: loads icon
- Upgrade factory → Image provider: loads icons