Fixed ensoul crystals lost after exchange.

This commit is contained in:
MobiusDevelopment 2019-07-29 17:46:40 +00:00
parent 748cb7cee3
commit fa068f74f6
22 changed files with 88 additions and 44 deletions

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption

View File

@ -511,16 +511,18 @@ public class MultiSellChoose implements IClientIncomingPacket
} }
if (_soulCrystalOptions != null) if (_soulCrystalOptions != null)
{ {
for (int i = 0; i < _soulCrystalOptions.length; i++) int pos = -1;
for (EnsoulOption ensoul : _soulCrystalOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalOptions[i], i + 1, 1, false); pos++;
addedItem.addSpecialAbility(ensoul, pos, 1, false);
} }
} }
if (_soulCrystalSpecialOptions != null) if (_soulCrystalSpecialOptions != null)
{ {
for (int i = 0; i < _soulCrystalSpecialOptions.length; i++) for (EnsoulOption ensoul : _soulCrystalSpecialOptions)
{ {
addedItem.addSpecialAbility(_soulCrystalSpecialOptions[i], i + 1, 2, false); addedItem.addSpecialAbility(ensoul, 0, 2, false);
} }
} }
addedItem.updateDatabase(true); addedItem.updateDatabase(true);

View File

@ -243,6 +243,8 @@ public class RequestItemEnsoul implements IClientIncomingPacket
item.applySpecialAbilities(); item.applySpecialAbilities();
} }
player.sendPacket(new ExEnsoulResult(success, item)); player.sendPacket(new ExEnsoulResult(success, item));
item.updateDatabase(true);
} }
static class EnsoulItemOption static class EnsoulItemOption