public T get() { if (GameAssetManager.TryGetAsset <T>(GUID, out var res)) { return(res); } else { return(default);
public void resolveAllPossibilites <T>(HashSet <ushort> possibilites) where T : GameAsset { foreach (var t in tables) { if (t.spawnID > 0 && GameAssetManager.TryGetAsset <GameSpawnAsset>(t.spawnID, out var gameSpawnAsset)) { gameSpawnAsset.sortAndNormalizeWeights(); gameSpawnAsset.resolveAllPossibilites <T>(possibilites); } else if (t.assetID > 0 && GameAssetManager.TryGetAsset <T>(t.assetID, out var gameAsset)) { possibilites.Add(gameAsset.id); } } }