refactor(runtime): own combat and magic intent
Move attack build/repeat state, combat-mode policy, authoritative auto-target transitions, and spell-cast intent beneath RuntimeActionState. Keep App as the input, world-query, DAT-policy, transport, and presentation adapter while preserving retail request and busy ordering. Add direct/graphical parity, reset, failure, and instance-isolation coverage. Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
parent
81b31857c6
commit
20df9d155d
49 changed files with 1949 additions and 634 deletions
|
|
@ -112,6 +112,19 @@ public interface IRuntimeCombatCommands
|
|||
RuntimeCommandResult Execute(
|
||||
RuntimeGenerationToken expectedGeneration,
|
||||
RuntimeCombatCommand command);
|
||||
|
||||
RuntimeCommandResult ExecuteAttack(
|
||||
RuntimeGenerationToken expectedGeneration,
|
||||
in Gameplay.RuntimeCombatAttackInput command);
|
||||
}
|
||||
|
||||
public readonly record struct RuntimeMagicCommand(uint SpellId);
|
||||
|
||||
public interface IRuntimeMagicCommands
|
||||
{
|
||||
RuntimeCommandResult Execute(
|
||||
RuntimeGenerationToken expectedGeneration,
|
||||
in RuntimeMagicCommand command);
|
||||
}
|
||||
|
||||
public interface IRuntimeMovementCommands
|
||||
|
|
@ -251,6 +264,8 @@ public interface IGameRuntimeCommands
|
|||
|
||||
IRuntimeCombatCommands Combat { get; }
|
||||
|
||||
IRuntimeMagicCommands Magic { get; }
|
||||
|
||||
IRuntimeMovementCommands Movement { get; }
|
||||
|
||||
IRuntimeChatCommands Chat { get; }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue