From 7272667e2cb9777dc40f3c8b3bed5f7ffd325560 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Wed, 15 Jul 2026 10:53:19 +0100 Subject: [PATCH] Resolve provider beam roles in live clients --- .../Runtime/EveUnityBeamPresentationRenderer.cs | 2 +- .../Tests/Editor/EveUnityBeamPresentationTests.cs | 3 +++ packages/org.gamecult.eve.unity-scene/package.json | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/org.gamecult.eve.unity-scene/Runtime/EveUnityBeamPresentationRenderer.cs b/packages/org.gamecult.eve.unity-scene/Runtime/EveUnityBeamPresentationRenderer.cs index c118c3b..4265b4c 100644 --- a/packages/org.gamecult.eve.unity-scene/Runtime/EveUnityBeamPresentationRenderer.cs +++ b/packages/org.gamecult.eve.unity-scene/Runtime/EveUnityBeamPresentationRenderer.cs @@ -64,7 +64,7 @@ namespace GameCult.Eve.UnityScene { Remove(presentation.Id); var prefab = assetProvider?.ResolvePrefab(new EveUnityPlayableWorldAssetBinding( - "", presentation.AssetRole, "provider-asset-ref")); + presentation.AssetRole, presentation.AssetRole, "provider-asset-ref")); if (prefab == null) continue; var root = Instantiate(prefab, source.Transform, false); root.name = "Eve beam " + presentation.Id; diff --git a/packages/org.gamecult.eve.unity-scene/Tests/Editor/EveUnityBeamPresentationTests.cs b/packages/org.gamecult.eve.unity-scene/Tests/Editor/EveUnityBeamPresentationTests.cs index 99e965f..0af9e69 100644 --- a/packages/org.gamecult.eve.unity-scene/Tests/Editor/EveUnityBeamPresentationTests.cs +++ b/packages/org.gamecult.eve.unity-scene/Tests/Editor/EveUnityBeamPresentationTests.cs @@ -50,6 +50,7 @@ namespace GameCult.Eve.UnityScene.Tests { renderer.Apply(new[] { Presentation(0.5f) }, registry, provider); + Assert.That(provider.LastAssetRef, Is.EqualTo("effect.beam.tractor")); Assert.That(provider.LastRole, Is.EqualTo("effect.beam.tractor")); Assert.That(renderer.ActiveBeamCount, Is.EqualTo(1)); Assert.That(renderer.TryGetPower("tractor", out var power), Is.True); @@ -127,9 +128,11 @@ namespace GameCult.Eve.UnityScene.Tests { private readonly GameObject _prefab; public Provider(GameObject prefab) { _prefab = prefab; } + public string LastAssetRef { get; private set; } = ""; public string LastRole { get; private set; } = ""; public GameObject? ResolvePrefab(EveUnityPlayableWorldAssetBinding asset) { + LastAssetRef = asset.AssetRef; LastRole = asset.EntityKind; return _prefab; } diff --git a/packages/org.gamecult.eve.unity-scene/package.json b/packages/org.gamecult.eve.unity-scene/package.json index ac92254..01fc2fa 100644 --- a/packages/org.gamecult.eve.unity-scene/package.json +++ b/packages/org.gamecult.eve.unity-scene/package.json @@ -1,7 +1,7 @@ { "name": "org.gamecult.eve.unity-scene", "displayName": "Eve Unity Scene Lowering", - "version": "0.3.28", + "version": "0.3.29", "unity": "2021.3", "description": "Provider-agnostic Unity scene shell for gamecult.eve.surface.v1 interactive world surfaces.", "dependencies": {