namespace AcDream.Core.Physics;
///
/// Executes the manager tail of retail
/// CPhysicsObj::UpdateObjectInternal (0x005156B0).
///
///
/// The order is observable. In particular, animation completion hooks have
/// already run when this tail begins, so MoveTo may react to a completion in
/// the same object quantum. A null callback represents an absent retail
/// manager; it is not a separate execution path.
///
public static class RetailObjectManagerTail
{
public static void Run(
Action? checkDetection,
Action? handleTargeting,
Action? movementUseTime,
Action? partArrayHandleMovement,
Action? positionUseTime)
{
checkDetection?.Invoke();
handleTargeting?.Invoke();
movementUseTime?.Invoke();
partArrayHandleMovement?.Invoke();
positionUseTime?.Invoke();
}
}