Skip to content

Commit 3fe6515

Browse files
committed
obscure bug fix
1 parent 897bb66 commit 3fe6515

File tree

3 files changed

+35
-9
lines changed

3 files changed

+35
-9
lines changed

WinTerrEdit/WinTerrEdit.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
<TargetCulture>en-GB</TargetCulture>
2929
<ProductName>WinTerrEdit</ProductName>
3030
<PublisherName>Knedit</PublisherName>
31-
<ApplicationRevision>4</ApplicationRevision>
31+
<ApplicationRevision>5</ApplicationRevision>
3232
<ApplicationVersion>1.1.0.%2a</ApplicationVersion>
3333
<UseApplicationTrust>false</UseApplicationTrust>
3434
<PublishWizardCompleted>true</PublishWizardCompleted>

WinTerrEdit/entry.Designer.cs

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

WinTerrEdit/entry.cs

Lines changed: 33 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,7 @@ public void loadData(string path)
226226

227227
currentFileHash = calcMd5OfOpenFile();
228228
byte[] decrypted = cr.decryptFile(path);
229+
Console.WriteLine(decrypted.Length);
229230
rawDecrypted = decrypted.ToList();
230231
versionCode = ih.resolveEncodedData(decrypted[0], decrypted[1]);
231232

@@ -243,16 +244,14 @@ public void loadData(string path)
243244
playerName = Encoding.UTF8.GetString(namebytes);
244245
tbName.Text = playerName;
245246

246-
//neo + 838
247-
248247
if(versionCode < 230)
249248
{
250249
inventoryOffset = 211;
251250
coinOffset = 711;
252251
colOffset = 40;
253252
pigOffset = 841;
254253
safeOffset = 1201;
255-
buffOffset = 2281;
254+
buffOffset = 1921; //2281
256255
}
257256
else
258257
{
@@ -261,7 +260,7 @@ public void loadData(string path)
261260
colOffset = 42;
262261
pigOffset = 843;
263262
safeOffset = 1203;
264-
buffOffset = 2284;
263+
buffOffset = 2284; //2284
265264
}
266265

267266
int InvDataBeginOffset = nameEndOffset + inventoryOffset;
@@ -352,6 +351,7 @@ public void loadData(string path)
352351
List<int> buffBtm = new List<int> { };
353352
for (int i = BuffDataBeginOffset; i < BuffDataEndOffset; i++)
354353
{
354+
Console.WriteLine(String.Join(",", buffBtm));
355355
extCounter++;
356356
buffBtm.Add(decrypted[i]);
357357
if (extCounter == 8)
@@ -426,8 +426,15 @@ public void loadData(string path)
426426
nudManaCur.Value = playerMana[0];
427427
nudManaMax.Value = playerMana[1];
428428

429-
playerHS = decrypted[nameEndOffset + 9];
430-
nudHair.Value = playerHS;
429+
int hs = decrypted[nameEndOffset + 9];
430+
431+
if(hs > 133)
432+
{
433+
nudHair.Maximum = hs;
434+
}
435+
436+
playerHS = hs;
437+
nudHair.Value = hs;
431438
cbGamemode.SelectedIndex = (int)playerMode;
432439

433440
switch (selectedTab)
@@ -766,7 +773,7 @@ public List<Byte> reEncode()
766773
nn.AddRange(nameConverted);
767774
save.InsertRange(24, nn);
768775
nameEndOffset = 25 + nameConverted.Length;
769-
776+
770777
//populate encoded inventory data
771778
foreach (invItem iv in inv_main)
772779
{
@@ -850,6 +857,7 @@ public List<Byte> reEncode()
850857
Console.WriteLine("Mana data: Removed 176 bytes, Inserted " + encodedBuffData.Count() + " bytes");
851858

852859
save[nameEndOffset + 9] = (byte)playerHS;
860+
save[nameEndOffset] = (byte)playerMode;
853861

854862
//insert padding if needed
855863
while (save.Count() % 16 != 0)
@@ -1722,5 +1730,23 @@ private void quant_leaveFocus(object sender, EventArgs e)
17221730
{
17231731
Console.WriteLine("broke focus");
17241732
}
1733+
1734+
private void cbGamemode_SelectedIndexChanged(object sender, EventArgs e)
1735+
{
1736+
switch(cbGamemode.SelectedIndex){
1737+
case 0:
1738+
playerMode = gamemodes.gamemode.Classic;
1739+
break;
1740+
case 1:
1741+
playerMode = gamemodes.gamemode.MediumCore;
1742+
break;
1743+
case 2:
1744+
playerMode = gamemodes.gamemode.HardCore;
1745+
break;
1746+
case 3:
1747+
playerMode = gamemodes.gamemode.Journey;
1748+
break;
1749+
}
1750+
}
17251751
}
17261752
}

0 commit comments

Comments
 (0)