Reawakened Fate (10590) improvements.
Contributed by NightBR.
This commit is contained in:
		| @@ -1,3 +1,4 @@ | ||||
| <html><body>Black Wizard Lapathia:<br> | ||||
| Of course. If not why would you have come all the way here, where only blood and monsters are left? Adventurer, please defeat the monsters here in the <font color="LEVEL">Bloody Swampland</font>. These vampires... the <font color="LEVEL">Marsh Vampire Rogue, Marsh Vampire Warrior, Marsh Vampire Wizard, Marsh Vampire Shooter</font>. Defeat them and collect <font color="LEVEL">500 Vampire Fluids</font>. | ||||
| Please defeat the monsters here in the <font color="LEVEL">Bloody Swampland</font>. The <font color="LEVEL">Marsh Vampire Rogue, Marsh Vampire Warrior, Marsh Vampire Wizard, Marsh Vampire Shooter</font>. Defeat them and collect <font color="LEVEL">500 Vampire Fluids</font>. You must alse reach <font color="LEVEL">level 99</font> in this place.<br> | ||||
| Once you complete the mission, you don't need to come see me. Return to <font color="LEVEL">Dual Class Master Joachim</font>. You don't need me to teleport you, right? This place is filled with vampires anyway Good luck, then.<br> | ||||
| </body></html> | ||||
							
								
								
									
										4
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-01.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-01.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| Are you ready to hear me out? It's about how to awaken another power hidden within you.....<br> | ||||
| <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10590_ReawakenedFate 34513-02.htm">"Go on"</button> | ||||
| </body></html> | ||||
							
								
								
									
										5
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-02.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-02.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| I'm not sure if you are satisfied with your power at the moment. But you have another power hidden within you. It could even surpass your current power.<br> | ||||
| I'm here to help you awaken that power.<br> | ||||
| <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10590_ReawakenedFate 34513-03.htm">"What should I do?"</button> | ||||
| </body></html> | ||||
							
								
								
									
										6
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-03.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-03.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| In order to awaken that new power, you must get a little stronger. Your current power is not enough.<br> | ||||
| So please get stronger with the missions I give you.<br> | ||||
| <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10590_ReawakenedFate 34513-04.htm">"Alright"</button><br> | ||||
| <font color="LEVEL">(Once you complete this quest, you'll be able to have a dual class. If you are carrying out Split Destiny or Winds of Fate: Encroachiling Shadows when you complete this quest, those quests will be deleted.)</font> | ||||
| </body></html> | ||||
							
								
								
									
										5
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-04.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-04.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| Then go to the <font color="LEVEL">Bloody Swampland</font> and complete the mission from <font color="LEVEL">Black Wizard Lapathia</font>.<br> | ||||
| I'll send you there once you are ready.<br> | ||||
| <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10590_ReawakenedFate teleport">"Teleport"</button> | ||||
| </body></html> | ||||
| @@ -1,4 +1,5 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| Then go to the <font color="LEVEL">Bloody Swampland</font> and complete the mission from <font color="LEVEL">Black Wizard Lapathia</font>.<br> | ||||
| I'll send you there once you are ready. | ||||
| You must complete the following mission to awaken the new power. Go to the <font color="LEVEL">Bloody Swampland</font> and complete de mission from <font color="LEVEL">Black Wizard Lapathia</font>.<br> | ||||
| I'll send you there once you are ready.<br> | ||||
| <Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10590_ReawakenedFate teleport">"Teleport"</button> | ||||
| </body></html> | ||||
							
								
								
									
										4
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-16.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q10590_ReawakenedFate/34513-16.htm
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| <html><body>Dual Class Master Joachim:<br> | ||||
| You are not qualified for this mission.<br> | ||||
| (Only characters level 95 or higher who have completed the quest Where Fates Intersect can carry out this mission.) | ||||
| </body></html> | ||||
| @@ -16,11 +16,15 @@ | ||||
|  */ | ||||
| package quests.Q10590_ReawakenedFate; | ||||
|  | ||||
| import java.util.HashSet; | ||||
| import java.util.Set; | ||||
|  | ||||
| import org.l2jmobius.Config; | ||||
| import org.l2jmobius.gameserver.enums.QuestSound; | ||||
| import org.l2jmobius.gameserver.model.Location; | ||||
| import org.l2jmobius.gameserver.model.actor.Npc; | ||||
| import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; | ||||
| import org.l2jmobius.gameserver.model.holders.NpcLogListHolder; | ||||
| import org.l2jmobius.gameserver.model.quest.Quest; | ||||
| import org.l2jmobius.gameserver.model.quest.QuestState; | ||||
| import org.l2jmobius.gameserver.model.quest.State; | ||||
| @@ -31,46 +35,45 @@ import org.l2jmobius.gameserver.util.Util; | ||||
| import quests.Q10589_WhereFatesIntersect.Q10589_WhereFatesIntersect; | ||||
|  | ||||
| /** | ||||
|  * Q10590_ReawakenedFate | ||||
|  * @URL https://www.youtube.com/watch?v=HCd784Gnguw | ||||
|  * @author NightBR | ||||
|  * Reawakened Fate (10590) | ||||
|  * @URL https://l2wiki.com/Reawakened_Fate | ||||
|  * @author Dmitri | ||||
|  * @author NightBR (fixes and standardization) | ||||
|  */ | ||||
| public class Q10590_ReawakenedFate extends Quest | ||||
| { | ||||
| 	// NPCs | ||||
| 	private static final int JOACHIM = 34513; | ||||
| 	private static final int RAFLASIA = 34414; | ||||
| 	private static final int HERPA = 34362; | ||||
| 	private static final int ORWEN = 30857; | ||||
| 	private static final int LAPATHIA = 34414; | ||||
| 	private static final int HERPHAH = 34362; | ||||
| 	private static final int ORVEN = 30857; | ||||
| 	private static final int[] MONSTERS = | ||||
| 	{ | ||||
| 		24457, // Swamp Vampire Rogue | ||||
| 		24458, // Swamp Vampire Warrior | ||||
| 		24459, // Swamp Vampire Wizard | ||||
| 		24460 // Swamp Vampire Shooter | ||||
| 		24457, // Marsh Vampire Rogue | ||||
| 		24458, // Marsh Vampire Warrior | ||||
| 		24459, // Marsh Vampire Wizard | ||||
| 		24460 // Marsh Vampire Shooter | ||||
| 	}; | ||||
| 	// Item | ||||
| 	private static final int IHOR_VAMPIRE = 80854; // Ihor Vampire - monster drop | ||||
| 	private static final int VAMPIRE_ICHOR = 80854; // Vampire Ichor - monster drop | ||||
| 	// Rewards | ||||
| 	private static final long EXP = 1; | ||||
| 	private static final int SP = 1; | ||||
| 	private static final int ADENA_AMOUNT = 5050; | ||||
| 	private static final int ACHIEVEMENT_BOX = 80909; | ||||
| 	private static final int RUBIN_LV2 = 38856; | ||||
| 	private static final int SAPPHIRE_LV2 = 38928; | ||||
| 	// Misc | ||||
| 	private static final int MIN_LEVEL = 99; | ||||
| 	private static final int MIN_LEVEL = 95; | ||||
| 	private static final int REACH_LV_99 = NpcStringId.REACH_LV_99.getId(); | ||||
| 	// Location | ||||
| 	private static final Location ALTAR_OF_EVIL = new Location(-14467, 44242, -3673); | ||||
| 	private static final Location BLOODY_SWAMPLAND = new Location(-14467, 44242, -3673); | ||||
| 	 | ||||
| 	public Q10590_ReawakenedFate() | ||||
| 	{ | ||||
| 		super(10590); | ||||
| 		addStartNpc(JOACHIM); | ||||
| 		addTalkId(JOACHIM, RAFLASIA, HERPA, ORWEN); | ||||
| 		addTalkId(JOACHIM, LAPATHIA, HERPHAH, ORVEN); | ||||
| 		addKillId(MONSTERS); | ||||
| 		registerQuestItems(IHOR_VAMPIRE); | ||||
| 		addCondMinLevel(95, "34513-16.html"); | ||||
| 		registerQuestItems(VAMPIRE_ICHOR); | ||||
| 		addCondMinLevel(MIN_LEVEL, "34513-16.html"); | ||||
| 		addCondCompletedQuest(Q10589_WhereFatesIntersect.class.getSimpleName(), "34513-16.html"); | ||||
| 	} | ||||
| 	 | ||||
| @@ -87,19 +90,18 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 		String htmltext = null; | ||||
| 		switch (event) | ||||
| 		{ | ||||
| 			case "34513-02.html": | ||||
| 			case "34513-04.html": | ||||
| 			case "34513-07.html": | ||||
| 			case "34362-03.html": | ||||
| 			case "30857-03.html": | ||||
| 			case "34513-02.htm": | ||||
| 			case "34513-03.htm": | ||||
| 			case "34513-06.html": | ||||
| 			case "34414-02.html": | ||||
| 			case "34362-02.html": | ||||
| 			case "30857-02.html": | ||||
| 			case "34513-09.html": | ||||
| 			case "34513-12.html": | ||||
| 			case "34513-13.html": | ||||
| 			{ | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "34513-03.html": | ||||
| 			case "34513-04.htm": | ||||
| 			{ | ||||
| 				qs.startQuest(); | ||||
| 				htmltext = event; | ||||
| @@ -109,52 +111,42 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 			{ | ||||
| 				if (qs.isCond(1)) | ||||
| 				{ | ||||
| 					player.teleToLocation(ALTAR_OF_EVIL); | ||||
| 					player.teleToLocation(BLOODY_SWAMPLAND); // Teleport to Bloody Swampland near npc Lapathia | ||||
| 				} | ||||
| 				break; | ||||
| 			} | ||||
| 			case "34414-02.html": | ||||
| 			case "34414-03.html": | ||||
| 			{ | ||||
| 				qs.setCond(2, true); | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "34513-06.html": | ||||
| 			case "34513-07.html": | ||||
| 			{ | ||||
| 				qs.setCond(4, true); | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "34362-02.html": | ||||
| 			case "34362-03.html": | ||||
| 			{ | ||||
| 				qs.setCond(5, true); | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "30857-02.html": | ||||
| 			case "30857-03.html": | ||||
| 			{ | ||||
| 				qs.setCond(6, true); | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "30857-04.html": | ||||
| 			{ | ||||
| 				if (qs.isCond(6)) | ||||
| 				{ | ||||
| 					qs.setCond(7, true); | ||||
| 				} | ||||
| 				htmltext = event; | ||||
| 				break; | ||||
| 			} | ||||
| 			case "34513-10.html": | ||||
| 			{ | ||||
| 				if (qs.isCond(7)) | ||||
| 				{ | ||||
| 					if (player.getLevel() >= MIN_LEVEL) | ||||
| 					if (player.getLevel() >= 99) | ||||
| 					{ | ||||
| 						// Reward №1 | ||||
| 						addExpAndSp(player, EXP, SP); | ||||
| 						giveAdena(player, ADENA_AMOUNT, false); | ||||
| 						takeItems(player, VAMPIRE_ICHOR, -1); | ||||
| 						giveItems(player, ACHIEVEMENT_BOX, 1); | ||||
| 						giveItems(player, RUBIN_LV2, 1); | ||||
| 						showOnScreenMsg(player, NpcStringId.YOU_ARE_READY_TO_ADD_A_DUAL_CLASS_NTALK_TO_THE_DUAL_CLASS_MASTER, ExShowScreenMessage.TOP_CENTER, 10000); | ||||
| @@ -168,11 +160,10 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 			{ | ||||
| 				if (qs.isCond(7)) | ||||
| 				{ | ||||
| 					if (player.getLevel() >= MIN_LEVEL) | ||||
| 					if (player.getLevel() >= 99) | ||||
| 					{ | ||||
| 						// Reward №2 | ||||
| 						addExpAndSp(player, EXP, SP); | ||||
| 						giveAdena(player, ADENA_AMOUNT, false); | ||||
| 						takeItems(player, VAMPIRE_ICHOR, -1); | ||||
| 						giveItems(player, ACHIEVEMENT_BOX, 1); | ||||
| 						giveItems(player, SAPPHIRE_LV2, 1); | ||||
| 						showOnScreenMsg(player, NpcStringId.YOU_ARE_READY_TO_ADD_A_DUAL_CLASS_NTALK_TO_THE_DUAL_CLASS_MASTER, ExShowScreenMessage.TOP_CENTER, 10000); | ||||
| @@ -182,6 +173,15 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 					break; | ||||
| 				} | ||||
| 			} | ||||
| 			case "34513-12.html": | ||||
| 			{ | ||||
| 				if (player.hasDualClass()) | ||||
| 				{ | ||||
| 					htmltext = "34513-13.html"; | ||||
| 				} | ||||
| 				// TODO: We need info about what to do, when player does not have dual class yet. | ||||
| 				// else {} | ||||
| 			} | ||||
| 		} | ||||
| 		return htmltext; | ||||
| 	} | ||||
| @@ -198,7 +198,7 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 			{ | ||||
| 				if (npc.getId() == JOACHIM) | ||||
| 				{ | ||||
| 					htmltext = "34513-01.html"; | ||||
| 					htmltext = "34513-01.htm"; | ||||
| 				} | ||||
| 				break; | ||||
| 			} | ||||
| @@ -210,7 +210,7 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 					{ | ||||
| 						if (qs.isCond(1)) | ||||
| 						{ | ||||
| 							htmltext = "34513-03.html"; | ||||
| 							htmltext = "34513-03.htm"; | ||||
| 						} | ||||
| 						else if (qs.isCond(2)) | ||||
| 						{ | ||||
| @@ -230,7 +230,7 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 						} | ||||
| 						break; | ||||
| 					} | ||||
| 					case RAFLASIA: | ||||
| 					case LAPATHIA: | ||||
| 					{ | ||||
| 						if (qs.isCond(1)) | ||||
| 						{ | ||||
| @@ -246,7 +246,7 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 						} | ||||
| 						break; | ||||
| 					} | ||||
| 					case HERPA: | ||||
| 					case HERPHAH: | ||||
| 					{ | ||||
| 						if (qs.isCond(4)) | ||||
| 						{ | ||||
| @@ -258,7 +258,7 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 						} | ||||
| 						break; | ||||
| 					} | ||||
| 					case ORWEN: | ||||
| 					case ORVEN: | ||||
| 					{ | ||||
| 						if (qs.isCond(5)) | ||||
| 						{ | ||||
| @@ -293,15 +293,16 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 		final QuestState qs = getQuestState(player, false); | ||||
| 		if ((qs != null) && qs.isCond(2) && Util.checkIfInRange(Config.ALT_PARTY_RANGE, npc, player, false)) | ||||
| 		{ | ||||
| 			if ((getQuestItemsCount(player, IHOR_VAMPIRE) < 500) && (getRandom(100) < 90)) | ||||
| 			if ((getQuestItemsCount(player, VAMPIRE_ICHOR) < 500) && (getRandom(100) < 90)) | ||||
| 			{ | ||||
| 				giveItems(player, IHOR_VAMPIRE, 1); | ||||
| 				giveItems(player, VAMPIRE_ICHOR, 1); | ||||
| 				playSound(player, QuestSound.ITEMSOUND_QUEST_ITEMGET); | ||||
| 			} | ||||
| 			if ((getQuestItemsCount(player, IHOR_VAMPIRE) >= 500) && (player.getLevel() >= MIN_LEVEL)) | ||||
| 			if ((getQuestItemsCount(player, VAMPIRE_ICHOR) >= 500) && (player.getLevel() >= 99)) | ||||
| 			{ | ||||
| 				qs.setCond(3, true); | ||||
| 			} | ||||
| 			sendNpcLogList(player); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| @@ -311,4 +312,21 @@ public class Q10590_ReawakenedFate extends Quest | ||||
| 		executeForEachPlayer(killer, npc, isSummon, true, false); | ||||
| 		return super.onKill(npc, killer, isSummon); | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| 	public Set<NpcLogListHolder> getNpcLogList(PlayerInstance player) | ||||
| 	{ | ||||
| 		final QuestState qs = getQuestState(player, false); | ||||
| 		 | ||||
| 		if ((qs != null) && qs.isCond(2)) | ||||
| 		{ | ||||
| 			final Set<NpcLogListHolder> holder = new HashSet<>(); | ||||
| 			if (player.getLevel() >= 99) | ||||
| 			{ | ||||
| 				holder.add(new NpcLogListHolder(REACH_LV_99, true, 1)); | ||||
| 			} | ||||
| 			return holder; | ||||
| 		} | ||||
| 		return super.getNpcLogList(player); | ||||
| 	} | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment