diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminPolymorph.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminPolymorph.java index 60798f1698f6ef9faa2a3057e1ce1b0738611bee..5e04a54d95c461576c43965f593e3ff455ade635 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminPolymorph.java +++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/admincommandhandlers/AdminPolymorph.java @@ -25,10 +25,8 @@ import com.l2jserver.gameserver.network.SystemMessageId; import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse; import com.l2jserver.gameserver.network.serverpackets.SetupGauge; - /** * This class handles following admin commands: polymorph - * * @version $Revision: 1.2.2.1.2.4 $ $Date: 2007/07/31 10:05:56 $ */ public class AdminPolymorph implements IAdminCommandHandler @@ -48,9 +46,27 @@ public class AdminPolymorph implements IAdminCommandHandler @Override public boolean useAdminCommand(String command, L2PcInstance activeChar) { - if (activeChar.isMounted()) + if (activeChar.isSitting()) + { + activeChar.sendPacket(SystemMessageId.CANNOT_TRANSFORM_WHILE_SITTING); + return false; + } + + if (activeChar.isTransformed() || activeChar.isInStance()) + { + activeChar.sendPacket(SystemMessageId.YOU_ALREADY_POLYMORPHED_AND_CANNOT_POLYMORPH_AGAIN); + return false; + } + + if (activeChar.isInWater()) { - activeChar.sendMessage("You can't transform while mounted, please dismount and try again."); + activeChar.sendPacket(SystemMessageId.YOU_CANNOT_POLYMORPH_INTO_THE_DESIRED_FORM_IN_WATER); + return false; + } + + if (activeChar.isFlyingMounted() || activeChar.isMounted() || activeChar.isRidingStrider()) + { + activeChar.sendPacket(SystemMessageId.YOU_CANNOT_POLYMORPH_WHILE_RIDING_A_PET); return false; } @@ -90,7 +106,9 @@ public class AdminPolymorph implements IAdminCommandHandler } } else if (parts.length == 1) + { cha.untransform(); + } else { activeChar.sendMessage("Usage: //transform <id>"); @@ -115,7 +133,9 @@ public class AdminPolymorph implements IAdminCommandHandler doPolymorph(activeChar, target, p2, p1); } else + { doPolymorph(activeChar, target, p1, "npc"); + } } catch (Exception e) { @@ -142,7 +162,7 @@ public class AdminPolymorph implements IAdminCommandHandler /** * @param activeChar - * @param obj + * @param obj * @param id * @param type */ @@ -151,7 +171,7 @@ public class AdminPolymorph implements IAdminCommandHandler if (obj != null) { obj.getPoly().setPolyInfo(type, id); - //animation + // animation if (obj instanceof L2Character) { L2Character Char = (L2Character) obj; @@ -160,13 +180,15 @@ public class AdminPolymorph implements IAdminCommandHandler SetupGauge sg = new SetupGauge(0, 4000); Char.sendPacket(sg); } - //end of animation + // end of animation obj.decayMe(); obj.spawnMe(obj.getX(), obj.getY(), obj.getZ()); activeChar.sendMessage("Polymorph succeed"); } else + { activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET); + } } /** @@ -183,16 +205,24 @@ public class AdminPolymorph implements IAdminCommandHandler activeChar.sendMessage("Unpolymorph succeed"); } else + { activeChar.sendPacket(SystemMessageId.INCORRECT_TARGET); + } } private void showMainPage(L2PcInstance activeChar, String command) { if (command.contains("transform")) + { AdminHelpPage.showHelpPage(activeChar, "transform.htm"); + } else if (command.contains("abnormal")) + { AdminHelpPage.showHelpPage(activeChar, "abnormal.htm"); + } else + { AdminHelpPage.showHelpPage(activeChar, "effects_menu.htm"); + } } } diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Transformation.java b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Transformation.java index 5b95ce548655fd3bfb8968e07944d52698ffcf9a..c322efed6f45220d9e89fcb2c4ccd1780b46a63e 100644 --- a/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Transformation.java +++ b/L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/Transformation.java @@ -64,6 +64,12 @@ public class Transformation extends L2Effect return false; } + if (trg.isSitting()) + { + trg.sendPacket(SystemMessageId.CANNOT_TRANSFORM_WHILE_SITTING); + return false; + } + if (trg.isTransformed() || trg.isInStance()) { trg.sendPacket(SystemMessageId.YOU_ALREADY_POLYMORPHED_AND_CANNOT_POLYMORPH_AGAIN); @@ -76,7 +82,7 @@ public class Transformation extends L2Effect return false; } - if (trg.isMounted() || trg.isFlyingMounted()) + if (trg.isFlyingMounted() || trg.isMounted() || trg.isRidingStrider()) { trg.sendPacket(SystemMessageId.YOU_CANNOT_POLYMORPH_WHILE_RIDING_A_PET); return false;