More improvements for AdminEditChar.

Thanks to nasseka.
This commit is contained in:
MobiusDevelopment
2022-05-28 12:24:12 +00:00
parent fabc9298cb
commit 18fb6bc571
10 changed files with 70 additions and 10 deletions

View File

@@ -443,7 +443,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -445,7 +445,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -445,7 +445,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -475,7 +475,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -475,7 +475,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -430,7 +430,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -443,7 +443,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -47,6 +47,9 @@ import org.l2jmobius.gameserver.model.actor.Summon;
import org.l2jmobius.gameserver.model.actor.instance.Pet;
import org.l2jmobius.gameserver.model.html.PageBuilder;
import org.l2jmobius.gameserver.model.html.PageResult;
import org.l2jmobius.gameserver.model.item.instance.Item;
import org.l2jmobius.gameserver.model.item.type.WeaponType;
import org.l2jmobius.gameserver.model.itemcontainer.Inventory;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
@@ -54,6 +57,7 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo;
import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight;
import org.l2jmobius.gameserver.network.serverpackets.GMViewItemList;
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
@@ -414,6 +418,22 @@ public class AdminEditChar implements IAdminCommandHandler
}
}
// Sylph checks
if (!CategoryData.getInstance().isInCategory(CategoryType.SYLPH_ALL_CLASS, classidval) && (player.getActiveWeaponItem().getItemType() == WeaponType.PISTOLS))
{
final Item itemToRemove = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND);
if (itemToRemove != null)
{
final long slot = player.getInventory().getSlotFromItem(itemToRemove);
player.getInventory().unEquipItemInBodySlot(slot);
final InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(itemToRemove);
player.sendInventoryUpdate(iu);
player.broadcastUserInfo();
}
}
// Death Knight checks.
if (CategoryData.getInstance().isInCategory(CategoryType.DEATH_KNIGHT_ALL_CLASS, classidval))
{
@@ -443,7 +463,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -47,6 +47,9 @@ import org.l2jmobius.gameserver.model.actor.Summon;
import org.l2jmobius.gameserver.model.actor.instance.Pet;
import org.l2jmobius.gameserver.model.html.PageBuilder;
import org.l2jmobius.gameserver.model.html.PageResult;
import org.l2jmobius.gameserver.model.item.instance.Item;
import org.l2jmobius.gameserver.model.item.type.WeaponType;
import org.l2jmobius.gameserver.model.itemcontainer.Inventory;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
@@ -54,6 +57,7 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo;
import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight;
import org.l2jmobius.gameserver.network.serverpackets.GMViewItemList;
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
@@ -414,6 +418,22 @@ public class AdminEditChar implements IAdminCommandHandler
}
}
// Sylph checks
if (!CategoryData.getInstance().isInCategory(CategoryType.SYLPH_ALL_CLASS, classidval) && (player.getActiveWeaponItem().getItemType() == WeaponType.PISTOLS))
{
final Item itemToRemove = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND);
if (itemToRemove != null)
{
final long slot = player.getInventory().getSlotFromItem(itemToRemove);
player.getInventory().unEquipItemInBodySlot(slot);
final InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(itemToRemove);
player.sendInventoryUpdate(iu);
player.broadcastUserInfo();
}
}
// Death Knight checks.
if (CategoryData.getInstance().isInCategory(CategoryType.DEATH_KNIGHT_ALL_CLASS, classidval))
{
@@ -443,7 +463,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();

View File

@@ -47,6 +47,9 @@ import org.l2jmobius.gameserver.model.actor.Summon;
import org.l2jmobius.gameserver.model.actor.instance.Pet;
import org.l2jmobius.gameserver.model.html.PageBuilder;
import org.l2jmobius.gameserver.model.html.PageResult;
import org.l2jmobius.gameserver.model.item.instance.Item;
import org.l2jmobius.gameserver.model.item.type.WeaponType;
import org.l2jmobius.gameserver.model.itemcontainer.Inventory;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
@@ -54,6 +57,7 @@ import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo;
import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight;
import org.l2jmobius.gameserver.network.serverpackets.GMViewItemList;
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
@@ -414,6 +418,22 @@ public class AdminEditChar implements IAdminCommandHandler
}
}
// Sylph checks
if (!CategoryData.getInstance().isInCategory(CategoryType.SYLPH_ALL_CLASS, classidval) && (player.getActiveWeaponItem().getItemType() == WeaponType.PISTOLS))
{
final Item itemToRemove = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND);
if (itemToRemove != null)
{
final long slot = player.getInventory().getSlotFromItem(itemToRemove);
player.getInventory().unEquipItemInBodySlot(slot);
final InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(itemToRemove);
player.sendInventoryUpdate(iu);
player.broadcastUserInfo();
}
}
// Death Knight checks.
if (CategoryData.getInstance().isInCategory(CategoryType.DEATH_KNIGHT_ALL_CLASS, classidval))
{
@@ -461,7 +481,7 @@ public class AdminEditChar implements IAdminCommandHandler
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
player.removeSkill(oldSkill, true, true);
}
player.broadcastUserInfo();
player.sendSkillList();