fb48285143
Replace the one-fighter-at-a-time turn model with an OPENING/PRE_ROUND/ PLAYER_SELECTION/AI_SELECTION/MOVES_EXECUTING/POST_ROUND/ENDED state machine and a per-fighter action queue, so actions are decided before any of them execute (needed for speed-ordered resolution) and so a cutscene can pause the battle, wait for a specific state, and force a fighter's action -- enabling automated, fully-scripted, and partially-scripted battles. Adds CUTSCENE_PAUSE_BATTLE plus CUTSCENE_BATTLE_WAIT_STATE and CUTSCENE_BATTLE_FORCE_ACTION cutscene items, and generic onStateChanged/ onActionDecided callbacks on battle_t. Re-enables the long-dormant test/rpg suite and adds test/rpg/battle covering the state machine and the new cutscene hooks end-to-end. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
13 lines
240 B
CMake
13 lines
240 B
CMake
# Copyright (c) 2026 Dominic Masters
|
|
#
|
|
# This software is released under the MIT License.
|
|
# https://opensource.org/licenses/MIT
|
|
|
|
include(dusktest)
|
|
|
|
# Tests
|
|
dusktest(test_rpg.c)
|
|
|
|
# Subdirs
|
|
add_subdirectory(overworld)
|
|
add_subdirectory(battle) |