Adjustments for admin set class.

Contributed by nasseka.
This commit is contained in:
MobiusDevelopment 2022-05-26 10:56:29 +00:00
parent c9f503a765
commit 66d5895c0c
10 changed files with 150 additions and 0 deletions

View File

@ -49,6 +49,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -60,6 +61,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -431,8 +433,21 @@ public class AdminEditChar implements IAdminCommandHandler
}
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -49,6 +49,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -60,6 +61,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -433,8 +435,21 @@ public class AdminEditChar implements IAdminCommandHandler
}
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -49,6 +49,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -60,6 +61,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -433,8 +435,21 @@ public class AdminEditChar implements IAdminCommandHandler
}
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -51,6 +51,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -62,6 +63,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -463,8 +465,21 @@ public class AdminEditChar implements IAdminCommandHandler
}
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -51,6 +51,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -62,6 +63,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -463,8 +465,21 @@ public class AdminEditChar implements IAdminCommandHandler
}
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -45,6 +45,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -56,6 +57,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -418,8 +420,21 @@ public class AdminEditChar implements IAdminCommandHandler
// SkillTreeData.getInstance().cleanSkillUponChangeClass(player, false);
// }
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -47,6 +47,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -58,6 +59,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -431,8 +433,21 @@ public class AdminEditChar implements IAdminCommandHandler
final String newclass = ClassListData.getInstance().getClass(player.getClassId()).getClassName();
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -47,6 +47,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -58,6 +59,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -431,8 +433,21 @@ public class AdminEditChar implements IAdminCommandHandler
final String newclass = ClassListData.getInstance().getClass(player.getClassId()).getClassName();
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -47,6 +47,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -58,6 +59,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -431,8 +433,21 @@ public class AdminEditChar implements IAdminCommandHandler
final String newclass = ClassListData.getInstance().getClass(player.getClassId()).getClassName();
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");

View File

@ -47,6 +47,7 @@ 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.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
import org.l2jmobius.gameserver.network.GameClient;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -58,6 +59,7 @@ import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll;
import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll;
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
import org.l2jmobius.gameserver.taskmanager.AutoUseTaskManager;
import org.l2jmobius.gameserver.util.BuilderUtil;
/**
@ -449,8 +451,21 @@ public class AdminEditChar implements IAdminCommandHandler
final String newclass = ClassListData.getInstance().getClass(player.getClassId()).getClassName();
player.store(false);
for (Skill oldSkill : player.getAllSkills())
{
if (oldSkill.isBad())
{
AutoUseTaskManager.getInstance().removeAutoSkill(player, oldSkill.getId());
}
else
{
AutoUseTaskManager.getInstance().removeAutoBuff(player, oldSkill.getId());
}
player.removeSkill(oldSkill, false, true);
}
player.broadcastUserInfo();
player.sendSkillList();
player.rewardSkills();
player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED));
player.sendPacket(new ExUserInfoInvenWeight(player));
player.sendMessage("A GM changed your class to " + newclass + ".");