acdream/src/AcDream.App/Physics/LocalPlayerShadowState.cs
Erik 69a2ca0c6d refactor(world): extract live projection mechanics
Move appearance rebinding, collision construction, default-pose resolution, local shadow ownership, and exact leave-world presentation into focused owners. Preserve retail parent ordering with staged validation, committed recovery, recursive attached-subtree withdrawal, and retryable exact teardown across parent, pickup, position, unwield, and pose-loss edges.

Co-Authored-By: OpenAI Codex <codex@openai.com>
2026-07-21 16:17:03 +02:00

19 lines
561 B
C#

using System.Numerics;
namespace AcDream.App.Physics;
/// <summary>Session-scoped cache of the local player's last published shadow pose.</summary>
internal sealed class LocalPlayerShadowState
{
public readonly record struct Snapshot(
Vector3 Position,
Quaternion Orientation,
uint CellId);
public Snapshot? Current { get; private set; }
public void Set(Vector3 position, Quaternion orientation, uint cellId) =>
Current = new Snapshot(position, orientation, cellId);
public void Clear() => Current = null;
}