Skip to content

Commit 945905b

Browse files
committed
up 修bug
1 parent 94d1304 commit 945905b

32 files changed

Lines changed: 330 additions & 78 deletions

src/ColorMC.Core/Game/GameSchematic.cs

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,9 +156,51 @@ private static async Task<SchematicObj> ReadNBTAsync(string file)
156156
Width = (size[0] as NbtInt)!.ValueInt,
157157
Height = (size[1] as NbtInt)!.ValueInt,
158158
Length = (size[2] as NbtInt)!.ValueInt,
159-
Type = SchematicType.Create
159+
Type = SchematicType.Create,
160+
Blocks = []
160161
};
161162

163+
var orderBlock = new Dictionary<int, string>();
164+
165+
var types = tag.TryGet<NbtList>("palette");
166+
if (types != null)
167+
{
168+
int index = 0;
169+
foreach (var item1 in types)
170+
{
171+
if (item1 is NbtCompound nbt1)
172+
{
173+
orderBlock[index] = nbt1.TryGet<NbtString>("Name")!.Value;
174+
}
175+
index++;
176+
}
177+
}
178+
179+
var group = orderBlock.GroupBy(item2 => item2.Value);
180+
foreach (var item1 in group)
181+
{
182+
item.Blocks.Add(item1.Key, 0);
183+
}
184+
185+
var blocks = tag.TryGet<NbtList>("blocks");
186+
if (blocks != null)
187+
{
188+
foreach (var item1 in blocks)
189+
{
190+
if (item1 is NbtCompound nbt1)
191+
{
192+
var index = nbt1.TryGet<NbtInt>("state")!.ValueInt;
193+
if (orderBlock.TryGetValue(index, out var name))
194+
{
195+
item.Blocks[name]++;
196+
}
197+
}
198+
}
199+
}
200+
201+
item.BlockCount = item.Blocks.Sum(item => item.Value);
202+
item.BlockTypes = item.Blocks.Count;
203+
162204
return item;
163205
}
164206

src/ColorMC.Core/Helpers/AddGameHelper.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,8 @@ private static async Task<GameRes> MMCAsync(string? name, string? group, string
368368
private static async Task<GameRes> HMCLAsync(string? name, string? group, string file, ZipArchive zip,
369369
List<ZipArchiveEntry>? unselect, IOverGameGui? gui, IAddGui? packgui)
370370
{
371+
unselect ??= [];
372+
371373
packgui?.SetState(AddState.ReadInfo);
372374
HMCLObj? obj = null;
373375
CurseForgePackObj? obj1 = null;

src/ColorMC.Core/Helpers/GameHelper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,7 @@ public static void ReadyForgeWrapper()
231231
{
232232
Name = "io.github.zekerzhayard:forgewrapper:colormc-1.6.0",
233233
Local = Path.Combine(LibrariesPath.BaseDir, "io", "github", "zekerzhayard", "forgewrapper",
234-
"colormc-1.6.0", "forgewrapper-colormc-1.6.0.jar")
234+
"prism-2025-12-07", "ForgeWrapper-prism-2025-12-07.jar")
235235
};
236236
var file = new FileInfo(ForgeWrapper.Local);
237237
if (!file.Exists)
@@ -240,7 +240,7 @@ public static void ReadyForgeWrapper()
240240
{
241241
Directory.CreateDirectory(file.DirectoryName!);
242242
}
243-
PathHelper.WriteBytes(file.FullName, Resource1.ForgeWrapper_colormc_1_6_0);
243+
PathHelper.WriteBytes(file.FullName, Resource1.ForgeWrapper_prism_2025_12_07);
244244
}
245245
}
246246

src/ColorMC.Core/Objs/Minecraft/SchematicObj.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,18 @@ public record SchematicObj
3434
/// 描述
3535
/// </summary>
3636
public string Description { get; set; }
37+
/// <summary>
38+
/// 方块总数
39+
/// </summary>
40+
public int BlockCount { get; set; }
41+
/// <summary>
42+
/// 方块种类
43+
/// </summary>
44+
public int BlockTypes { get; set; }
45+
/// <summary>
46+
/// 方块数量
47+
/// </summary>
48+
public Dictionary<string, int> Blocks;
3749

