// TMW2 Script // Author: // Jesusalva // Description: // Controls access to Frostia. 024-1,93,73,0 script Frostia Guard NPC_ELF,{ // Main Quest Have Precedence if (getq(General_Narrator) == 11) goto L_MainQuest; if (getq(General_Narrator) == 12) goto L_MainQuest2; L_MainLogic: if (BaseLevel < 40) goto L_Unallowed; if (Class == Elven) { slide 93, 69; npctalk3 l("Elves are always allowed inside."); end; } // You have a house inside if (ESTATE_RENTTIME >= gettimetick(2)) { slide 93, 69; npctalk3 l("I don't trust @@s.", get_race()); end; } //.@tax=1001-min(1000, reputation("Frostia")*10); .@tax=501-min(500, reputation("Frostia")*5); mesn; mesc l("The guard eyes you with suspcion."); mesq l("You should not be here. Get moving."); if (Zeny < .@tax) close; next; mesc l("Bribe the guard for @@ GP?", .@tax); if (askyesno() == ASK_YES) { Zeny-=.@tax; closeclientdialog; slide 93, 69; npctalk3 l("Behave yourself."); } close; L_Unallowed: mesn; mesq l("You're not welcome here. Get moving."); close; L_MainQuest: mesc b(l(".:: Main Quest 6-1 ::.")), 3; msObjective(BaseLevel >= 40, l("* @@/@@ Base Level", BaseLevel, 40)); mesc l("* Deliver Nikolai's Letter to Frostia Mayor"), 9; if (BaseLevel < 40) close; next; mesn strcharinfo(0); select l("I have a letter for the Mayor."); mes ""; mesn; mesq l("We don't have a mayor. The independent city-state of Frostia is ruled by a King."); next; mesn; mesq l("King Gelid Frozenheart II rules over all elves and dwarves who live here peacefully, and he also presides the city council."); next; mesn; mesq l("I hate foreigners. They know nothing about us and want to impose their \"ideals\" about democracy and whatever."); next; mesn; mesq l("Anyway, you had a letter to our @@, you meant? Sure thing, I'll let him know at once.", b(l("king"))); setq General_Narrator, 12; close; L_MainQuest2: mesn; mesq l("King Gelid Frozenheart II will have you."); next; mesn; mesq l("His policy is to never read a letter without the sender being present. Of course we checked for poison and traps."); next; mesn; mesq l("Behave yourself, or you'll be executed in the town square mercilessly. You have been warned."); next; closeclientdialog; // Maybe an instance instead? warp "024-16", 30, 52; end; OnInit: .@npcId = getnpcid(.name$); setunitdata(.@npcId, UDT_HEADTOP, WarlordHelmet); setunitdata(.@npcId, UDT_HEADMIDDLE, WarlordPlate); setunitdata(.@npcId, UDT_HEADBOTTOM, NPCEyes); setunitdata(.@npcId, UDT_WEAPON, JeansChaps); setunitdata(.@npcId, UDT_HAIRSTYLE, 2); setunitdata(.@npcId, UDT_HAIRCOLOR, 4); .sex = G_MALE; .distance = 5; end; } // This small script controls if you can visit King Gelid II or not 024-1,97,20,0 script #FrostiaCastle NPC_HIDDEN,1,0,{ end; OnTouch: if (getq(General_Narrator) >= 12) warp "024-16", 30, 52; end; }