102 lines
3.5 KiB
C#
102 lines
3.5 KiB
C#
using Newtonsoft.Json;
|
|
using TrianglesToGD;
|
|
|
|
var level = JsonConvert.DeserializeObject<Level>(File.ReadAllText("C:\\Users\\Travis\\Downloads\\level.json"));
|
|
if (level == null) return;
|
|
|
|
string gdString = $"kS38,1_{level.data.backgroundColor.R}_2_{level.data.backgroundColor.G}_3_{level.data.backgroundColor.B}_11_255_12_255_13_255_4_-1_6_1000_7_1.000000_15_1.000000_18_0_8_1|1_{level.data.groundColor.R}_2_{level.data.groundColor.G}_3_{level.data.groundColor.B}_11_255_12_255_13_255_4_-1_6_1001_7_1.000000_15_1.000000_18_0_8_1|1_0_2_102_3_255_11_255_12_255_13_255_4_-1_6_1009_7_1.000000_15_1.000000_18_0_8_1|1_255_2_255_3_255_11_255_12_255_13_255_4_-1_6_1002_5_1_7_1.000000_15_1.000000_18_0_8_1|1_40_2_125_3_255_11_255_12_255_13_255_4_-1_6_1013_7_1.000000_15_1.000000_18_0_8_1|1_40_2_125_3_255_11_255_12_255_13_255_4_-1_6_1014_7_1.000000_15_1.000000_18_0_8_1|1_125_2_255_3_0_11_255_12_255_13_255_4_-1_6_1005_5_1_7_1.000000_15_1.000000_18_0_8_1|1_0_2_255_3_255_11_255_12_255_13_255_4_-1_6_1006_5_1_7_1.000000_15_1.000000_18_0_8_1|1_255_2_255_3_255_11_255_12_255_13_255_4_-1_6_1004_7_1.000000_15_1.000000_18_0_8_1|,kA13,0.000000,kA15,0,kA16,0,kA14,,kA6,0,kA7,0,kA25,0,kA17,0,kA18,0,kS39,0,kA2,0,kA3,0,kA8,0,kA4,0,kA9,0,kA10,0,kA22,0,kA23,0,kA24,0,kA27,1,kA40,1,kA48,1,kA41,1,kA42,1,kA28,0,kA29,0,kA31,1,kA32,1,kA36,0,kA43,0,kA44,0,kA45,1,kA46,0,kA47,0,kA33,1,kA34,1,kA35,0,kA37,1,kA38,1,kA39,1,kA19,0,kA26,0,kA20,0,kA21,0,kA11,0";
|
|
|
|
foreach (var obj in level.data.objects)
|
|
{
|
|
int id = 1;
|
|
float x = obj.pos.X * 30 + 15;
|
|
float y = obj.pos.Y * 30 + 15;
|
|
switch (obj.id)
|
|
{
|
|
case 1:
|
|
id = 1;
|
|
break;
|
|
case 2:
|
|
id = 40;
|
|
break;
|
|
case 3:
|
|
id = 8;
|
|
break;
|
|
case 4:
|
|
id = 39;
|
|
switch (obj.rotation)
|
|
{
|
|
case 0:
|
|
y -= 9f;
|
|
break;
|
|
case 270:
|
|
x -= 9f;
|
|
break;
|
|
case 180:
|
|
y += 9f;
|
|
break;
|
|
case 90:
|
|
x += 9f;
|
|
break;
|
|
}
|
|
break;
|
|
case 5:
|
|
id = 392;
|
|
switch (obj.rotation)
|
|
{
|
|
case 0:
|
|
y -= 9.75f;
|
|
break;
|
|
case 270:
|
|
x -= 9.75f;
|
|
break;
|
|
case 180:
|
|
y += 9.75f;
|
|
break;
|
|
case 90:
|
|
x += 9.75f;
|
|
break;
|
|
}
|
|
break;
|
|
case 6:
|
|
id = 467;
|
|
break;
|
|
case 7:
|
|
id = 470;
|
|
break;
|
|
case 8:
|
|
id = 471;
|
|
break;
|
|
case 9:
|
|
id = 469;
|
|
break;
|
|
case 10:
|
|
id = 468;
|
|
switch (obj.rotation)
|
|
{
|
|
case 0:
|
|
y += 14.25f;
|
|
break;
|
|
case 270:
|
|
x += 14.25f;
|
|
break;
|
|
case 180:
|
|
y -= 14.25f;
|
|
break;
|
|
case 90:
|
|
x -= 14.25f;
|
|
break;
|
|
}
|
|
break;
|
|
case 11:
|
|
id = 5;
|
|
break;
|
|
case 12:
|
|
id = 3600;
|
|
break;
|
|
}
|
|
gdString += $";1,{id},2,{x},3,{y},6,{-obj.rotation}";
|
|
}
|
|
gdString += ";";
|
|
|
|
Console.WriteLine(gdString); |