// This file is part of the Tutorial // Authors: Jenalya, alastrim // Cleanup: o11c 042-2.gat,37,90,0|script|Tanisha|114,{ if (isin("042-2.gat", 30, 85, 36, 89)) goto L_Fighting; if (FLAGS & FLAG_TUTORIAL_DONE) goto L_Tut_Done; if (tanisha == 4) goto L_Again; if (tanisha == 3) goto L_Stats; if (tanisha == 2) goto L_Fail; if (tanisha == 1) goto L_Maggots; mes "[Tanisha]"; mes "\"Hey! You're up again!\""; emotion EMOTE_HAPPY; next; mes "\"Are you feeling better?\""; next; menu "Yes, thank you.", -, "Yeah, but all my stuff is gone.", -; 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 tanisha, 1; L_Maggots: 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?\""; next; menu "Sure!", -, "That's your job.", L_Close; 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", 30, 85, 36, 89) >= $@Maggot_MaxHunters) goto L_Crowded; next; L_Fight_Again: mes "\"Ok, listen what to do."; mes "Equip the knife and kill the maggots.\""; next; mes "\"Press A to focus on a monster. With X 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 left Shift button, 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 Z or clicking on the items with your mouse.\""; close2; // The getitem must be in the same place as set tanisha, 2; // since it was moved to after L_Fight_Again, add it conditionally if (tanisha == 1) getitem "Knife", 1; set tanisha, 2; set @Maggot_Kills, 0; set @time, 0; if (getareausers("042-2.gat", 30, 85, 36, 89) == 0) initnpctimer; warp "042-2.gat", 33, 87; L_Summon: areamonster "042-2.gat", 30, 85, 36, 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 F2 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; 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 "\"Also I heard rumors about a strange guy lurking around in the desert south of Tulimshar who can help you to forget your abilities!\""; 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.\""; if (tanisha != 3) goto L_Close; 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 Zeny, Zeny + 5; next; L_Advice: mes "\"When you go to Tulimshar, you should see Bernard. He can make a delicious soup!"; mes "Good luck!\""; emotion EMOTE_HAPPY; if (tanisha == 3) set tanisha, 4; goto L_Close; L_Again: mes "[Tanisha]"; mes "\"Hi there! Is everything alright? Do you have questions?\""; next; if (hasan) menu "A guy named Hasan won't let me enter Tulimshar.", L_Hasan, "Yes, could you explain again about...", L_Explain, "No, thanks.", L_Close; menu "Yes, could you explain again about...", L_Explain, "No, thanks.", 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 A to focus on a monster. With X you can focus and attack."; mes "But it also works to click on the monster with your mouse.\""; next; mes "\"If you press the left Shift button, you can abort your attack.\""; next; mes "\"Sometimes dead monsters leave some useful things. You can pick them up with pressing Z or clicking on the items with your mouse.\""; next; mes "\"If you feel exhausted from battle you can sit down by pressing S 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 "\"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.\""; if (hasan == 1) set hasan, 2; 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", 36, 90; 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; if (getareausers("042-2.gat", 30, 85, 36, 89) == 0) goto L_CleanUp; goto L_Close; 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?\""; next; menu "Sure!", -, "No, I need a rest.", L_Close; if (getareausers("042-2.gat", 30, 85, 36, 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", 30, 85, 36, 89) == 0) goto L_CleanUp; // This is needed because multiple players can be in the area at once areatimer "042-2.gat", 30, 85, 36, 89, 0, "Tanisha::OnTick"; end; L_CleanUp: killmonster "042-2.gat", "Tanisha::OnMaggotDeath"; set $@Maggot_Hunters, 0; stopnpctimer; areamonster "042-2.gat", 30, 85, 36, 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", 30, 85, 36, 89)) set @Maggot_Kills, @Maggot_Kills + 1; if (@Maggot_Kills < 5) goto L_Summon; // else, complete warp "042-2.gat", 36, 90; set tanisha, 3; set @Maggot_Kills, 0; set @time, 0; if (getareausers("042-2.gat", 30, 85, 36, 89) == 0) goto L_CleanUp; end; L_Close: set @menu, 0; close; OnInit: set $@Maggot_MaxHunters, 4; areamonster "042-2.gat", 30, 85, 36, 89, "", 1002, 1, "Tanisha::OnMaggotDeath"; }