2
0
Эх сурвалжийг харах

Fixed quest Repent Your Sins when you switch class. Minor cleanup with
new method hasQuestCompleted.

Adry85 7 жил өмнө
parent
commit
a4b8a5eb87

+ 1 - 1
src/main/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -9329,7 +9329,7 @@ public final class L2PcInstance extends L2Playable
 			sendPacket(new EtcStatusUpdate(this));
 			
 			// if player has quest 422: Repent Your Sins, remove it
-			QuestState st = getQuestState("422_RepentYourSins");
+			QuestState st = getQuestState("Q00422_RepentYourSins");
 			if (st != null)
 			{
 				st.exitQuest(true);

+ 1 - 20
src/main/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterInstance.java

@@ -45,7 +45,6 @@ import com.l2jserver.gameserver.model.base.PlayerClass;
 import com.l2jserver.gameserver.model.base.SubClass;
 import com.l2jserver.gameserver.model.entity.Castle;
 import com.l2jserver.gameserver.model.entity.Fort;
-import com.l2jserver.gameserver.model.quest.QuestState;
 import com.l2jserver.gameserver.model.zone.ZoneId;
 import com.l2jserver.gameserver.network.SystemMessageId;
 import com.l2jserver.gameserver.network.serverpackets.AcquireSkillList;
@@ -694,25 +693,7 @@ public class L2VillageMasterInstance extends L2NpcInstance
 	
 	protected boolean checkQuests(L2PcInstance player)
 	{
-		// Noble players can add Sub-Classes without quests
-		if (player.isNoble())
-		{
-			return true;
-		}
-		
-		QuestState qs = player.getQuestState("Q00234_FatesWhisper");
-		if ((qs == null) || !qs.isCompleted())
-		{
-			return false;
-		}
-		
-		qs = player.getQuestState("Q00235_MimirsElixir");
-		if ((qs == null) || !qs.isCompleted())
-		{
-			return false;
-		}
-		
-		return true;
+		return player.isNoble() || player.hasQuestCompleted("Q00234_FatesWhisper") || player.hasQuestCompleted("Q00235_MimirsElixir");
 	}
 	
 	/**

+ 1 - 20
src/main/java/com/l2jserver/gameserver/model/actor/instance/L2VillageMasterKamaelInstance.java

@@ -22,7 +22,6 @@ import com.l2jserver.Config;
 import com.l2jserver.gameserver.enums.Race;
 import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
 import com.l2jserver.gameserver.model.base.PlayerClass;
-import com.l2jserver.gameserver.model.quest.QuestState;
 
 public final class L2VillageMasterKamaelInstance extends L2VillageMasterInstance
 {
@@ -55,25 +54,7 @@ public final class L2VillageMasterKamaelInstance extends L2VillageMasterInstance
 	@Override
 	protected final boolean checkQuests(L2PcInstance player)
 	{
-		// Noble players can add subbclasses without quests
-		if (player.isNoble())
-		{
-			return true;
-		}
-		
-		QuestState qs = player.getQuestState("Q00234_FatesWhisper");
-		if ((qs == null) || !qs.isCompleted())
-		{
-			return false;
-		}
-		
-		qs = player.getQuestState("Q00236_SeedsOfChaos");
-		if ((qs == null) || !qs.isCompleted())
-		{
-			return false;
-		}
-		
-		return true;
+		return player.isNoble() || player.hasQuestCompleted("Q00234_FatesWhisper") || player.hasQuestCompleted("Q00236_SeedsOfChaos");
 	}
 	
 	@Override

+ 1 - 2
src/main/java/com/l2jserver/gameserver/network/clientpackets/RequestAcquireSkill.java

@@ -590,8 +590,7 @@ public final class RequestAcquireSkill extends L2GameClientPacket
 		{
 			return true;
 		}
-		final QuestState st = player.getQuestState("Q00136_MoreThanMeetsTheEye");
-		return (st != null) && st.isCompleted();
+		return player.hasQuestCompleted("Q00136_MoreThanMeetsTheEye");
 	}
 	
 	@Override