// TMW-2 Script // Authors: // Qwerty Dragon and Reid (originals) // Jesusalva // Description: // Dan is a sailor from Nard ship (TODO another Redy? Seriously?) who is afraid // of Pious. // Variables: // ShipQuests_Dan 002-1,32,31,0 script Dan#002-1 NPC_REDY_MAN,{ .@q=getq(ShipQuests_Dan); if (.@q == 1) goto L_Report; if (.@q == 2) goto L_Reward; if (.@q == 3) goto L_Finished; mesn; mesq l("You see these pious around us?"); next; mesq l("They're scary, don't you think so?"); next; menu l("Yeah, they are."), -, l("I am not afraid of Pious."), L_Quest; mes ""; mesn; mesq l("I knew someone would agree with me!"); close; L_Quest: mes ""; mesn; mesq l("Then could you perhaps kill 12 @@ for me?!", getmonsterlink(Piou)); next; menu l("They're too strong for me!"), -, l("Yes, of course. Without a sweat."), L_Continue; mes ""; mesn; mesq l("Oh, please. They're weaker than Maggots. They will only pose a threat if you're unarmed."); close; L_Continue: mes ""; mesn; mesq l("I am counting on you!"); setq ShipQuests_Dan, 1, 0; close; L_Report: mesn; mesq l("You've killed @@/12 @@. Get rid of them!", getq2(ShipQuests_Dan),getmonsterlink(Piou)); close; L_Reward: mesn; mesq l("Woohoo, thank you! Maybe now they'll leave me alone!"); next; mesn; mesq l("Here, take this pair of boots as a reward!"); inventoryplace CreasedBoots, 1; getitem CreasedBoots, 1; setq ShipQuests_Dan, 3, 0; close; L_Finished: mesn; mesq l("It is no use... We are too close to a island, they will keep invading the ship..."); next; mesn; mes l("(shivering) \"Ah, how I am afraid of pious!\""); close; OnInit: .sex = G_MALE; .distance = 5; end; } // TODO this code below is bad and should be entirely rewritten 002-1,0,0,0 script PiouSpwn NPC_HIDDEN,{ function DanCheck { .@t=getq2(ShipQuests_Dan); if (.@t+1 >= 12) setq ShipQuests_Dan, 2, 0; if (.@t+1 < 12) setq ShipQuests_Dan, 1, .@t+1; } OnRespawnPiou1: if (getq(ShipQuests_Dan) == 1) DanCheck(); sleep 59000; areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou1"); end; OnRespawnPiou2: if (getq(ShipQuests_Dan) == 1) DanCheck(); sleep 61000; areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou2"); end; OnRespawnPiou3: if (getq(ShipQuests_Dan) == 1) DanCheck(); sleep 59500; areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou3"); end; OnRespawnPiou4: if (getq(ShipQuests_Dan) == 1) DanCheck(); sleep 61500; areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou4"); end; OnRespawnPiou5: if (getq(ShipQuests_Dan) == 1) DanCheck(); sleep 60000; areamonster(instance_mapname("002-3"), 31, 26, 40, 31, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou4"); end; OnInstanceInit: areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou1"); areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou2"); areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou3"); areamonster(instance_mapname("002-1"), 52, 32, 73, 41, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou4"); areamonster(instance_mapname("002-3"), 31, 26, 40, 31, "Piou", 1002, 1, instance_npcname("PiouSpwn")+"::OnRespawnPiou5"); end; }