Use runtime catalog for observed UI item metadata
This commit is contained in:
parent
96bed4ccef
commit
95e1b44dce
2 changed files with 18 additions and 3 deletions
|
|
@ -8134,7 +8134,11 @@ static void RequireMainMenuContinueRunState(string root)
|
|||
"ObservedAvailableEntities(",
|
||||
"TryGetObservedCurrentEntity(out var currentEntity)",
|
||||
"parentSnapshot.ChildEntityIndices",
|
||||
"TryGetObservedEntityFacade(childEntityIndex, out var entity)"
|
||||
"TryGetObservedEntityFacade(childEntityIndex, out var entity)",
|
||||
"FindTypedRuntimeItem(",
|
||||
"RuntimeCatalog?.FindItem(item?.ItemKey ?? \"\")",
|
||||
"var typedItem = FindTypedRuntimeItem(item?.EquippableItem)",
|
||||
"var targetHull = FindTypedRuntimeItem(target.Hull)"
|
||||
};
|
||||
|
||||
if (actionGameManager.Contains("_authoritativeDaemonEntities", StringComparison.Ordinal))
|
||||
|
|
@ -8143,6 +8147,12 @@ static void RequireMainMenuContinueRunState(string root)
|
|||
"Unity entity wrappers are observed daemon facades, not authoritative state; keep the daemon as authority.");
|
||||
}
|
||||
|
||||
if (actionGameManager.Contains("ItemManager.GetRuntimeItem", StringComparison.Ordinal))
|
||||
{
|
||||
throw new InvalidOperationException(
|
||||
"ActionGameManager still resolves item metadata through Unity ItemManager instead of the runtime catalog.");
|
||||
}
|
||||
|
||||
var missingGameplaySymbols = requiredGameplaySymbols
|
||||
.Where(symbol => !actionGameManager.Contains(symbol, StringComparison.Ordinal))
|
||||
.ToArray();
|
||||
|
|
|
|||
Loading…
Reference in a new issue