diff options
Diffstat (limited to 'world/map/npc/042-2/tanisha.txt')
-rw-r--r-- | world/map/npc/042-2/tanisha.txt | 347 |
1 files changed, 0 insertions, 347 deletions
diff --git a/world/map/npc/042-2/tanisha.txt b/world/map/npc/042-2/tanisha.txt deleted file mode 100644 index 2bfdf9ee..00000000 --- a/world/map/npc/042-2/tanisha.txt +++ /dev/null @@ -1,347 +0,0 @@ -// This file is part of the Tutorial -// Authors: Jenalya, alastrim -// Cleanup: o11c - -042-2.gat,110,88,0|script|Tanisha|114 -{ - setarray @npc_loc, 110, 88, 4; - callfunc "PCtoNPCRange"; - if (@npc_check) - goto L_Close; - - if (isin("042-2.gat", 98, 84, 106, 89)) - goto L_Fighting; - - callfunc "TutorialState"; - if (@tutorial == 10) goto L_Hasan; - if (@tutorial >= 8) goto L_Tut_Done; - if (@tutorial == 7) goto L_Stats; - if (@tutorial == 6) goto L_Fail; - if (@tutorial == 5) goto L_Maggots; - - mes "[Tanisha]"; - mes "\"Hey! You're up again!\""; - emotion EMOTE_HAPPY; - next; - mes "\"Are you feeling better?\""; - menu - "Yes, thank you.",L_Next, - "Yeah, but all my stuff is gone.",L_Next; - -L_Next: - mes "[Tanisha]"; - mes "\"I'm glad you're feeling better. It was really bad luck what happened to you."; - mes "Hey, I have an idea.\""; - next; - set @tutorial_tmp, 5; - callfunc "SetTutorialMask"; - goto L_Maggots; - -L_Maggots: - mes "[Tanisha]"; - mes "\"There are some maggots eating the goods and I'm supposed to get rid of them."; - mes "But they're so yucky!\""; - next; - mes "\"If you kill them, I'll give you my knife."; - mes "What do you say?\""; - menu - "I guess it's the least I can do.",L_Next1; - -L_Next1: - mes "[Tanisha]"; - mes "\"Wonderful!\""; - // since the check happens here, it is actually possible to have - // more than $@Maggot_MaxHunters in the area at one time - // but that's not a BIG problem - if (getareausers("042-2.gat", 98, 84, 106, 89) >= $@Maggot_MaxHunters) - goto L_Crowded; - next; - goto L_Fight_Again; - -L_Fight_Again: - mes "\"Ok, listen what to do."; - mes "Equip a weapon and kill the maggots.\""; - next; - mes "\"Press ###keyTargetMonster; to focus on a monster. With ###keyTargetAttack; you can focus and start attacking the same time."; - mes "But it also works to click on the monster with your mouse.\""; - next; - mes "\"If you press the ###keyTarget;, you can abort your attack.\""; - next; - mes "\"Maggots aren't aggressive, so they won't harm you until you attack them first. Take them out one by one.\""; - next; - mes "\"Sometimes dead monsters leave some useful things. You can pick them up by pressing ###keyPickup; or clicking on the items with your mouse.\""; - close2; - // The getitem must be in the same place as set @tutorial, 2; - // since it was moved to after L_Fight_Again, add it conditionally - callfunc "TutorialState"; - if (@tutorial == 5) - goto L_GetFightItems; - goto L_ContinueFight; - -L_GetFightItems: - set @tutorial_tmp, 6; - callfunc "SetTutorialMask"; - getitem "Knife", 1; - getitem "SlingShot", 1; - getitem "SlingBullet", 100; - goto L_ContinueFight; - -L_ContinueFight: - set @tutorial_tmp, 6; - callfunc "SetTutorialMask"; - set @Maggot_Kills, 0; - set @time, 0; - if (getareausers("042-2.gat", 98, 84, 106, 89) == 0) - initnpctimer; - warp "042-2.gat", 101, 87; - goto L_Summon; - -L_Summon: - areamonster "042-2.gat", 98, 84, 106, 89, "", 1002, 1, "Tanisha::OnMaggotDeath"; - end; - -L_Stats: - mes "[Tanisha]"; - mes "\"That was great! Like a professional exterminator!\""; - next; - mes "\"And it seems you became stronger and more experienced."; - mes "That means you got some status points which you can use to increase your abilities.\""; - next; - mes "\"Press ###keyWindowStatus; or click the Status button in the bar at the upper right to see your status window. There you can distribute your points on six different properties.\""; - next; - mes "\"My Uncle sitting at the counter knows a spell to help the younglings reset their stats.\""; - next; - mes "\"He also knows of mages with even more powerful reset spells.\""; - next; - mes "\"Some strange wizard lurking around in the Tulimshar Noble Quarter.\""; - next; - goto L_StatsRe; - -L_StatsRe: - mes "\"Strength makes you hit harder and you can carry more weight.\""; - next; - mes "\"Agility increases your attack speed and your ability to dodge attacks.\""; - next; - mes "\"Vitality gives you more hit points and more defense against physical attacks.\""; - next; - mes "\"Intelligence is useful for magic attack and defense."; - mes "But as long as you don't know any magic, you shouldn't use your points on this.\""; - next; - mes "\"Dexterity is needed to hit monsters. It's also very important for the damage if you use a ranged weapon.\""; - next; - mes "\"Luck gives you the chance to do critical hits and lowers the chance to receive a critical hit from your opponent.\""; - next; - mes "\"Think about how you want to play before assigning the points.\""; - next; - mes "\"My Uncle sitting at the counter knows a spell to help the younglings reset their stats.\""; - next; - mes "\"He also knows of mages with even more powerful reset spells.\""; - next; - mes "\"Some strange wizard lurking around in the Tulimshar Noble Quarter.\""; - next; - mes "Tanisha looks at you with wide opened eyes."; - next; - mes "[Tanisha]"; - mes "\"But I doubt he'd do that without a service in return.\""; - callfunc "TutorialState"; - if (@tutorial == 7) - goto L_Money; - goto L_Advice; - -L_Money: - next; - mes "[Tanisha]"; - mes "\"Hey, you are so smart taking out all that yucky maggots for me."; - mes "You can have my pocket money. Here.\""; - set @tutorial_tmp, 8; - callfunc "SetTutorialMask"; - set Zeny, Zeny + 5; - next; - goto L_Advice; - -L_Advice: - mes "\"When you go to Tulimshar, you should see Bernard. He can make a delicious soup!"; - mes "Good luck!\""; - emotion EMOTE_HAPPY; - goto L_Close; - -L_Explain: - menu - "... how to fight?",L_Fight, - "... monsters?",L_Mob, - "... status points?",L_StatsRe, - "... what to do in Tulimshar?",L_Advice, - "... nevermind.",L_Close; - -L_Fight: - mes "[Tanisha]"; - mes "\"Press ###keyTargetMonster; to focus on a monster. With ###keyTargetAttack; you can focus and attack."; - mes "But it also works to click on the monster with your mouse.\""; - next; - mes "\"If you press the ###keyTarget; button, you can abort your attack.\""; - next; - mes "\"Sometimes dead monsters leave some useful things. You can pick them up with pressing ###keyPickup; or clicking on the items with your mouse.\""; - next; - mes "\"If you feel exhausted from battle you can sit down by pressing ###keyBeingSit; to recover faster.\""; - goto L_Close; - -L_Mob: - mes "[Tanisha]"; - mes "\"I don't know much about monsters, I'm just a little girl. But I know a few things."; - mes "There are several types of monsters...Aggressive, Neutral, and Assistants.\""; - next; - mes "\"Aggressive monsters will attack you as soon as they see you.\""; - next; - mes "\"Neutral monsters are peaceful until they get attacked.\""; - next; - mes "\"Assistants are monsters who help each other.\""; - goto L_Close; - -L_Hasan: - mes "[Tanisha]"; - mes "\"Hi there! Is everything alright? Do you have questions?\""; - menu - "A guy named Hasan is being mean.",L_Next3, - "Yes, could you explain again about...",L_Explain, - "No, thanks.",L_Close; - -L_Next3: - mes "[Tanisha]"; - mes "\"Bah, Hasan. He's a jerk. But he's very strong.\""; - next; - mes "\"The only thing he's afraid of are scorpions."; - mes "I'm not sure why, some bad experience when he was a child."; - mes "That was before I was born.\""; - set @tutorial_tmp, 11; - callfunc "SetTutorialMask"; - goto L_Close; - -L_Tut_Done: - mes "[Tanisha]"; - mes "\"These yucky maggots! They're eating our goods!"; - mes "No matter how many of them you kill, they always come back.\""; - mes "She sighs."; - next; - mes "[Tanisha]"; - mes "\"Do you have any questions?\""; - menu - "Yes, could you explain about...", L_Explain, - "No, thanks.", L_Close; - -L_Crowded: - mes "[Tanisha]"; - mes "\"That's great! But..."; - mes "it seems a little crowded in there.\""; - next; - mes "\"Let's wait a short while.\""; - goto L_Close; - -L_Sleep: - warp "042-2.gat", 101, 87; - mes "[Tanisha]"; - mes "\"What are you doing in there?"; - mes "Sleeping?"; - mes "Come back when you're serious.\""; - set @Maggot_Kills, 0; - set @time, 0; - close2; - if (getareausers("042-2.gat", 98, 84, 106, 89) == 0) - goto L_CleanUp; - end; - -L_Fail: - mes "Tanisha seems to be trying hard to supress laughter."; - mes "[Tanisha]"; - mes "\"The maggots defeated you.\""; - next; - mes "She bursts out with laughter."; - mes "[Tanisha]"; - mes "\"Oops, I'm sorry. It's just too funny."; - mes "Do you want to try it again?\""; - menu - "Sure!", L_Next2, - "No, I need a rest.", L_Close; - -L_Next2: - if (getareausers("042-2.gat", 98, 84, 106, 89) >= $@Maggot_MaxHunters) - goto L_Crowded; - goto L_Fight_Again; - -L_Fighting: - message strcharinfo(0), "Tanisha: I believe in you!"; - end; - -OnTimer1000: - setnpctimer 0; - if (getareausers("042-2.gat", 98, 84, 106, 89) == 0) - goto L_CleanUp; - // This is needed because multiple players can be in the area at once - areatimer "042-2.gat", 98, 84, 106, 89, 0, "Tanisha::OnTick"; - end; - -L_CleanUp: - killmonster "042-2.gat", "Tanisha::OnMaggotDeath"; - set $@Maggot_Hunters, 0; - stopnpctimer; - areamonster "042-2.gat", 98, 84, 106, 89, "", 1002, 1, "Tanisha::OnMaggotDeath"; - end; - -OnTick: - set @time, @time + 1; - if (@time > 300) - goto L_Sleep; - if (isdead()) - end; - if (Hp > 20) - end; - heal MaxHp, 0; - message strcharinfo(0), "Tanisha: You're doing good!"; - end; - -OnMaggotDeath: - if (@Maggot_Kills == 1) - message strcharinfo(0), "Tanisha: Aaahhhh... another one! It will crawl up your legs!"; - if (@Maggot_Kills == 2) - message strcharinfo(0), "Tanisha: Ohh... Irrhk... Eeeeww... They just appear from nowhere!"; - if (@Maggot_Kills == 3) - message strcharinfo(0), "Tanisha: Yuck... I think I am getting sick."; - if (isin("042-2.gat", 98, 84, 106, 89)) - set @Maggot_Kills, @Maggot_Kills + 1; - if (@Maggot_Kills < 5) - goto L_Summon; - // else, complete - warp "042-2.gat", 110, 88; - set @tutorial_tmp, 7; - callfunc "SetTutorialMask"; - set @Maggot_Kills, 0; - set @time, 0; - if (getareausers("042-2.gat", 98, 84, 106, 89) == 0) - goto L_CleanUp; - end; - -L_Close: - close; - -OnInit: - set $@Maggot_MaxHunters, 4; - areamonster "042-2.gat", 98, 84, 106, 89, "", 1002, 1, "Tanisha::OnMaggotDeath"; - end; -} -042-2.gat,114,93,0|script|#DoorOutTut2|45,0,0 -{ - end; - -OnTouch: - callfunc "TutorialState"; - if (@tutorial >= 8) - goto L_Warp; - goto L_Block; - -L_Warp: - warp "042-1.gat", 63, 48; - end; - -L_Block: - message strcharinfo(0), "Tanisha: Please come here. I'd like some help!"; - end; -} |