Small rework for pet shot recharge messages.

This commit is contained in:
MobiusDev
2017-10-01 00:54:54 +00:00
parent 36b9f58139
commit 95686c6364
11 changed files with 76 additions and 32 deletions

View File

@@ -115,11 +115,11 @@ public class BeastSoulShot implements IItemHandler
}
// Pet uses the power of spirit.
activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
if (pet != null)
{
if (!pet.isChargedShot(ShotType.SOULSHOTS))
{
activeOwner.sendMessage("Your pet uses soulshot."); // activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
pet.chargeShot(ShotType.SOULSHOTS);
// Visual effect change if player has equipped Ruby lvl 3 or higher
if (activeOwner.getActiveRubyJewel() != null)
@@ -137,6 +137,7 @@ public class BeastSoulShot implements IItemHandler
{
if (!s.isChargedShot(ShotType.SOULSHOTS))
{
activeOwner.sendMessage("Your servitor uses soulshot."); // activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
s.chargeShot(ShotType.SOULSHOTS);
// Visual effect change if player has equipped Ruby lvl 3 or higher
if (activeOwner.getActiveRubyJewel() != null)

View File

@@ -117,11 +117,11 @@ public class BeastSpiritShot implements IItemHandler
}
// Pet uses the power of spirit.
activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
if (pet != null)
{
if (!pet.isChargedShot(shotType))
{
activeOwner.sendMessage(isBlessed ? "Your pet uses blessed spiritshot." : "Your pet uses spiritshot."); // activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
pet.chargeShot(shotType);
// Visual effect change if player has equipped Sapphire lvl 3 or higher
if (activeOwner.getActiveShappireJewel() != null)
@@ -139,6 +139,7 @@ public class BeastSpiritShot implements IItemHandler
{
if (!s.isChargedShot(shotType))
{
activeOwner.sendMessage(isBlessed ? "Your servitor uses blessed spiritshot." : "Your servitor uses spiritshot."); // activeOwner.sendPacket(SystemMessageId.YOUR_PET_USES_SPIRITSHOT);
s.chargeShot(shotType);
// Visual effect change if player has equipped Sapphire lvl 3 or higher
if (activeOwner.getActiveShappireJewel() != null)

View File

@@ -18,6 +18,7 @@ package com.l2jmobius.gameserver.network.clientpackets;
import com.l2jmobius.commons.network.PacketReader;
import com.l2jmobius.gameserver.enums.PrivateStoreType;
import com.l2jmobius.gameserver.enums.ShotType;
import com.l2jmobius.gameserver.model.actor.L2Summon;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.items.L2Item;
@@ -118,21 +119,32 @@ public final class RequestAutoSoulShot implements IClientIncomingPacket
activeChar.addAutoSoulShot(_itemId);
client.sendPacket(new ExAutoSoulShot(_itemId, _enable, _type));
// Send message
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.THE_AUTOMATIC_USE_OF_S1_HAS_BEEN_ACTIVATED);
sm.addItemName(item);
client.sendPacket(sm);
// Recharge summon's shots
final L2Summon pet = activeChar.getPet();
if (pet != null)
{
// Send message
if (!pet.isChargedShot(item.getItem().getDefaultAction() == ActionType.SUMMON_SOULSHOT ? ShotType.SOULSHOTS : ((item.getId() == 6647) || (item.getId() == 20334)) ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS))
{
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.THE_AUTOMATIC_USE_OF_S1_HAS_BEEN_ACTIVATED);
sm.addItemName(item);
client.sendPacket(sm);
}
// Charge
pet.rechargeShots(isSoulshot, isSpiritshot, false);
}
activeChar.getServitors().values().forEach(s ->
for (L2Summon summon : activeChar.getServitors().values())
{
s.rechargeShots(isSoulshot, isSpiritshot, false);
});
// Send message
if (!summon.isChargedShot(item.getItem().getDefaultAction() == ActionType.SUMMON_SOULSHOT ? ShotType.SOULSHOTS : ((item.getId() == 6647) || (item.getId() == 20334)) ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS))
{
final SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.THE_AUTOMATIC_USE_OF_S1_HAS_BEEN_ACTIVATED);
sm.addItemName(item);
client.sendPacket(sm);
}
// Charge
summon.rechargeShots(isSoulshot, isSpiritshot, false);
}
}
else
{