Skip to content
This repository was archived by the owner on Dec 16, 2021. It is now read-only.

Commit 89f76dc

Browse files
author
Johnathon
committed
I'm totally adding this to epic win. +300
Well, now I have file handling stuff in CG thanks to Pixeltris I will sooner or later export it to a standalone DLL then make documentation on how to use it, Wolf may use this as a base while I still make my own programs to do things, it might make GUI handling better.
1 parent 544b1e2 commit 89f76dc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+5058
-2151
lines changed

Celtic Guardian/Celtic Guardian.csproj

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,20 @@
3838
</ItemGroup>
3939
<ItemGroup>
4040
<Compile Include="File Handling\Bin Files\Card_Limits.cs" />
41+
<Compile Include="File Handling\Bin Files\Card_Manager.cs" />
4142
<Compile Include="File Handling\Bin Files\Related_Card_Data.cs" />
43+
<Compile Include="File Handling\Miscellaneous Files\Card_Collection.cs" />
44+
<Compile Include="File Handling\Miscellaneous Files\Manager.cs" />
4245
<Compile Include="File Handling\Utility\Constants.cs" />
43-
<Compile Include="File Handling\File Data.cs" />
46+
<Compile Include="File Handling\File_Data.cs" />
4447
<Compile Include="File Handling\Utility\Duel_Series.cs" />
48+
<Compile Include="File Handling\Utility\Endian.cs" />
4549
<Compile Include="File Handling\Utility\Extensions.cs" />
46-
<Compile Include="File Handling\Utility\File Types.cs" />
47-
<Compile Include="File Handling\Utility\Localized Text.cs" />
48-
<Compile Include="File Handling\LOTD Files\LOTD Archive.cs" />
49-
<Compile Include="File Handling\LOTD Files\LOTD Directory.cs" />
50-
<Compile Include="File Handling\LOTD Files\LOTD File.cs" />
50+
<Compile Include="File Handling\Utility\File_Types.cs" />
51+
<Compile Include="File Handling\Utility\Localized_Text.cs" />
52+
<Compile Include="File Handling\LOTD Files\LOTD_Archive.cs" />
53+
<Compile Include="File Handling\LOTD Files\LOTD_Directory.cs" />
54+
<Compile Include="File Handling\LOTD Files\LOTD_File.cs" />
5155
<Compile Include="File Handling\Main Files\Arena_Data.cs" />
5256
<Compile Include="File Handling\Main Files\Char_Data.cs" />
5357
<Compile Include="File Handling\Main Files\Deck_Data.cs" />
@@ -60,12 +64,23 @@
6064
<Compile Include="File Handling\Utility\Dump_Settings.cs" />
6165
<Compile Include="File Handling\Miscellaneous Files\How_To_Play.cs" />
6266
<Compile Include="File Handling\Miscellaneous Files\Strings_BND.cs" />
63-
<Compile Include="File Handling\Miscellaneous Files\ZIB_Data.cs" />
64-
<Compile Include="File Handling\Miscellaneous Files\ZIB_File.cs" />
67+
<Compile Include="File Handling\ZIB Files\ZIB_Data.cs" />
68+
<Compile Include="File Handling\ZIB Files\ZIB_File.cs" />
6569
<Compile Include="File Handling\Pack Files\Battle_Pack.cs" />
6670
<Compile Include="File Handling\Pack Files\Shop_Pack.cs" />
67-
<Compile Include="File Handling\RawFile.cs" />
71+
<Compile Include="File Handling\Raw_File.cs" />
6872
<Compile Include="File Handling\Utility\Localized_Offset.cs" />
73+
<Compile Include="Save File\Battle_Pack_Save.cs" />
74+
<Compile Include="Save File\Campaign_Save.cs" />
75+
<Compile Include="Save File\Card_List_Save.cs" />
76+
<Compile Include="Save File\Deck_Save.cs" />
77+
<Compile Include="Save File\Deck_Save_Database.cs" />
78+
<Compile Include="Save File\Game_Save.cs" />
79+
<Compile Include="Save File\Game_Save_Helpers.cs" />
80+
<Compile Include="Save File\Game_Save_Xor_Table.cs" />
81+
<Compile Include="Save File\Misc_Save.cs" />
82+
<Compile Include="Save File\Save_Data_Chunk.cs" />
83+
<Compile Include="Save File\Stat_Save.cs" />
6984
<Compile Include="Utilities.cs" />
7085
<Compile Include="Properties\AssemblyInfo.cs" />
7186
</ItemGroup>
Lines changed: 43 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,44 @@
1-
using System.Collections.Generic;
2-
using System.IO;
3-
4-
namespace Celtic_Guardian.Bin_Files
5-
{
6-
public class Card_Limits : File_Data
7-
{
8-
public HashSet<short> Forbidden { get; private set; }
9-
public HashSet<short> Limited { get; private set; }
10-
public HashSet<short> SemiLimited { get; private set; }
11-
12-
public Card_Limits()
13-
{
14-
Forbidden = new HashSet<short>();
15-
Limited = new HashSet<short>();
16-
SemiLimited = new HashSet<short>();
17-
}
18-
19-
public override void Load(BinaryReader reader, long length)
20-
{
21-
ReadCardIds(reader, Forbidden);
22-
ReadCardIds(reader, Limited);
23-
ReadCardIds(reader, SemiLimited);
24-
}
25-
26-
public override void Save(BinaryWriter writer)
27-
{
28-
WriteCardIds(writer, Forbidden);
29-
WriteCardIds(writer, Limited);
30-
WriteCardIds(writer, SemiLimited);
31-
}
32-
33-
private void ReadCardIds(BinaryReader reader, HashSet<short> cardIds)
34-
{
35-
cardIds.Clear();
36-
37-
short count = reader.ReadInt16();
38-
for (int i = 0; i < count; i++)
39-
{
40-
cardIds.Add(reader.ReadInt16());
41-
}
42-
}
43-
44-
private void WriteCardIds(BinaryWriter writer, HashSet<short> cardIds)
45-
{
46-
writer.Write((short)cardIds.Count);
47-
foreach (ushort cardId in cardIds)
48-
{
49-
writer.Write(cardId);
50-
}
51-
}
52-
}
1+
using System.Collections.Generic;
2+
using System.IO;
3+
4+
namespace Celtic_Guardian.File_Handling.Bin_Files
5+
{
6+
public class Card_Limits : File_Data
7+
{
8+
public Card_Limits()
9+
{
10+
Forbidden = new HashSet<short>();
11+
Limited = new HashSet<short>();
12+
SemiLimited = new HashSet<short>();
13+
}
14+
15+
public HashSet<short> Forbidden { get; }
16+
public HashSet<short> Limited { get; }
17+
public HashSet<short> SemiLimited { get; }
18+
19+
public override void Load(BinaryReader reader, long length)
20+
{
21+
ReadCardIds(reader, Forbidden);
22+
ReadCardIds(reader, Limited);
23+
ReadCardIds(reader, SemiLimited);
24+
}
25+
public override void Save(BinaryWriter writer)
26+
{
27+
WriteCardIds(writer, Forbidden);
28+
WriteCardIds(writer, Limited);
29+
WriteCardIds(writer, SemiLimited);
30+
}
31+
private static void ReadCardIds(BinaryReader reader, ISet<short> cardIds)
32+
{
33+
cardIds.Clear();
34+
35+
var count = reader.ReadInt16();
36+
for (var i = 0; i < count; i++) cardIds.Add(reader.ReadInt16());
37+
}
38+
private static void WriteCardIds(BinaryWriter writer, IReadOnlyCollection<short> cardIds)
39+
{
40+
writer.Write((short) cardIds.Count);
41+
foreach (var cardId in cardIds) writer.Write(cardId);
42+
}
43+
}
5344
}

0 commit comments

Comments
 (0)