104 lines
3.4 KiB
C#
104 lines
3.4 KiB
C#
using Newtonsoft.Json;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Text;
|
|
|
|
namespace RH_Engine
|
|
{
|
|
class CreateGraphics
|
|
{
|
|
string tunnelID;
|
|
|
|
public CreateGraphics(string tunnelID)
|
|
{
|
|
this.tunnelID = tunnelID;
|
|
}
|
|
|
|
public string TerrainCommand()
|
|
{
|
|
StringBuilder sb = new StringBuilder();
|
|
StringWriter sw = new StringWriter(sb);
|
|
|
|
using (JsonWriter writer = new JsonTextWriter(sw))
|
|
{
|
|
writer.Formatting = Formatting.Indented;
|
|
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("id");
|
|
writer.WriteValue("tunnel/send");
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("dest");
|
|
writer.WriteValue(tunnelID);
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("id");
|
|
writer.WriteValue("scene/terrain/add");
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("size");
|
|
writer.WriteStartArray();
|
|
writer.WriteValue(2);
|
|
writer.WriteValue(2);
|
|
writer.WriteEndArray();
|
|
writer.WritePropertyName("heights");
|
|
writer.WriteStartArray();
|
|
writer.WriteValue(30000000);
|
|
writer.WriteValue(2);
|
|
writer.WriteValue(4);
|
|
writer.WriteValue(7);
|
|
writer.WriteEndArray();
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
|
|
}
|
|
|
|
Console.WriteLine(sb.ToString());
|
|
return sb.ToString();
|
|
}
|
|
|
|
public string SkyboxCommand(double time)
|
|
{
|
|
if (time < 0 || time > 24)
|
|
{
|
|
throw new Exception("The time must be between 0 and 24!");
|
|
}
|
|
StringBuilder sb = new StringBuilder();
|
|
StringWriter sw = new StringWriter(sb);
|
|
|
|
using (JsonWriter writer = new JsonTextWriter(sw))
|
|
{
|
|
writer.Formatting = Formatting.Indented;
|
|
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("id");
|
|
writer.WriteValue("tunnel/send");
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("dest");
|
|
writer.WriteValue(tunnelID);
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("id");
|
|
writer.WriteValue("scene/skybox/settime");
|
|
writer.WritePropertyName("data");
|
|
writer.WriteStartObject();
|
|
writer.WritePropertyName("time");
|
|
writer.WriteValue(time);
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
writer.WriteEndObject();
|
|
|
|
}
|
|
|
|
Console.WriteLine("MESSAGE TO SEND: " + sb.ToString());
|
|
return sb.ToString();
|
|
|
|
}
|
|
}
|
|
}
|