Q10385_RedThreadOfFate improvements.
Contributed by Stayway.
This commit is contained in:
		@@ -10,8 +10,5 @@
 | 
			
		||||
			<spawn npcId="33749" x="210312" y="13768" z="-3754" heading="0" respawn="0" />
 | 
			
		||||
			<spawn npcId="30031" x="210344" y="16024" z="-3748" heading="0" respawn="0" />
 | 
			
		||||
		</group>
 | 
			
		||||
		<group name="dark">
 | 
			
		||||
			<spawn npcId="33751" x="209372" y="15037" z="-3729" heading="0" respawn="0" />
 | 
			
		||||
		</group>
 | 
			
		||||
	</spawnlist>
 | 
			
		||||
</instance>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/instances/TalkingIsland/33748-04.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/instances/TalkingIsland/33748-04.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Darin:<br>
 | 
			
		||||
The village is untouched, as you can see.<br><font color="LEVEL">Roxxy</font> has been worrying about ominous winds lately, and she doesn't need strangers coming in here spreading unlucky rumors. Get out!
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/instances/TalkingIsland/33749-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/instances/TalkingIsland/33749-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Roxxy:<br>
 | 
			
		||||
If you really know something about this village, <font color="LEVEL">High Priest Biotin</font> would have greeted you.
 | 
			
		||||
</body></html>
 | 
			
		||||
@@ -16,9 +16,11 @@
 | 
			
		||||
 */
 | 
			
		||||
package instances.TalkingIsland;
 | 
			
		||||
 | 
			
		||||
import com.l2jmobius.gameserver.ai.CtrlIntention;
 | 
			
		||||
import com.l2jmobius.gameserver.instancemanager.InstanceManager;
 | 
			
		||||
import com.l2jmobius.gameserver.model.L2Object;
 | 
			
		||||
import com.l2jmobius.gameserver.model.Location;
 | 
			
		||||
import com.l2jmobius.gameserver.model.actor.L2Character;
 | 
			
		||||
import com.l2jmobius.gameserver.model.actor.L2Npc;
 | 
			
		||||
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
 | 
			
		||||
import com.l2jmobius.gameserver.model.holders.SkillHolder;
 | 
			
		||||
@@ -26,6 +28,7 @@ import com.l2jmobius.gameserver.model.instancezone.InstanceWorld;
 | 
			
		||||
import com.l2jmobius.gameserver.model.quest.QuestState;
 | 
			
		||||
import com.l2jmobius.gameserver.model.quest.State;
 | 
			
		||||
import com.l2jmobius.gameserver.model.skills.Skill;
 | 
			
		||||
import com.l2jmobius.gameserver.model.zone.L2ZoneType;
 | 
			
		||||
import com.l2jmobius.gameserver.network.NpcStringId;
 | 
			
		||||
import com.l2jmobius.gameserver.network.serverpackets.ExShowScreenMessage;
 | 
			
		||||
 | 
			
		||||
