Skip to content

Commit fe2a8b9

Browse files
committed
Added more informative error when double-adding items to a list
XML docs for mathFunctions.RoundFloat fixed possible editor crash on copy paste Fixed SortAxis not being set correctly on TileShapeCollections. Added auto test for ^^
1 parent 22f2d89 commit fe2a8b9

File tree

11 files changed

+219
-6
lines changed

11 files changed

+219
-6
lines changed

Engines/FlatRedBallXNA/FlatRedBall/Math/AttachableList.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,12 @@ public void Add(T attachable)
172172
}
173173
else if (mInternalList.Contains(attachable))
174174
{
175-
throw new InvalidOperationException("Can't add the following object twice: " + attachable.Name);
175+
var name = attachable.Name;
176+
if(string.IsNullOrEmpty(name))
177+
{
178+
name = attachable.GetType().ToString();
179+
}
180+
throw new InvalidOperationException("Can't add the following object twice: " + name);
176181
}
177182
#endif
178183

Engines/FlatRedBallXNA/FlatRedBall/Math/MathFunctions.cs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -996,6 +996,11 @@ public static void RotatePointAroundPoint(Vector3 basePoint, ref Vector3 pointTo
996996
/// <summary>
997997
/// Returns a value which has been rounded to the nearest mulitple of the mulipleOf value.
998998
/// </summary>
999+
/// <example>
1000+
/// RoundFloat(0, 1) returns 0
1001+
/// RoundFloat(0.5, 1) returns 1
1002+
/// RoundFloat(1, 1) returns 1
1003+
/// </example>
9991004
/// <param name="valueToRound">The value to round, such as the position of an object.</param>
10001005
/// <param name="multipleOf">The multiple of value, such as the size of a tile.</param>
10011006
/// <returns>The rounded value.</returns>
@@ -1005,6 +1010,18 @@ public static float RoundFloat(float valueToRound, float multipleOf)
10051010
return ((int)( System.Math.Sign(valueToRound) * .5f + valueToRound / multipleOf)) * multipleOf;
10061011
}
10071012

