Skip to content

Commit 65da420

Browse files
committed
Fix for modelChara data reading for patch 5.5 Global.
1 parent 32d8ef6 commit 65da420

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

xivModdingFramework/General/XivModelChara.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
using System.Collections.Generic;
1818
using System.IO;
1919
using System.Threading.Tasks;
20+
using xivModdingFramework.Cache;
2021
using xivModdingFramework.Exd.Enums;
2122
using xivModdingFramework.Exd.FileTypes;
2223
using xivModdingFramework.Helpers;
@@ -98,11 +99,25 @@ public static XivModelInfo GetModelInfo(Dictionary<int, byte[]> modelCharaEx, in
9899

99100
// These are the offsets to relevant data
100101
// These will need to be changed if data gets added or removed with a patch
101-
const int modelDataOffset = 4;
102+
int startOffset = 4;
103+
int modelDataOffset = 8;
104+
if (XivCache.GameInfo.GameLanguage == Enums.XivLanguage.Chinese)
105+
{
106+
startOffset = 0;
107+
modelDataOffset = 4;
108+
109+
} else if (XivCache.GameInfo.GameLanguage == Enums.XivLanguage.Korean)
110+
{
111+
startOffset = 0;
112+
modelDataOffset = 4;
113+
}
102114

103115
// Big Endian Byte Order
104116
using (var br = new BinaryReaderBE(new MemoryStream(modelCharaEx[index])))
105117
{
118+
119+
120+
br.BaseStream.Seek(startOffset, SeekOrigin.Begin);
106121
xivModelInfo.PrimaryID = br.ReadInt16();
107122

108123
br.BaseStream.Seek(modelDataOffset, SeekOrigin.Begin);

0 commit comments

Comments
 (0)