@@ -46,10 +49,12 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
	// Skill
 | 
			
		||||
	private static final SkillHolder NPC_TREE = new SkillHolder(9579, 1);
 | 
			
		||||
	// Locations
 | 
			
		||||
	private static final Location DARK_KNIGHT_LOC = new Location(209372, 15037, -3729, 0);
 | 
			
		||||
	private static final Location START_LOC = new Location(210705, 13259, -3754);
 | 
			
		||||
	private static final Location EXIT_LOC = new Location(-113647, 246016, -3696);
 | 
			
		||||
	// Instance
 | 
			
		||||
	private static final int TEMPLATE_ID = 241;
 | 
			
		||||
	private static final int ZONE = 33751;
 | 
			
		||||
	
 | 
			
		||||
	class TIWorld extends InstanceWorld
 | 
			
		||||
	{
 | 
			
		||||
@@ -63,6 +68,7 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
		addFirstTalkId(DARIN, ROXXY, BIOTIN, DARK_KNIGHT);
 | 
			
		||||
		addSkillSeeId(MOTHER_TREE);
 | 
			
		||||
		addSpawnId(DARK_KNIGHT);
 | 
			
		||||
		addEnterZoneId(ZONE);
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
@@ -84,13 +90,7 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
				if (qs.isCond(20) && (player.getInstanceId() == world.getInstanceId()))
 | 
			
		||||
				{
 | 
			
		||||
					qs.setCond(21);
 | 
			
		||||
					spawnGroup("dark", world.getInstanceId());
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.GO_OUTSIDE_THE_TEMPLE, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
					final double distance = npc.calculateDistance(player, false, false);
 | 
			
		||||
					if ((distance <= 200))
 | 
			
		||||
					{
 | 
			
		||||
						showOnScreenMsg(player, NpcStringId.A_MYSTERIOUS_DARK_KNIGHT_IS_HERE, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
					}
 | 
			
		||||
					return "30031-03.html";
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
@@ -108,6 +108,8 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
				if (qs.isCond(19))
 | 
			
		||||
				{
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.SPEAK_WITH_ROXXY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
					qs.setMemoState(1);
 | 
			
		||||
					return "33748-03.html";
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
@@ -115,11 +117,19 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
			{
 | 
			
		||||
				qs.setCond(22);
 | 
			
		||||
				{
 | 
			
		||||
					teleportPlayer(player, EXIT_LOC, 0);
 | 
			
		||||
					player.showQuestMovie(75);
 | 
			
		||||
					player.setMovieId(75);
 | 
			
		||||
					player.setIsTeleporting(true, false);
 | 
			
		||||
					startQuestTimer("TELEPORT", 38000, npc, player);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			case "TELEPORT":
 | 
			
		||||
			{
 | 
			
		||||
				teleportPlayer(player, EXIT_LOC, 0);
 | 
			
		||||
				break;
 | 
			
		||||
				
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return htmltext;
 | 
			
		||||
	}
 | 
			
		||||
@@ -127,6 +137,7 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
	@Override
 | 
			
		||||
	public String onTalk(L2Npc npc, L2PcInstance player)
 | 
			
		||||
	{
 | 
			
		||||
		final TIWorld world = (TIWorld) InstanceManager.getInstance().getWorld(npc.getInstanceId());
 | 
			
		||||
		final QuestState qs = player.getQuestState(Q10385_RedThreadOfFate.class.getSimpleName());
 | 
			
		||||
		String htmltext = null;
 | 
			
		||||
		
 | 
			
		||||
@@ -151,6 +162,10 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
							qs.setCond(20);
 | 
			
		||||
							htmltext = "33749-02.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(20))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "33749-03.html";
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
					case BIOTIN:
 | 
			
		||||
@@ -167,10 +182,15 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "33751-02.html";
 | 
			
		||||
						}
 | 
			
		||||
						if (qs.isCond(22))
 | 
			
		||||
						{
 | 
			
		||||
							InstanceManager.getInstance().getInstance(world.getInstanceId()).setDuration(38000);
 | 
			
		||||
							InstanceManager.getInstance().getInstance(world.getInstanceId()).setEmptyDestroyTime(0);
 | 
			
		||||
							world.removeAllowed(player.getObjectId());
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		return htmltext;
 | 
			
		||||
@@ -187,10 +207,14 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
			{
 | 
			
		||||
				case DARIN:
 | 
			
		||||
				{
 | 
			
		||||
					if (qs.isCond(19))
 | 
			
		||||
					if ((qs.isCond(19)) && qs.isMemoState(0))
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33748-01.html";
 | 
			
		||||
					}
 | 
			
		||||
					else if ((qs.isCond(19)) && qs.isMemoState(1))
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33748-04.html";
 | 
			
		||||
					}
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
				case ROXXY:
 | 
			
		||||
@@ -199,6 +223,10 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33749-01.html";
 | 
			
		||||
					}
 | 
			
		||||
					else if (qs.isCond(20))
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33749-03.html";
 | 
			
		||||
					}
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
				case BIOTIN:
 | 
			
		||||
@@ -238,6 +266,25 @@ public class TalkingIsland extends AbstractInstance
 | 
			
		||||
		return null;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public String onEnterZone(L2Character character, L2ZoneType zone)
 | 
			
		||||
	{
 | 
			
		||||
		if (character.isPlayer())
 | 
			
		||||
		{
 | 
			
		||||
			final L2PcInstance player = character.getActingPlayer();
 | 
			
		||||
			final TIWorld world = (TIWorld) InstanceManager.getInstance().getWorld(character.getInstanceId());
 | 
			
		||||
			final QuestState qs = player.getQuestState(Q10385_RedThreadOfFate.class.getSimpleName());
 | 
			
		||||
			if ((qs != null) && qs.isCond(21))
 | 
			
		||||
			{
 | 
			
		||||
				world.dark = addSpawn(DARK_KNIGHT, DARK_KNIGHT_LOC, false, 0, false, world.getInstanceId());
 | 
			
		||||
				world.dark.getAI().setIntention(CtrlIntention.AI_INTENTION_FOLLOW, player);
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.A_MYSTERIOUS_DARK_KNIGHT_IS_HERE, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
			}
 | 
			
		||||
			return super.onEnterZone(character, zone);
 | 
			
		||||
		}
 | 
			
		||||
		return null;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public void onEnterInstance(L2PcInstance player, InstanceWorld world, boolean firstEntrance)
 | 
			
		||||
	{
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/30370-05.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/30370-05.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Nerupa:<br>
 | 
			
		||||
Didn't you say you were off to find Enfeux? Hurry along to the <font color="LEVEL">Valley of Saints</font>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31149-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31149-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Alchemist's Mixing Urn:<br>
 | 
			
		||||
After rummaging through the jar, you found nothing valuable. Go back to the Blacksmith of Flame, Vulcan, through Magic Trader Wesley.
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31519-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31519-03.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Enfeux:<br>
 | 
			
		||||
Return to the <font color="LEVEL">Town of Rune</font> and ask <font color="LEVEL">High Priest Innocentin</font> at Einhasad Temple about the gem.
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										5
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31539-09.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31539-09.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
<html><body>Vulcan, Blacksmith of the Flame:<br>
 | 
			
		||||
You forgot what to do?<br1>
 | 
			
		||||
Go to the <font color="LEVEL">basement floor of the Ivory Tower where all the shops are</font>, and you will see an <font color="LEVEL">Alchemist's Mixing Urn</font>. Put in all the ingredients I gave you and mix them.<br>
 | 
			
		||||
On your way back here, tell <font color="LEVEL">Magic Trader Wesley</font> that I sent you there. Then he will send you back here with his scroll.
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31539-10.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/31539-10.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Vulcan, Blacksmith of the Flame:<br>
 | 
			
		||||
Now that you have what you wanted from me, you will just walk away? Please bury my letter in the <font color="LEVEL">Dwarven Village</font> for my poor wife who was killed by the Earth Wyrm.
 | 
			
		||||
</body></html>
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
<html><body>Heine Water Source:<br>
 | 
			
		||||
Clean-looking water.<br>
 | 
			
		||||
Not sure, if this is the Clearest Water, but try scooping the water.<br>
 | 
			
		||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10385_RedThreadOfFate TP2">"I'll try scooping the water."</button>
 | 
			
		||||
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest Q10385_RedThreadOfFate">"I'll try scooping the water."</button>
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33785-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33785-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>The Altar of Shilen:<br>
 | 
			
		||||
The stone statue of Shilen stands before you, dark and foreboding despite its inanimate nature.
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										4
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33787-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33787-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
<html><body<Deserted Dwarven House:<br>
 | 
			
		||||
Abandoned house at the Dwarven Village, destroyed by the Earth Wyrm.<br>
 | 
			
		||||
Along with Talking Island Village, the Dwarven Village was the most severely damaged by the wakening of the Goddess of Destruction. 
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										4
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33788-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33788-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
<html><body>Pa'agrio Temple:<br>
 | 
			
		||||
Pa'agrio Temple. Its doors are sealed shut. <br>
 | 
			
		||||
The Orcs have now lost their anchor in this vast world...
 | 
			
		||||
</body></html>
 | 
			
		||||
							
								
								
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33789-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								trunk/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/33789-02.html
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
			
		||||
<html><body>Cave of Souls:<br>
 | 
			
		||||
Kamaels were created here before the waking of the Goddess of Destruction. The place is desolate now, with rocks crumbled down.
 | 
			
		||||
</body></html>
 | 
			
		||||
@@ -59,7 +59,6 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
	private static final int SHILEN = 33785;
 | 
			
		||||
	private static final int SOULS = 33789;
 | 
			
		||||
	private static final int MOTHER_TREE = 33786;
 | 
			
		||||
	
 | 
			
		||||
	// Items
 | 
			
		||||
	private static final int MYSTERIOUS_LETTER = 36072;
 | 
			
		||||
	private static final int WATER_GARDEN_OF_EVA = 36066;
 | 
			
		||||
@@ -99,11 +98,12 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
		super(10385, Q10385_RedThreadOfFate.class.getSimpleName(), "Red Thread of Fate");
 | 
			
		||||
		addStartNpc(RAINA);
 | 
			
		||||
		addTalkId(RAINA, MORELYN, LANYA, WATER_SOURCE, LADY_OF_THE_LAKE, NERUPA, ENFEUX, INNOCENTIN, VULCAN, URN, WESLEY, HOUSE, PAAGRIO_TEMPLE, SHILEN, SOULS, MOTHER_TREE);
 | 
			
		||||
		addFirstTalkId(LANYA, HOUSE, PAAGRIO_TEMPLE, SHILEN, SOULS, MOTHER_TREE);
 | 
			
		||||
		addFirstTalkId(LANYA, WATER_SOURCE, HOUSE, PAAGRIO_TEMPLE, SHILEN, SOULS, MOTHER_TREE);
 | 
			
		||||
		addSocialActionSeeId(LANYA);
 | 
			
		||||
		addSkillSeeId(HOUSE, PAAGRIO_TEMPLE, SHILEN, SOULS, MOTHER_TREE);
 | 
			
		||||
		registerQuestItems(MYSTERIOUS_LETTER, WATER_GARDEN_OF_EVA, CLEAREST_WATER, PUREST_SOUL, VULCAN_TRUE_GOLD, VULCAN_PURE_SILVER, VULCAN_BLOOD_FIRE, FIERCEST_FLAME, FONDEST_HEART, SCROLL_OF_ESCAPE_VOA, SCROLL_OF_ESCAPE_FOG, SCROLL_OF_ESCAPE_IT, SCROLL_OF_ESCAPE_DV);
 | 
			
		||||
		addKillId(SHILEN_MESSENGER);
 | 
			
		||||
		addAttackId(SHILEN_MESSENGER);
 | 
			
		||||
		addSpawnId(SHILEN_MESSENGER);
 | 
			
		||||
		addCondNotRace(Race.ERTHEIA, "noRace.html");
 | 
			
		||||
		addCondCompletedQuest(Q10338_SeizeYourDestiny.class.getSimpleName(), "restriction.html");
 | 
			
		||||
@@ -180,16 +180,6 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case "TP2":
 | 
			
		||||
			{
 | 
			
		||||
				if (qs.isCond(5))
 | 
			
		||||
				{
 | 
			
		||||
					qs.setCond(6);
 | 
			
		||||
					player.teleToLocation(WATER_LOC, 0);
 | 
			
		||||
					giveItems(player, WATER_GARDEN_OF_EVA, 1);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case "31745-03.html":
 | 
			
		||||
			{
 | 
			
		||||
				if (qs.isCond(6))
 | 
			
		||||
@@ -227,6 +217,7 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				{
 | 
			
		||||
					qs.setCond(9);
 | 
			
		||||
					giveItems(player, PUREST_SOUL, 1);
 | 
			
		||||
					htmltext = "31519-02.html";
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
@@ -236,6 +227,7 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				{
 | 
			
		||||
					qs.setCond(10);
 | 
			
		||||
					giveItems(player, SCROLL_OF_ESCAPE_FOG, 1);
 | 
			
		||||
					htmltext = "31328-02.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.TRY_USING_THE_TELEPORT_SCROLL_INNOCENTIN_GAVE_YOU_TO_GO_TO_THE_FORGE_OF_THE_GODS, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
@@ -249,6 +241,7 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
					giveItems(player, VULCAN_TRUE_GOLD, 1);
 | 
			
		||||
					giveItems(player, VULCAN_PURE_SILVER, 1);
 | 
			
		||||
					giveItems(player, VULCAN_BLOOD_FIRE, 1);
 | 
			
		||||
					htmltext = "31539-04.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.TRY_USING_THE_TELEPORT_SCROLL_VULCAN_GAVE_YOU_TO_GO_TO_IVORY_TOWER, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
@@ -291,6 +284,7 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
					giveItems(player, SCROLL_OF_ESCAPE_DV, 1);
 | 
			
		||||
					giveItems(player, FIERCEST_FLAME, 1);
 | 
			
		||||
					giveItems(player, FONDEST_HEART, 1);
 | 
			
		||||
					htmltext = "31539-08.html";
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
@@ -311,38 +305,54 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
		{
 | 
			
		||||
			case 14:
 | 
			
		||||
			{
 | 
			
		||||
				castSkill(npc, player, NPC_HOUSE.getSkill());
 | 
			
		||||
				qs.setCond(15);
 | 
			
		||||
				break;
 | 
			
		||||
				if (skill.getId() == NPC_HOUSE.getSkillId())
 | 
			
		||||
				{
 | 
			
		||||
					castSkill(npc, player, NPC_HOUSE.getSkill());
 | 
			
		||||
					qs.setCond(15);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			case 15:
 | 
			
		||||
			{
 | 
			
		||||
				castSkill(npc, player, NPC_PAAGRIO.getSkill());
 | 
			
		||||
				qs.setCond(16);
 | 
			
		||||
				break;
 | 
			
		||||
				if (skill.getId() == NPC_PAAGRIO.getSkillId())
 | 
			
		||||
				{
 | 
			
		||||
					castSkill(npc, player, NPC_PAAGRIO.getSkill());
 | 
			
		||||
					qs.setCond(16);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			case 16:
 | 
			
		||||
			{
 | 
			
		||||
				castSkill(npc, player, NPC_SHILEN.getSkill());
 | 
			
		||||
				addAttackDesire(addSpawn(SHILEN_MESSENGER, npc, true, 0, false), player);
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.YOU_MUST_DEFEAT_SHILEN_S_MESSENGER, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				startQuestTimer("DESPAWN", 10000, npc, player);
 | 
			
		||||
				npc.broadcastPacket(new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getId(), NpcStringId.BRIGHTEST_LIGHT_HOW_DARE_YOU_DESECRATE_THE_ALTAR_OF_SHILEN));
 | 
			
		||||
				qs.setCond(17);
 | 
			
		||||
				break;
 | 
			
		||||
				if (skill.getId() == NPC_SHILEN.getSkillId())
 | 
			
		||||
				{
 | 
			
		||||
					castSkill(npc, player, NPC_SHILEN.getSkill());
 | 
			
		||||
					addAttackDesire(addSpawn(SHILEN_MESSENGER, npc, true, 0, false), player);
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.YOU_MUST_DEFEAT_SHILEN_S_MESSENGER, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
					startQuestTimer("DESPAWN", 10000, npc, player);
 | 
			
		||||
					npc.broadcastPacket(new NpcSay(npc.getObjectId(), ChatType.NPC_GENERAL, npc.getId(), NpcStringId.BRIGHTEST_LIGHT_HOW_DARE_YOU_DESECRATE_THE_ALTAR_OF_SHILEN));
 | 
			
		||||
					qs.setCond(17);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			case 17:
 | 
			
		||||
			{
 | 
			
		||||
				castSkill(npc, player, NPC_SOULS.getSkill());
 | 
			
		||||
				qs.setCond(18);
 | 
			
		||||
				break;
 | 
			
		||||
				if (skill.getId() == NPC_SOULS.getSkillId())
 | 
			
		||||
				{
 | 
			
		||||
					castSkill(npc, player, NPC_SOULS.getSkill());
 | 
			
		||||
					qs.setCond(18);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			case 18:
 | 
			
		||||
			{
 | 
			
		||||
				castSkill(npc, player, NPC_TREE.getSkill());
 | 
			
		||||
				qs.setCond(19);
 | 
			
		||||
				break;
 | 
			
		||||
				if (skill.getId() == NPC_TREE.getSkillId())
 | 
			
		||||
				{
 | 
			
		||||
					castSkill(npc, player, NPC_TREE.getSkill());
 | 
			
		||||
					qs.setCond(19);
 | 
			
		||||
					break;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
				return null;
 | 
			
		||||
		}
 | 
			
		||||
		return null;
 | 
			
		||||
	}
 | 
			
		||||
@@ -424,13 +434,27 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case WATER_SOURCE:
 | 
			
		||||
			{
 | 
			
		||||
				if (qs.isCond(5))
 | 
			
		||||
				{
 | 
			
		||||
					htmltext = "33784-01.html";
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case HOUSE:
 | 
			
		||||
			{
 | 
			
		||||
				if (qs.isCond(14))
 | 
			
		||||
				{
 | 
			
		||||
					htmltext = "33788-01.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.USE_THE_FONDEST_HEART_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				else if (qs.isCond(15))
 | 
			
		||||
				{
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33788-02.html";
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.USE_THE_FONDEST_HEART_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case PAAGRIO_TEMPLE:
 | 
			
		||||
@@ -438,8 +462,14 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				if (qs.isCond(15))
 | 
			
		||||
				{
 | 
			
		||||
					htmltext = "33787-01.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.USE_THE_FIERCEST_FLAME_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				else if (qs.isCond(16))
 | 
			
		||||
				{
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33787-02.html";
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.USE_THE_FIERCEST_FLAME_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case SHILEN:
 | 
			
		||||
@@ -447,8 +477,14 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				if (qs.isCond(16))
 | 
			
		||||
				{
 | 
			
		||||
					htmltext = "33785-01.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.USE_THE_BRIGHTEST_LIGHT_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				else if (qs.isCond(17))
 | 
			
		||||
				{
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33785-02.html";
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.USE_THE_BRIGHTEST_LIGHT_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case SOULS:
 | 
			
		||||
@@ -456,8 +492,14 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
				if (qs.isCond(17))
 | 
			
		||||
				{
 | 
			
		||||
					htmltext = "33789-01.html";
 | 
			
		||||
					showOnScreenMsg(player, NpcStringId.USE_THE_PUREST_SOUL_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				}
 | 
			
		||||
				else if (qs.isCond(18))
 | 
			
		||||
				{
 | 
			
		||||
					{
 | 
			
		||||
						htmltext = "33789-02.html";
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				showOnScreenMsg(player, NpcStringId.USE_THE_PUREST_SOUL_IN_YOUR_INVENTORY, ExShowScreenMessage.TOP_CENTER, 4500);
 | 
			
		||||
				break;
 | 
			
		||||
			}
 | 
			
		||||
			case MOTHER_TREE:
 | 
			
		||||
@@ -526,7 +568,9 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
					{
 | 
			
		||||
						if (qs.isCond(5))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "33784-01.html";
 | 
			
		||||
							qs.setCond(6);
 | 
			
		||||
							player.teleToLocation(WATER_LOC, 0);
 | 
			
		||||
							giveItems(player, WATER_GARDEN_OF_EVA, 1);
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
@@ -544,6 +588,12 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "30370-01.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(8))
 | 
			
		||||
						{
 | 
			
		||||
							{
 | 
			
		||||
								htmltext = "30370-05.html";
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
					case ENFEUX:
 | 
			
		||||
@@ -552,6 +602,12 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31519-01.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(9))
 | 
			
		||||
						{
 | 
			
		||||
							{
 | 
			
		||||
								htmltext = "31519-03.html";
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
					case INNOCENTIN:
 | 
			
		||||
@@ -572,10 +628,18 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31539-01.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(11))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31539-09.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(13))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31539-05.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(14))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31539-10.html";
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
					case URN:
 | 
			
		||||
@@ -584,6 +648,10 @@ public class Q10385_RedThreadOfFate extends Quest
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31149-01.html";
 | 
			
		||||
						}
 | 
			
		||||
						else if (qs.isCond(12))
 | 
			
		||||
						{
 | 
			
		||||
							htmltext = "31149-03.html";
 | 
			
		||||
						}
 | 
			
		||||
						break;
 | 
			
		||||
					}
 | 
			
		||||
					case WESLEY:
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								trunk/dist/game/data/zones/custom_script.xml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								trunk/dist/game/data/zones/custom_script.xml
									
									
									
									
										vendored
									
									
								
							@@ -245,6 +245,18 @@
 | 
			
		||||
		<node X="-114536" Y="257336" />
 | 
			
		||||
		<node X="-114520" Y="257496" />
 | 
			
		||||
	</zone>
 | 
			
		||||
	<zone name="talking_island_dark_knight" id="33751" type="ScriptZone" shape="NPoly" minZ="-3755" maxZ="-3685">
 | 
			
		||||
		<node X="209431" Y="15217" />
 | 
			
		||||
		<node X="209336" Y="15536" />
 | 
			
		||||
		<node X="210171" Y="16373" />
 | 
			
		||||
		<node X="210005" Y="16484" />
 | 
			
		||||
		<node X="207353" Y="13443" />
 | 
			
		||||
		<node X="210664" Y="10363" />
 | 
			
		||||
		<node X="212533" Y="12276" />
 | 
			
		||||
		<node X="213840" Y="13987" />
 | 
			
		||||
		<node X="210597" Y="16835" />
 | 
			
		||||
		<node X="210049" Y="16529" />
 | 
			
		||||
	</zone>
 | 
			
		||||
	<zone name="ye_sagira_ruins_movie_zone" id="10361" type="ScriptZone" shape="NPoly" minZ="-1700" maxZ="-1637">
 | 
			
		||||
		<node X="-115086" Y="230896" />
 | 
			
		||||
		<node X="-115448" Y="230009" />
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user