From b6e4842cf8206b384777d66f9a2ce970ae117d15 Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Fri, 25 Sep 2020 15:48:47 +0200 Subject: [PATCH] updated method to get id based on name --- RH-Engine/Command.cs | 6 +++--- RH-Engine/Program.cs | 19 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/RH-Engine/Command.cs b/RH-Engine/Command.cs index 20b4f67..9277c99 100644 --- a/RH-Engine/Command.cs +++ b/RH-Engine/Command.cs @@ -74,7 +74,6 @@ namespace RH_Engine dynamic payload = new { id = "scene/node/add", - serial = "needResponse", data = new { name = "newNode", @@ -373,11 +372,12 @@ namespace RH_Engine return JsonConvert.SerializeObject(Payload(payload)); } - public string GetSceneInfoCommand() + public string GetSceneInfoCommand(string serialToSend) { dynamic payload = new { - id = "scene/get" + id = "scene/get", + serial = serialToSend }; return JsonConvert.SerializeObject(Payload(payload)); diff --git a/RH-Engine/Program.cs b/RH-Engine/Program.cs index b2d4cbf..51e385b 100644 --- a/RH-Engine/Program.cs +++ b/RH-Engine/Program.cs @@ -164,6 +164,8 @@ namespace RH_Engine SendMessageAndOnResponse(stream, mainCommand.addPanel("panelID"), "panelID", (message) => panelId = JSONParser.GetResponseUuid(message)); + Console.WriteLine("id of head " + GetId(Command.STANDARD_HEAD,stream,mainCommand)); + //command = mainCommand.AddModel("car", "data\\customModels\\TeslaRoadster.fbx"); //WriteTextMessage(stream, command); @@ -216,13 +218,9 @@ namespace RH_Engine height[i] = improvedPerlin.GetValue(x / 10, x / 10, x * 100) + 1; x += 0.001f; } - - //=============================================================================================================TODO change WriteTextMessage(stream, createGraphics.TerrainCommand(new int[] { 256, 256 }, height)); - //Console.WriteLine(ReadPrefMessage(stream)); WriteTextMessage(stream, createGraphics.AddNodeCommand()); - //Console.WriteLine(ReadPrefMessage(stream)); } /// @@ -233,11 +231,14 @@ namespace RH_Engine /// all the children objects in the current scene public static JArray GetChildren(NetworkStream stream, Command createGraphics) { - WriteTextMessage(stream, createGraphics.GetSceneInfoCommand()); - //dynamic response = JsonConvert.DeserializeObject(ReadPrefMessage(stream)); - //return response.data.data.data.children; - //=============================================================================================================TODO change - return null; + JArray res = null; + SendMessageAndOnResponse(stream, createGraphics.GetSceneInfoCommand("getChildren"),"getChildren",(message) => + { + dynamic response = JsonConvert.DeserializeObject(message); + res = response.data.data.data.children; + }); + while (res == null) { } + return res; } ///