diff --git a/Assets/Dojo/Plugins/WebGL/torii_c.jslib b/Assets/Dojo/Plugins/WebGL/torii_c.jslib index bfc57534..0967fd95 100644 --- a/Assets/Dojo/Plugins/WebGL/torii_c.jslib +++ b/Assets/Dojo/Plugins/WebGL/torii_c.jslib @@ -1,16 +1,12 @@ mergeInto(LibraryManager.library, { // Creates a new client and returns the pointer to it CreateClient: async function ( - rpcUrl, toriiUrl, relayUrl, worldAddress, - // callbackObjectName, - // callbackMethodName cb ) { let client = await wasm_bindgen.createClient({ - rpcUrl: UTF8ToString(rpcUrl), toriiUrl: UTF8ToString(toriiUrl), relayUrl: UTF8ToString(relayUrl), worldAddress: UTF8ToString(worldAddress), diff --git a/Assets/Dojo/Runtime/Config/WorldManagerData.cs b/Assets/Dojo/Runtime/Config/WorldManagerData.cs index 9ee4fde3..415afc45 100644 --- a/Assets/Dojo/Runtime/Config/WorldManagerData.cs +++ b/Assets/Dojo/Runtime/Config/WorldManagerData.cs @@ -11,7 +11,6 @@ public class WorldManagerData : ScriptableObject { [Header("RPC")] public string toriiUrl = "http://localhost:8080"; - public string rpcUrl = "http://localhost:5050"; public string relayUrl = "/ip4/127.0.0.1/tcp/9090"; public string relayWebrtcUrl; [Header("World")] diff --git a/Assets/Dojo/Runtime/Torii/ToriiClient.cs b/Assets/Dojo/Runtime/Torii/ToriiClient.cs index 5ddb51d2..cb488f90 100644 --- a/Assets/Dojo/Runtime/Torii/ToriiClient.cs +++ b/Assets/Dojo/Runtime/Torii/ToriiClient.cs @@ -16,13 +16,12 @@ public unsafe class ToriiClient private dojo.Subscription* entitySubscription; private dojo.Subscription* eventMessagesSubscription; - public ToriiClient(string toriiUrl, string rpcUrl, string relayUrl, FieldElement worldAddress, bool dispatchEventsToMainThread = true) + public ToriiClient(string toriiUrl, string relayUrl, FieldElement worldAddress, bool dispatchEventsToMainThread = true) { CString ctoriiUrl = CString.FromString(toriiUrl); - CString crpcUrl = CString.FromString(rpcUrl); CString crelayUrl = CString.FromString(relayUrl); - var result = dojo.client_new(ctoriiUrl, crpcUrl, crelayUrl, worldAddress.Inner); + var result = dojo.client_new(ctoriiUrl, crelayUrl, worldAddress.Inner); if (result.tag == dojo.ResultToriiClient_Tag.ErrToriiClient) { throw new Exception(result.err.message); @@ -48,9 +47,13 @@ public ToriiClient(string toriiUrl, string rpcUrl, string relayUrl, FieldElement public dojo.WorldMetadata WorldMetadata() { // TODO: implement a managed type for WorldMetadata too - dojo.WorldMetadata worldMetadata = dojo.client_metadata(client); + dojo.ResultWorldMetadata result = dojo.client_metadata(client); + if (result.tag == dojo.ResultWorldMetadata_Tag.ErrWorldMetadata) + { + throw new Exception(result.err.message); + } - return worldMetadata; + return result.ok; } // NOT USED? potentially deprecated diff --git a/Assets/Dojo/Runtime/Torii/ToriiWasmClient.cs b/Assets/Dojo/Runtime/Torii/ToriiWasmClient.cs index df0c122d..6cbfd864 100644 --- a/Assets/Dojo/Runtime/Torii/ToriiWasmClient.cs +++ b/Assets/Dojo/Runtime/Torii/ToriiWasmClient.cs @@ -14,7 +14,6 @@ namespace Dojo.Torii public class ToriiWasmClient { private string toriiUrl; - private string rpcUrl; private string relayUrl; private FieldElement world; public IntPtr clientPtr; @@ -22,10 +21,9 @@ public class ToriiWasmClient IntPtr entitySubscription; IntPtr eventMessageSubscription; - public ToriiWasmClient(string toriiUrl, string rpcUrl, string relayUrl, FieldElement world) + public ToriiWasmClient(string toriiUrl, string relayUrl, FieldElement world) { this.toriiUrl = toriiUrl; - this.rpcUrl = rpcUrl; this.relayUrl = relayUrl; this.world = world; } @@ -44,7 +42,7 @@ public static void Callback(IntPtr clientPtr) public async Task CreateClient() { CreateClientHelper.Tcs = new TaskCompletionSource(); - ToriiWasmInterop.CreateClient(new CString(rpcUrl), new CString(toriiUrl), new CString(relayUrl), new CString(world.Hex()), CreateClientHelper.Callback); + ToriiWasmInterop.CreateClient(new CString(toriiUrl), new CString(relayUrl), new CString(world.Hex()), CreateClientHelper.Callback); clientPtr = await CreateClientHelper.Tcs.Task; entitySubscription = await RegisterEntityStateUpdateEvent(new KeysClause[] { }); diff --git a/Assets/Dojo/Runtime/Torii/ToriiWasmInterop.cs b/Assets/Dojo/Runtime/Torii/ToriiWasmInterop.cs index c2c5e59d..72130796 100644 --- a/Assets/Dojo/Runtime/Torii/ToriiWasmInterop.cs +++ b/Assets/Dojo/Runtime/Torii/ToriiWasmInterop.cs @@ -34,7 +34,7 @@ public class ToriiWasmInterop : MonoBehaviour { // Creates a new client and returns the pointer to it [DllImport("__Internal")] - public static extern void CreateClient(CString rpcUrl, CString toriiUrl, CString relayUrl, CString worldAddress, Action cb); + public static extern void CreateClient(CString toriiUrl, CString relayUrl, CString worldAddress, Action cb); // Returns a dictionary of all of the entities [DllImport("__Internal")] diff --git a/Assets/Dojo/Runtime/WorldManager.cs b/Assets/Dojo/Runtime/WorldManager.cs index e258569d..83ddbf75 100644 --- a/Assets/Dojo/Runtime/WorldManager.cs +++ b/Assets/Dojo/Runtime/WorldManager.cs @@ -18,12 +18,10 @@ public class WorldManager : MonoBehaviour async void Awake() { #if UNITY_WEBGL && !UNITY_EDITOR - wasmClient = new ToriiWasmClient(dojoConfig.toriiUrl, dojoConfig.rpcUrl, - dojoConfig.relayWebrtcUrl, dojoConfig.worldAddress); + wasmClient = new ToriiWasmClient(dojoConfig.toriiUrl, dojoConfig.relayWebrtcUrl, dojoConfig.worldAddress); await wasmClient.CreateClient(); #else - toriiClient = new ToriiClient(dojoConfig.toriiUrl, dojoConfig.rpcUrl, - dojoConfig.relayUrl, dojoConfig.worldAddress); + toriiClient = new ToriiClient(dojoConfig.toriiUrl, dojoConfig.relayUrl, dojoConfig.worldAddress); #endif /* fetch entities from the world