refactor(runtime): extract the live object frame
This commit is contained in:
parent
99a3e819c4
commit
4e4aac2c5a
27 changed files with 1217 additions and 371 deletions
30
src/AcDream.App/Input/LocalPlayerRuntimeState.cs
Normal file
30
src/AcDream.App/Input/LocalPlayerRuntimeState.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
using AcDream.Core.Physics;
|
||||
|
||||
namespace AcDream.App.Input;
|
||||
|
||||
internal interface ILocalPlayerIdentitySource
|
||||
{
|
||||
uint ServerGuid { get; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Session-scoped identity slot shared by focused update owners.
|
||||
/// </summary>
|
||||
internal sealed class LocalPlayerIdentityState : ILocalPlayerIdentitySource
|
||||
{
|
||||
public uint ServerGuid { get; set; }
|
||||
}
|
||||
|
||||
internal interface ILocalPlayerControllerSource
|
||||
{
|
||||
PlayerMovementController? Controller { get; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The one mutable local movement-controller slot. Player-mode lifecycle owns
|
||||
/// assignment; update and presentation owners receive the read-only seam.
|
||||
/// </summary>
|
||||
internal sealed class LocalPlayerControllerSlot : ILocalPlayerControllerSource
|
||||
{
|
||||
public PlayerMovementController? Controller { get; set; }
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue