diff options
author | wushin <pasekei@gmail.com> | 2014-06-23 18:57:52 -0500 |
---|---|---|
committer | wushin <pasekei@gmail.com> | 2014-06-25 10:50:14 -0500 |
commit | 623f98ef8f4efa72d6ff7355517b0ace7235ef72 (patch) | |
tree | 033e71b068509c506ee9be57cdebd0d361c65381 /world/map/npc/042-1/hasan.txt | |
parent | 511dc33bfe89c98251579d72ff7f3fa795e29d15 (diff) | |
download | serverdata-623f98ef8f4efa72d6ff7355517b0ace7235ef72.tar.gz serverdata-623f98ef8f4efa72d6ff7355517b0ace7235ef72.tar.bz2 serverdata-623f98ef8f4efa72d6ff7355517b0ace7235ef72.tar.xz serverdata-623f98ef8f4efa72d6ff7355517b0ace7235ef72.zip |
Starting Area Redux
* Tutorial is a quick funnel
* Exits are obvious and open
* New Side Quests
** Valon's Beast Mastery
** Zegas's Barrels
** Magic Wand
* Some Quests stay open after tutorial is done
* House Maggot & Tame Scorpion added
* Made Magic usable for lowbies with Wand
Diffstat (limited to 'world/map/npc/042-1/hasan.txt')
-rw-r--r-- | world/map/npc/042-1/hasan.txt | 170 |
1 files changed, 75 insertions, 95 deletions
diff --git a/world/map/npc/042-1/hasan.txt b/world/map/npc/042-1/hasan.txt index 25f7ff86..722c8f62 100644 --- a/world/map/npc/042-1/hasan.txt +++ b/world/map/npc/042-1/hasan.txt @@ -1,67 +1,79 @@ // This file is part of the Tutorial // Authors: Jenalya, alastrim +// Hasan should be threatening someone else you come to help +// Going to throw someone off a cliff +// npctalk 2 NPCs Hasan talks about giving someone a short trip to Docks +// They respond by asking play for help +// Hasan tells them to but out of it. -042-1.gat,116,84,0|script|Hasan|189,0,2, +042-1.gat,104,49,0|script|Scared Man|160, +{ + if ((@hasan_complete) && ((@tutorial == 12) || (@tutorial == 14))) + goto L_TutDone; + message strcharinfo(0), "He looks too afraid to say anything."; + end; + +L_TutDone: + message strcharinfo(0), "Thanks. Kaan's been much nicer to me now"; + end; +} +042-1.gat,102,49,0|script|Hasan|189,2,2, { goto L_Main; L_Main: - if (FLAGS & FLAG_TUTORIAL_DONE) - goto L_Tut_Done; - - set @toll, 10000; callfunc "TutorialState"; - // implicitly, $@ScorpionFighter is nonzero - if (@tutorial == 13) - goto L_Thank; if ((getcharid(3) == $@ScorpionFighter) || ($@ScorpionFighter && $@ScorpionFighter != getcharid(3))) goto L_Afraid; - if (@tutorial == 12) + if ((@hasan_complete) && ((@tutorial == 12) || (@tutorial == 14))) + goto L_TutDone; + // implicitly, $@ScorpionFighter is nonzero + if ((@hasan_complete) && (@tutorial == 13)) + goto L_Thank; + if (@tutorial == 12) goto L_Trick; if ((@tutorial == 10) || (@tutorial == 11)) - goto L_Toll; + goto L_FightAgain; + mes "You over hear some people nearby."; mes "[Unfriendly Guy]"; - mes "\"Hey! You can't pass here.\""; - menu - "Why not?",L_Next, - "Who says that?",L_Next; - -L_Next: + mes "\"I told you if you didn't get the money, I'd give you flying lessons, Haha!\""; + next; + mes "[Scared Man]"; + mes "\"But the only person I need protection from is you.\""; + next; + mes "[Unfriendly Guy]"; + mes "\"Thats why the price is so high.\""; + next; + mes "\"Because I'm the toughest person in all of Tulimshar\""; + next; + mes "[Scared Man]"; + mes "\"No, your just a mean bully. Wait till I tell the gaurds about this!\""; + next; mes "[Unfriendly Guy]"; - mes "\"I, Hasan the Mighty, have decided to put a toll on this path.\""; + mes "\"You do that and the next flying lesson will be from the beach cliffs.\""; + next; + mes "[Scared Man]"; + mes "\"No, please don't. *sob*\""; + next; + mes "Sounds like this person is in trouble.\""; + next; set @tutorial_tmp, 10; callfunc "SetTutorialMask"; - next; - goto L_Toll; - -L_Toll: - mes "[Hasan]"; - mes "\"Give me " + @toll + "GP, and I may let you pass.\""; - if (Zeny >= @toll) - goto L_HasToll; - goto L_NoToll; - -L_HasToll: - menu - "Ok, here you go.",L_Pay, - "What? I don't have that much money!",L_NoPay, - "We'll see if you can stop me!",L_Fight; - -L_NoToll: + mes "[Unfriendly Guy]"; + mes "\"What are you looking at?\""; menu - "What? I don't have that much money!",L_NoPay, - "We'll see if you can stop me!",L_Fight; + "What ever you call maggot slime scrapped off a boat after a walk through the sewers.\"", L_Fight, + "Who me? I saw nothing, just passing by.", L_Close; -L_NoPay: +L_FightAgain: mes "[Hasan]"; - mes "\"That's not my problem. You have to stay here then.\""; - next; - mes "This is annoying. Maybe Kaan can help?"; - goto L_Close; + mes "\"Have you come back for a thrashing?\""; + menu + "No.", L_Close, + "Yes.", L_Fight; L_Fight: - mes "He laughs derisively."; mes "[Hasan]"; mes "\"Do you really think you can beat me?\""; mes "He pulls out a nasty looking dagger and stabs it in your direction."; @@ -71,51 +83,38 @@ L_Fight: mes "Maybe Kaan can help?"; goto L_Close; -L_Pay: - if (Zeny < @toll) - goto L_Cheat; - set Zeny, Zeny - @toll; - mes "He grins gloatingly."; - mes "[Hasan]"; - mes "\"Very well. You may pass.\""; - callfunc "TutorialCompleted"; - goto L_Close; - -L_Cheat: - mes "[Hasan]"; - mes "\"Don't you dare try to cheat me!\""; - goto L_Close; - L_Trick: mes "[Hasan]"; - mes "\"Are you going to pay now? " + @toll + "GP, and I may let you pass.\""; + mes "\"Have you come back for another thrashing?\""; menu - "I don't have that much money!",L_NoPay, - "No. (Scratch your head.)",L_ScratchHead; + "No.",L_Close, + "Yes, yours! (Scratch your head.)",L_ScratchHead; L_ScratchHead: if ($@ScorpionFighter) goto L_Wait; + set TUTORIAL, TUTORIAL | $@HasanCompleteBit; set $@ScorpionTimer, 0; set $@ScorpionFighter, getcharid(3); set $@ScorpDeath, PC_DIE_COUNTER; cmdothernpc "#ScorpionTrigger", "HasanSpawn"; - mes "While you're scratching your head, you see Kaan approaching behind Hasan."; + mes "While you're scratching your head, you see Kaan approaching the fence."; close; L_Thank: mes "[Hasan]"; mes "\"You - you saved me!"; - mes "I tried to take your money and you saved me!\""; + mes "I was mean to people, but you still saved me!\""; next; mes "\"Hey, you're a really cool person."; mes "I mean, the way you finished that ghastly scorpion!"; mes "Amazing!\""; next; - mes "\"Let me tell you a secret: Cool persons are allowed to pass for free."; + mes "\"Let me tell you something, I will no longer bully people."; mes "And you can have my Sharp Knife.\""; getitem "SharpKnife", 1; - callfunc "TutorialCompleted"; + set @tutorial_tmp, 14; + callfunc "SetTutorialMask"; next; mes "\"You want to go to the bazaar, right? Shall I tell you how to get there?\""; menu @@ -136,12 +135,14 @@ L_Explore: mes "\"Alright. Take care!\""; goto L_Close; -L_Tut_Done: +L_TutDone: mes "[Hasan]"; - if (BaseLevel >= 40) - mes "\"Welcome to the suburbs of Tulimshar. I wonder what an experienced adventurer like you is doing here.\""; - if (BaseLevel < 40) - mes "\"Bah, nothing interesting is happening here.\""; + mes "\"You didn't see anything. I tell you what I'll be nicer if you don't tell anyone?\""; + menu + "As long as you learned your lesson.", L_TutCont; + +L_TutCont: + mes "\"I have, I promise not to bully people anymore. It's not fun being scared.\""; goto L_Close; L_Wait: @@ -153,15 +154,13 @@ L_Afraid: end; L_Close: - set @toll, 0; close; OnTouch: - if (FLAGS & FLAG_TUTORIAL_DONE) - goto L_Close; + if ((@hasan_complete) && ((@tutorial == 12) || (@tutorial == 14))) + end; goto L_Main; } - 042-1.gat,0,0,0|script|#ScorpionTrigger|35, { end; @@ -170,14 +169,13 @@ OnCommandHasanSpawn: goto L_Summon; L_Summon: - monster "042-1.gat",115,85,"Scorpion",1003,1, "#ScorpionTrigger::OnScorpionDeath"; + monster "042-1.gat",102,49,"WeakScorpion",1046,1, "#ScorpionTrigger::OnScorpionDeath"; initnpctimer; end; L_SummonAgain: - message strcharinfo(0), "Kaan is mad at you for your interference! He walks over to the edge of the cliff and throws a rock on top of your head, then lets another scorpion run just near Hasan!"; + message strcharinfo(0), "Kaan is mad at you for your interference! He walks over to the edge of the fence and throws a rock on top of your head, then lets another scorpion run just near Hasan!"; percentheal -100, 0; - message strcharinfo(0), "Kaan: \"Just go while he is distracted and no one is interfering!\""; goto L_Summon; OnTimer5000: @@ -202,9 +200,7 @@ OnScorpionDeath: goto L_Clean; L_TimeOut: - message strcharinfo(0), "Hasan, with his eyes almost closed, trembling with fear, runs toward the scorpion and stabs it with all his strength! Seems like you took too long and the plan didn't work this time."; - warp "042-1.gat", 114, 85; - message strcharinfo(0), "Hasan: \"Hey you! I told you you cannot pass!\""; + message strcharinfo(0), "Hasan, with his eyes almost closed, trembling with fear, runs toward the scorpion and stabs it with all his strength!"; goto L_Clean; L_MessageDeath: @@ -219,19 +215,3 @@ L_Clean: stopnpctimer; end; } - -042-1.gat,117,85,0|script|#warp|45,0,0, -{ - if (FLAGS & FLAG_TUTORIAL_DONE) - goto L_Tut; - goto L_SendBack; - -L_SendBack: - message strcharinfo(0), "Hasan: I can do this all day."; - warp "042-1.gat", 114, 85; - end; - -L_Tut: - warp "022-1.gat", 49, 82; - end; -} |