1013+
/// <summary>
1014+
/// Returns a value which has been rounded to the nearest mulitple of the mulipleOf value from the seed value.
1015+
/// </summary>
1016+
/// <example>
1017+
/// The seed value is considered the starting point for multiple of values.
1018+
/// For example, if multipleOf is set to 1 and seed is set to 0.3, then possible
1019+
/// values are 0.3, 1.3, 2.3, etc.
1020+
/// </example>
1021+
/// <param name="valueToRound">The value to round.</param>
1022+
/// <param name="multipleOf">The multiple of value.</param>
1023+
/// <param name="seed">The seed value from where the multipleOf is calculated.</param>
1024+
/// <returns>The rounded value.</returns>
10081025
public static float RoundFloat(float valueToRound, float multipleOf, float seed)
10091026
{
10101027
valueToRound -= seed;

FRBDK/Glue/GameCommunicationPlugin/GlueControl/Embedded/Editing/CopyPasteManager.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public void DoHotkeyLogic(List<INameable> selectedObjects, List<NamedObjectSave>
4545
{
4646
HandleCopy(selectedObjects, selectedNamedObjects);
4747
}
48-
if (keyboard.KeyPushed(Keys.V) && CopiedObjects != null)
48+
if (keyboard.KeyPushed(Keys.V) && CopiedObjects?.Count > 0)
4949
{
5050
if (CopiedObjectsOwner == null)
5151
{

FRBDK/Glue/GameCommunicationPlugin/GlueControl/Managers/ProfilingManager.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,11 @@ public async Task RefreshProfilingData()
7474
{
7575
itemCountString = $" {item.FirstItemListCount} vs {item.SecondItemListCount}";
7676
}
77+
// This could happen if dealing with a List vs. TileShapeCollection:
78+
else if(item.FirstItemListCount != null)
79+
{
80+
itemCountString = $" {item.FirstItemListCount}";
81+
}
7782

7883
string partitionText = null;
7984
if(item.IsPartitioned == false)

FRBDK/Glue/GumPlugin/GumPlugin/Embedded/PositionedObjectGueWrapper.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ public override void UpdateDependencies(double currentTime)
9292
UpdateGumObject();
9393
}
9494

95-
private void UpdateGumObject()
95+
public void UpdateGumObject()
9696
{
9797

9898
// This is going to get positioned according to the FRB object. I guess we'll force update dependencies, which is expensive...

FRBDK/Glue/TileGraphicsPlugin/TileGraphicsPlugin/CodeGeneration/TileShapeCollectionCodeGenerator.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,6 @@ private void GenerateFillCompletely(NamedObjectSave namedObjectSave, ICodeBlock
401401
codeBlock.Line($"{instanceName}.BottomSeedY = {remainderY.ToString(CultureInfo.InvariantCulture)};");
402402

403403
codeBlock.Line($"{instanceName}.SortAxis = FlatRedBall.Math.Axis.X;");
404-
//TileShapeCollectionInstance.SortAxis = FlatRedBall.Math.Axis.X;
405404

406405
var xFor = codeBlock.For($"int x = 0; x < {widthFill}; x++");
407406
//int(int x = 0; x < width; x++)
@@ -456,6 +455,12 @@ private void GenerateFromTileType(NamedObjectSave namedObjectSave, ICodeBlock co
456455
{
457456
method = "AddMergedCollisionFromTilesWithType";
458457
}
458+
459+
codeBlock.If($"{mapName}.Height > {mapName}.Width")
460+
.Line($"{namedObjectSave.InstanceName}.SortAxis = FlatRedBall.Math.Axis.Y;")
461+
.End().Else()
462+
.Line($"{namedObjectSave.InstanceName}.SortAxis = FlatRedBall.Math.Axis.X;");
463+
459464
codeBlock.Line("FlatRedBall.TileCollisions.TileShapeCollectionLayeredTileMapExtensions" +
460465
$".{method}(" +
461466
$"{namedObjectSave.InstanceName}, {mapName}, \"{typeName}\", {removeTiles.ToString().ToLowerInvariant()});");
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<map xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1.10" orientation="orthogonal" width="40" height="64" tilewidth="16" tileheight="16" infinite="0">
3+
<tileset tilecount="0" columns="0" source="../../StandardTileset.tsx" firstgid="1">
4+
<wangsets />
5+
</tileset>
6+
<tileset tilecount="0" columns="0" source="../../FrbVisualTiles.tsx" firstgid="1025">
7+
<wangsets />
8+
</tileset>
9+
<layer name="Sky" id="4" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="40" height="64">
10+
<properties />
11+
<data encoding="base64" compression="gzip">
12+
H4sIAAAAAAAACu3DMQkAAAwDsD6TX8/VMUggvaSqqqqqqqqqqqrqqwOPP9V3ACgAAA==
13+
<length>2560</length></data>
14+
</layer>
15+
<layer name="BushesAndClouds" id="3" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="0.6" parallaxy="0.6" offsetx="0" offsety="0" width="40" height="64">
16+
<properties />
17+
<data encoding="base64" compression="gzip">
18+
H4sIAAAAAAAACtVZ7W4aMRDkj2n7/u9ASiht8hLkg6aBlyAhEg19g57FjTKZ7trr49SqK1lw5LyenR2v9y6Tyf9nizSZXHTj4/Q08vfPKTZ31s/7Erw/gkXX3nXXl924ofFhGvO36u+/62Nsic2y6fTkS+PNGD9NT+Op+/49uMY6ne4fMtcycIV4x8rLEFukNz3lT/C+pnjPifUcy7q9F03d/QMsM9IlcrUQbHPS/1DDHm/VftY783Ph8HY/AB9qB3zue18tGLF/tD54g431WcuBxtvK4zqAcZ7e75VVYW3rbxiZx9sBWin5vOl9Wjm3MOJvrF2rfkP/kTrFWmTOUD+fG3TAMXk85zzc03UJI9eTvfi3dPASwJZjy/XRituLpZbbveFfDWdZics89zm93Y8c8KfOL+0bjZH9e8br8vn55MRlzY9iXAl30f7jXLNyb+UZdRAD3KHGoc79DXxRbqwzuMVQO0q1GFpmXUa0YWGr4cMZi3qWuXkJ1I6IaR692lsyrnNav7UeX6Q/z8SSRWvUUB9e7xHVW+T8reFD3xrxM0/tPS788z6+FJ8RW8kcq0bWait0UHu2Y16j/TPmRGp8yQf4yfmfFeoA85ENfWe+3+oB8++7M7Cx7fp6U/LHNYrxej3WkN5uTCv1YXj2HPIuYSzjfL8Ql9zPtfDJGhnjeTpaK2v4sEetOn6Ooa/S+mPlu1TftK/29js/B7bqxutVSzxgPdWCx7OXr5bnQN7jT+k9Z3rmeme7xjTr9Vh6Btb3Xoid38d4tqjg0dyqDla0PvNdeia03jcAL/aelz9oErq8LGDLpj3Bnta1Yi498zJe6x5L+8hbqT8o9S0ej9GB+eecw9lQLxRL3k/RWreXT+Z7rPNOsaje5gY/0BFzxX0UzrsxzjjrGY7fKz8b/CKu22T3GLsU6/fGMu4zoev1COsvu/lfu/GtwY/1v4Sh70FruLbd+NGNx4Bf4Fobex/7HbldSsxYj4fHyZJwYWwC87xedUn5BO4H8anrWZwoZzquunFNfiM5R6xqh95X9vvLWOdnN15l3oODh+Nhv5tKDjhWyw7i/1jQkpfTLWEFnge5x9KR+vJMOfF8qr+jXIO71x4fc8v+dD34sbRrrYs58LmktY7Jxsacw+dGfD8mfz1LUyVOgOex5wKf8HFt+Ac+1Qyva+UKg7VeioN1xTk7kI9DvyZj9WoBa7mEr6RNi+frFKu5zKvFLftQbhVfrT4wD1sDH59lHCvXO11D9xq413UV31VAE+ybNaHaZ64snVp1UNdVfnk/sT/llPnUOu7plufwXmPTXKt2N/Kdc1ritHXwXrO0i/s8XVp7AvOsOtcyOBdcH6FV1qJqz9IHeobS/m7BxvrmHPE1frNqkp7lfJaW+I7m1drPXl6YM6+WHtN7rOfgPCY7F1wrOYe186+k7RqOKF5Lh9tCLFYuPe7PzTdry+JJe5AIR9wPD90z3npaS1vXqHHO2mnFOOZQLKgbrVqujd/kxspxACgAAA==
19+
<length>2560</length></data>
20+
</layer>
21+
<layer name="CliffBackground" id="5" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="40" height="64">
22+
<properties />
23+
<data encoding="base64" compression="gzip">
24+
H4sIAAAAAAAACu3OQQ0AMAgEMD4zOv8icLAf2YW0CloFAAAAAAAAAAD73fN78OY3K/2f/iNTA2V64awAKAAA
25+
<length>2560</length></data>
26+
</layer>
27+
<layer name="Ground" id="2" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="40" height="64">
28+
<properties />
29+
<data encoding="base64" compression="gzip">
30+
H4sIAAAAAAAACu2aYW6DMAyF+ZOjbDsHbBdhpQdZdxLCDjqq8bTXzIAhgRiNJ1lCQOHrizFO2qI4dSqfKlcUbR/e/W7f49XlJvvRu5PjcvKppOUrh3Gvhthr/LV89bD/rY9bH5+Z+ZrhmYFn14FtjKuk8z09b9he6/fN6WPKs4+Iz1oU8tlSLWMhny3VCtYR+fCM4T1WZeSW+HgfwhJfJ/C15OdTH88L44VqHl9r7Lks6R0U1kbJv9h37lTdk2qedD7Ok45Z7AlYR+Jr3L69iUaWe7+7jsiH3kpTb1BfwjkM6kdsrsTWmy1qFiu2Z5vjy/3MzfHlzmkt35KcRl77BN9Jy7fUR1w3VnPzjjU5nZJvK1nlw7wJvZc1hflyalplxtqtUZ2xdodC7rNflvhQMy5G+EK/JL5uBz5eWwvHjnn28A/zV4lDujfv6zbi4xowNkYavq38q4V7fK3wbw0f8gZzh4q22bO5e2zFp+nVcvJperWcfBpZ5+N1Te8ec7Wd2A5zuw2u4WlfTI+wdI6xJmI8lNY1LfFZ8Y9/MwnrnwW+kGNqXf3kOwafd/J/ELz7u46Xg2/J57fk437IIl+sf417rD2cDynGX+IrE3//VHyYQ1wT8sFf+Cl5zes+4fGKjqXk+u/xDenxPaIAKAAA
31+
<length>2560</length></data>
32+
</layer>
33+
<layer name="GameplayLayer" id="1" tintcolor="#ffffff" opacity="0.8" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="40" height="64">
34+
<properties />
35+
<data encoding="base64" compression="gzip">
36+
H4sIAAAAAAAACu3YQQrAIAxEUQu9/5mLu64kwdFOzX+QdYcYg7Q14Dv3oFAH55+T7dfontFvPXpbD3dKL7K3Zir6PYB5qGH1jkEcfdRgdvEHzN9ZOMc45j7HpV9OO8slx5tbHie8v+Bu9T84Zh0dM4HdrkSR7+x8u/MrsynzqXNRvvUAf/HEEgAoAAA=
37+
<length>2560</length></data>
38+
</layer>
39+
<layer name="Foreground" id="6" tintcolor="#ffffff" opacity="0.9" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="40" height="64">
40+
<properties />
41+
<data encoding="base64" compression="gzip">
42+
H4sIAAAAAAAACu2VXQ6CMBCE+7JV738HFfUcKOg58OcU0qQb6tKFFeHBZL5kopSyO52S4hwAAAAAAAAAAAD+jS05t/bO7eIvK1yfqD9vT3otK8ek10mpF+YED3Wrs6KKOj9lHFv537xtRc+Kumx21OXive5LegzPcs2LIb8j6bloeRSt7q0OMYPS4E3zy+sNHniv0n0v47ycx7G6dfw/tK9FXIfFa01937kxVi4vHnuO9Htm+n6j10DNobym7OMUWXMfy2cpjeW+RP/ce2LJbGqW4bmNtz+rvSfs+0H5s0pmyX1zNVgH6p9nlncpty/pOdiIrLhv8MN6xPl8He7f6PPsuQq/qWSm6foLMS/tl9bmvvLeXMgcOLtfv2lz0hiyAgAAAAAAAAAAwH/zBmxX2uwAKAAA
43+
<length>2560</length></data>
44+
</layer>
45+
</map>
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<map xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1.10" orientation="orthogonal" width="75" height="27" tilewidth="16" tileheight="16" infinite="0">
3+
<tileset tilecount="0" columns="0" source="../../StandardTileset.tsx" firstgid="1">
4+
<wangsets />
5+
</tileset>
6+
<tileset tilecount="0" columns="0" source="../../FrbVisualTiles.tsx" firstgid="1025">
7+
<wangsets />
8+
</tileset>
9+
<layer name="Sky" id="4" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="75" height="27">
10+
<properties />
11+
<data encoding="base64" compression="gzip">
12+
H4sIAAAAAAAACu3DMQ0AAAwDoD6TX89VsQ8SeklVVVVVVVVV1fcDv5KYFqQfAAA=
13+
<length>2025</length></data>
14+
</layer>
15+
<layer name="Clouds" id="3" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="0.6" parallaxy="0.6" offsetx="0" offsety="0" width="75" height="27">
16+
<properties />
17+
<data encoding="base64" compression="gzip">
18+
H4sIAAAAAAAACs1ZbVLrMAzMnxS4/x1amnAO+hHOkRJOQTRkZxYhK4ntEGtGUx4krrxarWS/qirbjnVVPR+q6rXeO5KyTXC6jz6MfpsweyscM4l5j7weRmwu9W+/FowVcvt0yL+u8MTjioWV8KskbrVjLKfJ7xRjTm4xDqH66sZ/P0Z/Gf/WjJ/n+uczdyyx1hI+7BLnZ8b4gEOzkDOCrXC7m94poRY7I4+XDWoQ9r5Qj3rKVZ85b6mGeIDdVrFhffhHQRhsYccZvW0L0Ze9DX3S0w/hTkl8QQ/+z34KnHLr/hpDz17C26Pq7SkavBZv9LK9OMM9+zbhoGO35p8hMb9H9b0lzXuWcbx6Vj0Z+FjPxWooz32l9qN24r2HwZyfaa7bag7a20I8WuqD4t1cPyrFoCFenfN5UdzCaUjAzNO4VEu9a+C9Y99eXq1zs1VPTQRG+v2c58slM9SS90M6bN3lMVYWJvI70dR+0lh9tvT8i74/x/wAQ1+O7bH8vrXfxlibsQUmHT0b6j36bLmGk5y32JpEfrEW8r/03MLva27dCAuNLT/DtevVC+M5xzErHvhajkF/eT3Ov2Dg1aSekUM6LGtAC/kcYHEQ9x8eXr3CIUb/1+hX6A6LeXqv/T5iabOXb+wP+ejrv/d7jL2XJ9Yw/blU08Dn0P48nLx+wusiH3zXghhlf3Oawnek8qzUA3AD3rJe7Ky8pheca/teET09Zd7DXnUeUFueRoR4hjhxroAG8AwS2+85B14MqEk+M6TOKxY3xCwucQ98qJ+5bjR/LB1MOb9ad9nWPq8BHNfgMscN3hdjIfzAHbo3vwGbU+3zPvW8r/8fxFo/Foe1vLPmM9wBCmah+Q09gvtgSFty3aEBN3b53m/JGbMcpB8AAA==
19+
<length>2025</length></data>
20+
</layer>
21+
<layer name="Ground" id="2" tintcolor="#ffffff" opacity="1" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="75" height="27">
22+
<properties />
23+
<data encoding="base64" compression="gzip">
24+
H4sIAAAAAAAACu2YUQ6CMBBE+eEq3qP1JGg9WNGDWhKarGtXpkmx/ZiXbEIiobvPARpe80QAXPJ0pyuIha5g6AqHrnDoCoeucOgK50lXMMwVDl3h0BUOXeHQFQ5d4dCVzfYNxqeKqdZUD7oy2XJ0U0VX03SZP2uDrnBGdeX258L15F5K+bEY1dUyUC+ZXq6OctPaVU1+LHq5OnKRfw/iPe3/cE/+orersO9VtINSX73vyZau3D73qvZspSzodfWalqvsNop1SmuekcGWrmqyoM8NajbrWjXVOoOlnoLxv0V1LJ8jec9vZcGLss4NwLVqSs6xzt89yN7lLFHNn6vU0xvc5AJVpB8AAA==
25+
<length>2025</length></data>
26+
</layer>
27+
<layer name="GameplayLayer" id="1" tintcolor="#ffffff" opacity="0.5" visible="1" parallaxx="1" parallaxy="1" offsetx="0" offsety="0" width="75" height="27">
28+
<properties />
29+
<data encoding="base64" compression="gzip">
30+
H4sIAAAAAAAACu3SQQqAMAwAQQP+/80ieNKWblA06g7k5KFxSUwiYhuN2YqzFWcrzlacrThbcbbibMXZirMVZyvOVpytOFv1RWd0ZKu2eTcrW3FVW921S+t+yE5/bJXxVKvRW1fvkrmfnje0qnLzFVq13vx6q8z/nWmVmStVahXge8VWDpsFYFoJOaQfAAA=
31+
<length>2025</length></data>
32+
</layer>
33+
</map>

Tests/TestProjectDesktopNet6/TestProjectDesktopNet6/Screens/TileShapeCollectionScreen.cs

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,24 @@ void CustomInitialize()
2929
FromPropertyTileShapeCollection.Rectangles.Count().ShouldBe(5);
3030

3131
FromTypeTileShapeCollection.Rectangles.Count().ShouldBe(6);
32-
}
3332

34-
void CustomActivity(bool firstTimeCalled)
33+
TestFromTallMapClassTileShapeCollection();
34+
35+
TestFromWideMapClassTileShapeCollection();
36+
37+
}
38+
39+
private void TestFromWideMapClassTileShapeCollection()
40+
{
41+
FromWideMapClassTileShapeCollection.SortAxis.ShouldBe(FlatRedBall.Math.Axis.X);
42+
}
43+
44+
private void TestFromTallMapClassTileShapeCollection()
45+
{
46+
FromTallMapClassTileShapeCollection.SortAxis.ShouldBe(FlatRedBall.Math.Axis.Y);
47+
}
48+
49+
void CustomActivity(bool firstTimeCalled)
3550
{
3651
IsActivityFinished = true;
3752

Tests/TestProjectDesktopNet6/TestProjectDesktopNet6/Screens/TileShapeCollectionScreen.glsj

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,30 @@
2222
"IsSharedStatic": true,
2323
"RuntimeType": "Microsoft.Xna.Framework.Graphics.Texture2D",
2424
"ProjectsToExcludeFrom": []
25+
},
26+
{
27+
"Name": "Screens/TileShapeCollectionScreen/TallMapFile.tmx",
28+
"Properties": [
29+
{
30+
"Name": "CreationOptions",
31+
"Value": "{\"WithVisualType\":0,\"WithVisualsUiVisibility\":0,\"SelectedLevel\":2,\"IsWithVisualsChecked\":true,\"IsOverworldPlatformerASelected\":false,\"IsOverworldPlatformerBSelected\":false,\"IsOverworldPlatformerCSelected\":true,\"IsOverworldTopDownASelected\":false,\"IsOverworldTopDownBSelected\":false,\"IsOverworldTopDownCSelected\":false,\"PlatformerLevelVisibility\":0,\"TopDownLevelVisibility\":0,\"IncludeDefaultTileset\":true,\"IncludeGameplayLayer\":true,\"SolidCollisionCheckBoxVisibility\":0,\"IsSolidCollisionBorderChecked\":true,\"ShouldAddCollisionBorder\":true,\"IsNoVisualsChecked\":false,\"NoVisualsUiVisibility\":2}"
32+
}
33+
],
34+
"IsSharedStatic": true,
35+
"RuntimeType": "FlatRedBall.TileGraphics.LayeredTileMap",
36+
"ProjectsToExcludeFrom": []
37+
},
38+
{
39+
"Name": "Screens/TileShapeCollectionScreen/WideMapFile.tmx",
40+
"Properties": [
41+
{
42+
"Name": "CreationOptions",
43+
"Value": "{\"WithVisualType\":0,\"WithVisualsUiVisibility\":0,\"SelectedLevel\":0,\"IsWithVisualsChecked\":true,\"IsOverworldPlatformerASelected\":true,\"IsOverworldPlatformerBSelected\":false,\"IsOverworldPlatformerCSelected\":false,\"IsOverworldTopDownASelected\":false,\"IsOverworldTopDownBSelected\":false,\"IsOverworldTopDownCSelected\":false,\"PlatformerLevelVisibility\":0,\"TopDownLevelVisibility\":0,\"IncludeDefaultTileset\":true,\"IncludeGameplayLayer\":true,\"SolidCollisionCheckBoxVisibility\":0,\"IsSolidCollisionBorderChecked\":true,\"ShouldAddCollisionBorder\":true,\"IsNoVisualsChecked\":false,\"NoVisualsUiVisibility\":2}"
44+
}
45+
],
46+
"IsSharedStatic": true,
47+
"RuntimeType": "FlatRedBall.TileGraphics.LayeredTileMap",
48+
"ProjectsToExcludeFrom": []
2549
}
2650
],
2751
"CustomVariables": [
@@ -291,6 +315,62 @@
291315
"SourceType": 2,
292316
"SourceFile": "TileShapeCollection",
293317
"GenerateTimedEmit": true
318+
},
319+
{
320+
"InstanceName": "FromTallMapClassTileShapeCollection",
321+
"SourceClassType": "TileShapeCollection",
322+
"Properties": [
323+
{
324+
"Name": "SourceType",
325+
"Value": 2
326+
},
327+
{
328+
"Name": "CollisionCreationOptions",
329+
"Value": 4
330+
},
331+
{
332+
"Name": "CollisionTileTypeName",
333+
"Value": "SolidCollision"
334+
},
335+
{
336+
"Name": "SourceTmxName",
337+
"Value": "TallMapFile"
338+
}
339+
],
340+
"InstructionSaves": [],
341+
"SourceType": 2,
342+
"SourceFile": "",
343+
"SourceName": "",
344+
"GenerateTimedEmit": true,
345+
"IndependentOfCamera": true
346+
},
347+
{
348+
"InstanceName": "FromWideMapClassTileShapeCollection",
349+
"SourceClassType": "TileShapeCollection",
350+
"Properties": [
351+
{
352+
"Name": "SourceType",
353+
"Value": 2
354+
},
355+
{
356+
"Name": "CollisionCreationOptions",
357+
"Value": 4
358+
},
359+
{
360+
"Name": "CollisionTileTypeName",
361+
"Value": "SolidCollision"
362+
},
363+
{
364+
"Name": "SourceTmxName",
365+
"Value": "WideMapFile"
366+
}
367+
],
368+
"InstructionSaves": [],
369+
"SourceType": 2,
370+
"SourceFile": "",
371+
"SourceName": "",
372+
"GenerateTimedEmit": true,
373+
"IndependentOfCamera": true
294374
}
295375
],
296376
"Name": "Screens\\TileShapeCollectionScreen",

0 commit comments

Comments
 (0)