mirror of
https://github.com/kwsch/PKHeX
synced 2024-11-15 00:37:11 +00:00
Fix shift-up delete sprite refreshing behavior
Party should now refresh when a member is deleted. Thanks Alpha for reporting.
This commit is contained in:
parent
f773c95a16
commit
942325404e
1 changed files with 12 additions and 11 deletions
|
@ -3554,15 +3554,15 @@ namespace PKHeX
|
|||
byte[] pkxdata = new byte[0x104];
|
||||
byte[] ekxdata = PKX.encryptArray(pkxdata);
|
||||
|
||||
savedited = true;
|
||||
|
||||
if (slot >= 30 && slot < 36) // Party
|
||||
{ Array.Copy(ekxdata, 0, savefile, offset, 0x104); setParty(); }
|
||||
{ Array.Copy(ekxdata, 0, savefile, offset, 0x104); setParty(); return; }
|
||||
else if (slot < 30 || (slot >= 36 && slot < 42 && DEV_Ability.Enabled))
|
||||
{ Array.Copy(ekxdata, 0, savefile, offset, 0xE8); }
|
||||
else return;
|
||||
|
||||
getQuickFiller(getPictureBox(slot), pkxdata);
|
||||
savedited = true;
|
||||
|
||||
getSlotColor(slot, Properties.Resources.slotDel);
|
||||
}
|
||||
private void clickClone(object sender, EventArgs e)
|
||||
|
@ -3634,10 +3634,7 @@ namespace PKHeX
|
|||
byte[] decdata = PKX.decryptArray(data);
|
||||
int species = BitConverter.ToInt16(decdata, 8);
|
||||
if ((species != 0) && (species < 722))
|
||||
{
|
||||
Array.Copy(data, 0, savefile, offset + (partymembers) * 0x104, 0x104);
|
||||
partymembers++; // Copy in our party member
|
||||
}
|
||||
Array.Copy(data, 0, savefile, offset + (partymembers++) * 0x104, 0x104);
|
||||
}
|
||||
|
||||
// Write in the current party count
|
||||
|
@ -3658,10 +3655,7 @@ namespace PKHeX
|
|||
byte[] decdata = PKX.decryptArray(data);
|
||||
int species = BitConverter.ToInt16(decdata, 8);
|
||||
if ((species != 0) && (species < 722))
|
||||
{
|
||||
Array.Copy(data, 0, savefile, offset2 + (battlemem) * 0xE8, 0xE8);
|
||||
battlemem++; // Copy in our party member
|
||||
}
|
||||
Array.Copy(data, 0, savefile, offset2 + (battlemem++) * 0xE8, 0xE8);
|
||||
}
|
||||
|
||||
// Zero out the party slots that are empty.
|
||||
|
@ -3672,6 +3666,13 @@ namespace PKHeX
|
|||
if (battlemem == 0)
|
||||
savefile[offset2 + 6 * 0xE8 + savindex * 0x7F000] = 0;
|
||||
|
||||
// Refresh slots
|
||||
for (int i = 0; i < 6; i++)
|
||||
{
|
||||
getQuickFiller(getPictureBox(i + 30), PKX.decryptArray(savefile.Skip(SaveGame.Party + 0x7F000 * savindex + 260 * i).Take(232).ToArray()));
|
||||
getQuickFiller(getPictureBox(i + 36), PKX.decryptArray(savefile.Skip(SaveGame.BattleBox + 0x7F000 * savindex + 232 * i).Take(232).ToArray()));
|
||||
}
|
||||
|
||||
return partymembers;
|
||||
}
|
||||
private int getPKXOffset(int slot)
|
||||
|
|
Loading…
Reference in a new issue