Fixed augmentation last stone display.
Contributed by Index.
This commit is contained in:
parent
d8dde6787a
commit
c99a13ca01
@ -70,6 +70,6 @@ public class RequestConfirmRefinerItem extends AbstractRefinePacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.sendPacket(new ExPutIntensiveResultForVariationMake(_refinerItemObjId, refinerItem.getId(), fee.getItemId(), fee.getItemCount()));
|
||||
player.sendPacket(new ExPutIntensiveResultForVariationMake(_refinerItemObjId, refinerItem.getId(), 1));
|
||||
}
|
||||
}
|
||||
|
@ -84,14 +84,14 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
|
||||
if (!isValid(player, targetItem, mineralItem, feeItem, fee))
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
|
||||
if (_feeCount <= 0)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
@ -99,7 +99,7 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
final long adenaFee = fee.getAdenaFee();
|
||||
if ((adenaFee > 0) && (player.getAdena() < adenaFee))
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
@ -107,14 +107,14 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
final Variation variation = VariationData.getInstance().getVariation(mineralItem.getId());
|
||||
if (variation == null)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
return;
|
||||
}
|
||||
|
||||
VariationInstance augment = VariationData.getInstance().generateRandomVariation(variation, targetItem);
|
||||
if (augment == null)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -137,35 +137,30 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
}
|
||||
}
|
||||
|
||||
player.sendPacket(new ExVariationResult(augment.getOption1Id(), augment.getOption2Id(), true));
|
||||
|
||||
// Consume the life stone.
|
||||
if (!player.destroyItem("RequestRefine", mineralItem, 1, null, false))
|
||||
{
|
||||
return;
|
||||
}
|
||||
player.destroyItem("RequestRefine", mineralItem, 1, null, false);
|
||||
|
||||
// Consume the gemstones.
|
||||
if ((feeItem != null) && !player.destroyItem("RequestRefine", feeItem, _feeCount, null, false))
|
||||
if (feeItem != null)
|
||||
{
|
||||
return;
|
||||
player.destroyItem("RequestRefine", feeItem, _feeCount, null, false);
|
||||
}
|
||||
|
||||
// Consume Adena.
|
||||
if ((adenaFee > 0) && !player.reduceAdena("RequestRefine", adenaFee, player, false))
|
||||
if (adenaFee > 0)
|
||||
{
|
||||
return;
|
||||
player.reduceAdena("RequestRefine", adenaFee, player, false);
|
||||
}
|
||||
|
||||
// Request (continues at ExApplyVariationOption).
|
||||
if (player.getRequest(VariationRequest.class) == null)
|
||||
{
|
||||
player.addRequest(new VariationRequest(player));
|
||||
}
|
||||
|
||||
VariationRequest request = player.getRequest(VariationRequest.class);
|
||||
final VariationRequest request = player.getRequest(VariationRequest.class);
|
||||
request.setAugmentedItem(_targetItemObjId);
|
||||
request.setMineralItem(_mineralItemObjId);
|
||||
request.setAugment(augment);
|
||||
|
||||
player.sendPacket(new ExVariationResult(augment.getOption1Id(), augment.getOption2Id(), true));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -23,17 +23,13 @@ public class ExPutIntensiveResultForVariationMake implements IClientOutgoingPack
|
||||
{
|
||||
private final int _refinerItemObjId;
|
||||
private final int _lifestoneItemId;
|
||||
private final int _gemstoneItemId;
|
||||
private final long _gemstoneCount;
|
||||
private final int _unk2;
|
||||
private final int _insertResult;
|
||||
|
||||
public ExPutIntensiveResultForVariationMake(int refinerItemObjId, int lifeStoneId, int gemstoneItemId, long gemstoneCount)
|
||||
public ExPutIntensiveResultForVariationMake(int refinerItemObjId, int lifeStoneId, int insertResult)
|
||||
{
|
||||
_refinerItemObjId = refinerItemObjId;
|
||||
_lifestoneItemId = lifeStoneId;
|
||||
_gemstoneItemId = gemstoneItemId;
|
||||
_gemstoneCount = gemstoneCount;
|
||||
_unk2 = 1;
|
||||
_insertResult = insertResult;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -42,9 +38,7 @@ public class ExPutIntensiveResultForVariationMake implements IClientOutgoingPack
|
||||
OutgoingPackets.EX_PUT_INTENSIVE_RESULT_FOR_VARIATION_MAKE.writeId(packet);
|
||||
packet.writeD(_refinerItemObjId);
|
||||
packet.writeD(_lifestoneItemId);
|
||||
packet.writeD(_gemstoneItemId);
|
||||
packet.writeQ(_gemstoneCount);
|
||||
packet.writeD(_unk2);
|
||||
packet.writeC(_insertResult);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -19,11 +19,10 @@ package org.l2jmobius.gameserver.network.serverpackets;
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
/**
|
||||
* Format: (ch)ddd
|
||||
*/
|
||||
public class ExVariationResult implements IClientOutgoingPacket
|
||||
{
|
||||
public static final ExVariationResult FAIL = new ExVariationResult(0, 0, false);
|
||||
|
||||
private final int _option1;
|
||||
private final int _option2;
|
||||
private final int _success;
|
||||
@ -41,6 +40,8 @@ public class ExVariationResult implements IClientOutgoingPacket
|
||||
OutgoingPackets.EX_VARIATION_RESULT.writeId(packet);
|
||||
packet.writeD(_option1);
|
||||
packet.writeD(_option2);
|
||||
packet.writeQ(0); // GemStoneCount
|
||||
packet.writeQ(0); // NecessaryGemStoneCount
|
||||
packet.writeD(_success);
|
||||
return true;
|
||||
}
|
||||
|
@ -70,6 +70,6 @@ public class RequestConfirmRefinerItem extends AbstractRefinePacket
|
||||
return;
|
||||
}
|
||||
|
||||
player.sendPacket(new ExPutIntensiveResultForVariationMake(_refinerItemObjId, refinerItem.getId(), fee.getItemId(), fee.getItemCount()));
|
||||
player.sendPacket(new ExPutIntensiveResultForVariationMake(_refinerItemObjId, refinerItem.getId(), 1));
|
||||
}
|
||||
}
|
||||
|
@ -84,14 +84,14 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
|
||||
if (!isValid(player, targetItem, mineralItem, feeItem, fee))
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
|
||||
if (_feeCount <= 0)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
@ -99,7 +99,7 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
final long adenaFee = fee.getAdenaFee();
|
||||
if ((adenaFee > 0) && (player.getAdena() < adenaFee))
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
player.sendPacket(SystemMessageId.AUGMENTATION_FAILED_DUE_TO_INAPPROPRIATE_CONDITIONS);
|
||||
return;
|
||||
}
|
||||
@ -107,14 +107,14 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
final Variation variation = VariationData.getInstance().getVariation(mineralItem.getId());
|
||||
if (variation == null)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
return;
|
||||
}
|
||||
|
||||
VariationInstance augment = VariationData.getInstance().generateRandomVariation(variation, targetItem);
|
||||
if (augment == null)
|
||||
{
|
||||
player.sendPacket(new ExVariationResult(0, 0, false));
|
||||
player.sendPacket(ExVariationResult.FAIL);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -137,35 +137,30 @@ public class RequestRefine extends AbstractRefinePacket
|
||||
}
|
||||
}
|
||||
|
||||
player.sendPacket(new ExVariationResult(augment.getOption1Id(), augment.getOption2Id(), true));
|
||||
|
||||
// Consume the life stone.
|
||||
if (!player.destroyItem("RequestRefine", mineralItem, 1, null, false))
|
||||
{
|
||||
return;
|
||||
}
|
||||
player.destroyItem("RequestRefine", mineralItem, 1, null, false);
|
||||
|
||||
// Consume the gemstones.
|
||||
if ((feeItem != null) && !player.destroyItem("RequestRefine", feeItem, _feeCount, null, false))
|
||||
if (feeItem != null)
|
||||
{
|
||||
return;
|
||||
player.destroyItem("RequestRefine", feeItem, _feeCount, null, false);
|
||||
}
|
||||
|
||||
// Consume Adena.
|
||||
if ((adenaFee > 0) && !player.reduceAdena("RequestRefine", adenaFee, player, false))
|
||||
if (adenaFee > 0)
|
||||
{
|
||||
return;
|
||||
player.reduceAdena("RequestRefine", adenaFee, player, false);
|
||||
}
|
||||
|
||||
// Request (continues at ExApplyVariationOption).
|
||||
if (player.getRequest(VariationRequest.class) == null)
|
||||
{
|
||||
player.addRequest(new VariationRequest(player));
|
||||
}
|
||||
|
||||
VariationRequest request = player.getRequest(VariationRequest.class);
|
||||
final VariationRequest request = player.getRequest(VariationRequest.class);
|
||||
request.setAugmentedItem(_targetItemObjId);
|
||||
request.setMineralItem(_mineralItemObjId);
|
||||
request.setAugment(augment);
|
||||
|
||||
player.sendPacket(new ExVariationResult(augment.getOption1Id(), augment.getOption2Id(), true));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -23,17 +23,13 @@ public class ExPutIntensiveResultForVariationMake implements IClientOutgoingPack
|
||||
{
|
||||
private final int _refinerItemObjId;
|
||||
private final int _lifestoneItemId;
|
||||
private final int _gemstoneItemId;
|
||||
private final long _gemstoneCount;
|
||||
private final int _unk2;
|
||||
private final int _insertResult;
|
||||
|
||||
public ExPutIntensiveResultForVariationMake(int refinerItemObjId, int lifeStoneId, int gemstoneItemId, long gemstoneCount)
|
||||
public ExPutIntensiveResultForVariationMake(int refinerItemObjId, int lifeStoneId, int insertResult)
|
||||
{
|
||||
_refinerItemObjId = refinerItemObjId;
|
||||
_lifestoneItemId = lifeStoneId;
|
||||
_gemstoneItemId = gemstoneItemId;
|
||||
_gemstoneCount = gemstoneCount;
|
||||
_unk2 = 1;
|
||||
_insertResult = insertResult;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -42,9 +38,7 @@ public class ExPutIntensiveResultForVariationMake implements IClientOutgoingPack
|
||||
OutgoingPackets.EX_PUT_INTENSIVE_RESULT_FOR_VARIATION_MAKE.writeId(packet);
|
||||
packet.writeD(_refinerItemObjId);
|
||||
packet.writeD(_lifestoneItemId);
|
||||
packet.writeD(_gemstoneItemId);
|
||||
packet.writeQ(_gemstoneCount);
|
||||
packet.writeD(_unk2);
|
||||
packet.writeC(_insertResult);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -19,11 +19,10 @@ package org.l2jmobius.gameserver.network.serverpackets;
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
/**
|
||||
* Format: (ch)ddd
|
||||
*/
|
||||
public class ExVariationResult implements IClientOutgoingPacket
|
||||
{
|
||||
public static final ExVariationResult FAIL = new ExVariationResult(0, 0, false);
|
||||
|
||||
private final int _option1;
|
||||
private final int _option2;
|
||||
private final int _success;
|
||||
@ -41,6 +40,8 @@ public class ExVariationResult implements IClientOutgoingPacket
|
||||
OutgoingPackets.EX_VARIATION_RESULT.writeId(packet);
|
||||
packet.writeD(_option1);
|
||||
packet.writeD(_option2);
|
||||
packet.writeQ(0); // GemStoneCount
|
||||
packet.writeQ(0); // NecessaryGemStoneCount
|
||||
packet.writeD(_success);
|
||||
return true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user