Fixed a bug where people could switch classes and still be registered in olympiad.

Contributed by Sahar.
This commit is contained in:
MobiusDevelopment 2019-10-13 00:03:39 +00:00
parent 033f81a4a6
commit 695a2dd7f0
15 changed files with 91 additions and 0 deletions

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -67,6 +68,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -44,6 +44,7 @@ import org.l2jmobius.gameserver.model.clan.Clan.SubPledge;
import org.l2jmobius.gameserver.model.clan.ClanMember;
import org.l2jmobius.gameserver.model.entity.Castle;
import org.l2jmobius.gameserver.model.entity.Fort;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.zone.ZoneId;
import org.l2jmobius.gameserver.network.SystemMessageId;
@ -299,6 +300,12 @@ public class VillageMasterInstance extends NpcInstance
player.sendPacket(SystemMessageId.SUBCLASSES_MAY_NOT_BE_CREATED_OR_CHANGED_WHILE_A_SKILL_IS_IN_USE);
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
// Subclasses may not be changed while a transformated state.
if (player.getTransformation() != null)

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{

View File

@ -24,6 +24,7 @@ import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
import org.l2jmobius.gameserver.model.olympiad.OlympiadManager;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList;
@ -66,6 +67,11 @@ public class ClassChange extends AbstractEffect
return;
}
if (OlympiadManager.getInstance().isRegisteredInComp(player))
{
OlympiadManager.getInstance().unRegisterNoble(player);
}
final Skill identifyCrisis = SkillData.getInstance().getSkill(IDENTITY_CRISIS_SKILL_ID, 1);
if (identifyCrisis != null)
{