3850
/// <summary>
3951
/// 是否已损坏

src/ColorMC.Core/Resource1.Designer.cs

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/ColorMC.Core/Resource1.resx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@
121121
<data name="ColorMCASM-1.1-all" type="System.Resources.ResXFileRef, System.Windows.Forms">
122122
<value>Resources\ColorMCASM-1.1-all.jar;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
123123
</data>
124-
<data name="ForgeWrapper_colormc_1_6_0" type="System.Resources.ResXFileRef, System.Windows.Forms">
125-
<value>Resources\ForgeWrapper-colormc-1.6.0.jar;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
124+
<data name="ForgeWrapper-prism-2025-12-07" type="System.Resources.ResXFileRef, System.Windows.Forms">
125+
<value>Resources\ForgeWrapper-prism-2025-12-07.jar;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
126126
</data>
127127
<data name="OptifineWrapper_1_1" type="System.Resources.ResXFileRef, System.Windows.Forms">
128128
<value>Resources\OptifineWrapper-1.1.jar;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-28.1 KB
Binary file not shown.
29 KB
Binary file not shown.

src/ColorMC.Gui/ColorMC.Gui.csproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
<None Remove="Resource\Icon\Button\AddAccount.svg" />
4949
<None Remove="Resource\Icon\Button\AddShape.svg" />
5050
<None Remove="Resource\Icon\Button\ArrowRight.svg" />
51+
<None Remove="Resource\Icon\Button\Close.svg" />
5152
<None Remove="Resource\Icon\Button\Cog.svg" />
5253
<None Remove="Resource\Icon\close.svg" />
5354
<None Remove="Resource\Icon\cog.svg" />
@@ -146,6 +147,7 @@
146147
<None Remove="Resource\Icon\Item\download.svg" />
147148
<None Remove="Resource\Icon\Item\DownloadFile.svg" />
148149
<None Remove="Resource\Icon\Item\Import.svg" />
150+
<None Remove="Resource\Icon\Item\Link.svg" />
149151
<None Remove="Resource\Icon\Item\StarFill.svg" />
150152
<None Remove="Resource\Icon\LuckBlock\down.svg" />
151153
<None Remove="Resource\Icon\LuckBlock\Triangle.svg" />
@@ -191,6 +193,7 @@
191193
<AvaloniaResource Include="Resource\Icon\Button\AddAccount.svg" />
192194
<AvaloniaResource Include="Resource\Icon\Button\AddShape.svg" />
193195
<AvaloniaResource Include="Resource\Icon\Button\ArrowRight.svg" />
196+
<AvaloniaResource Include="Resource\Icon\Button\Close.svg" />
194197
<AvaloniaResource Include="Resource\Icon\Button\Cog.svg" />
195198
<AvaloniaResource Include="Resource\Icon\Button\Counter.svg" />
196199
<AvaloniaResource Include="Resource\Icon\Button\Delete.svg" />
@@ -284,6 +287,7 @@
284287
<AvaloniaResource Include="Resource\Icon\Item\Connection.svg" />
285288
<AvaloniaResource Include="Resource\Icon\Item\DownloadFile.svg" />
286289
<AvaloniaResource Include="Resource\Icon\Item\Import.svg" />
290+
<AvaloniaResource Include="Resource\Icon\Item\Link.svg" />
287291
<AvaloniaResource Include="Resource\Icon\Item\StarNone.svg" />
288292
<AvaloniaResource Include="Resource\Icon\Item\StarFill.svg" />
289293
<AvaloniaResource Include="Resource\Icon\ListGrid\ListInfo.svg" />
Lines changed: 1 addition & 0 deletions
Loading

0 commit comments

Comments
 (0)