summaryrefslogblamecommitdiff
path: root/npc/003-0-1/audsbel.txt
blob: 8964202ad3115d6008441614e8d3cddbd4779025 (plain) (tree)
1
2
3
4
5
6
7
8
9
10




                                   
                                                                                                                                                    
 
                  

                                     
 
                                                      


                                                                                                                

                                                           
         
         

                                                                                 

       
          
                                                                                  
                                              


                                                                                 
                                                           

                                           

                    
                                                                       



























                                                                                                                                                 



                                                                                                                                          
                                                   






                                                                                                                                                                         






                                                                                                                                                                   










                                                                                                                                                                                                                                                                               

                  

















                                                                                                                                                                                                                           

                  

                                                                                     
                                                                
                         
                  
                                                 




                        
 







































                                                                                                                                                                                                 

                             



















                                                                                                                                                                       

                                                       



















                                                                                                                                                                  




























                                                                                                                                                                                                                                                                                                                  
                                     



                                                                 

                   

                             





                                                                                                          
                                                                                                                                                                               












                                                                                                                                                                  









                                                               










                                                                                                                                         







                                                                                                                                                            


                                                                                
                                                     










                                                                                                              




                
 
// TMW2 scripts.
// Authors:
//    Jesusalva
// Description:
//    One of the Mana Magic Leaders
//    Planned, there are only the four Mana Wizards: Auldsbel (Tulimshar), Sagratha (Woodlands), Morgan (Candor), Blue Sage (Nivalis), Lalica (LoF).

//    Gives #parum
//    Gives #mkpot
//    TODO: Make dye? Make Lifestone?

003-0-1,81,27,0	script	Auldsbel	NPC_AULDSBEL,{
    mesn l("Auldsbel the Wizard");
    mesq l("Welcome back, Padric!");
    mesq l("Do you believe I've lost my @@? I can't see anything well without that! %%a", getitemlink(Googles));
    if (countitem(Googles))
        mesq l("I'm not interested in yours, by the way.");
    next;
    mesn;
    mesq l("Anyway, I am one of the few Mana Wizard, and I love Transmutation!");
    next;

L_Main:
    select
        rif(MAGIC_LVL, l("What's the difference from a Mana Wizard and a Mage?")),
        l("Who are you? Where are you from?"),
        rif(MAGIC_LVL, l("How do I advance in Mana Magic? How it works?")),
        rif(MAGIC_LVL, l("What do you know about other Mana Magic Professors?")),
        rif(MAGIC_LVL, l("Can you teach me Mana Magic?")),
        l("Do you still need help with your experiments?"),
        l("Actually, I gotta go, see ya!");

    mes "";
    switch (@menu) {
        case 1: // What's the difference from a Mana Wizard and a Mage?
            if (MAGIC_LVL < 2) {
                mesn;
                mesn;
                mesq l("%%4 Haven't you read your Grimorium yet?!");
                next;
                mesn;
                mesq l("%%@ You can get Magic by joining class and subclass, and with some NPCs. These work out-of-box. Easy.");
                next;
                mesn;
                mesq l("And there is the Mana Magic, for the pro %%e You'll waste your life on that, as it have an experience system.");
                next;
                mesn;
                mesq l("%%G Just like normal magic, you need power from the Mana Stone, which is based on your levels, intelligence, and mana.");
                next;
                mesn;
                mesq l("I like Mana Magic the best, as we can both summon creatures as transmutate stuff. %%N");
                next;
            } else {
                mesn;
                mesq l("Well, long story short, we have two magic systems. One works out of box. The later one, is the Mana Magic.");
                next;
                mesn;
                mesq l("Mana Magic is less reliable and have an experience system. It's the most common for summoning and transmutation.");
                next;
                mesn;
                mesq l("I could explain this better, but you are just a noob at magic, if you understand me.");
                next;
            }
            mesn;
            mesq l("To be honest, you should use both. And remember, all Mana Magic skills can be used like they were @sk-commands. %%H");
            next;
            break;
        case 2: // Who are you? Where are you from?
            mesn;
            mesq l("Well, speaking a bit about myself can't hurt. I am a member from the Magic Council, but one day I decided to take a vacations.");
            next;
            mesn;
            mesq l("I moved to Hurnscald, stayed there for over a decade, until Lord Transmogrifier Pontorias the Plaid (May His Shape Reflect His Soul Forever) died.");
            next;
            mesn;
            mesq l("Then I returned to Tulimshar. Now I do research, vote on the Magic Council meetings, and I also teach young mages about Transmutation magic.");
            next;
            break;
        case 3: // How do I advance in Mana Magic? How it works?
            mesn;
            mesq l("Mana Magic works similar to regular magic: You can find it on your skill window, and can drag it to your shortcut list.");
            next;
            mesn;
            mesq l("To get more experience and magic power, you must practice magical spells.  Make sure to vary them; you will learn nothing if you cast the same spell over and over. Also, spells that consume no components seem not to be very instructive in practice.");
            next;
            mesn;
            mesq l("Usually, you can find magic on these buildings, but watch out, there is magic to be found elsewhere, and some items are bound with it!");
            next;
            mesn;
            mesq l("While on normal magic you must take care with all attributes, on mana magic, you usually only need to worry with reagents and intelligence.");
            next;
            mesn;
            mesq l("Also, unlike regular magic which may cause delay before and after, Mana Magic usually only have a cooldown. But it is hard to know how long that cooldown is..."); // We may use addtimer() on one or other spell.
            next;
            break;
        case 4: // What do you know about Sagratha?
            mesn;
            mesq l("Lemme see... Sagratha is often regarded as a kind and rather powerful elf lady mage... who hate people.");
            next;
            mesn;
            mesq l("And I'm not talking only about humans here! But perhaps, if you build a good reputation, she teaches you something.");
            next;
            mesn;
            mesq l("There's also Morgan, who lives in Candor. She is a Redy, and is married with Zitoni. They are great alchemists.");
            next;
            mesn;
            mesq l("By last, there was the Blue Sage, living on Nivalis... I never met him.");
            next;
            mesn;
            mesq l("As you see, you can count the mages with the fingers of one hand. It's not just Mana Magic, either - Magic in overall is almost dead, with almost every Mana Stone on the power of the Monster King.");
            next;
            mesn;
            mesq l("Defeating him would not only stop monster invasions, but it would also bring magic back... And probably another war, over the mana stones. %%S");
            next;
            break;
        // Teaching and helping are bound one to other, to save space on variable e.e
        case 5: // Can you teach me Mana Magic?
        case 6: // Do you still need help with your experiments?
            goto L_Magic;
            break;
        default: // Actually, I gotta go, see ya!
            goodbye;
            closedialog;
            close;
    }
    goto L_Main;

L_Magic:
    .@q=getq(General_Auldsbel);
    switch (.@q) {
    // Help on research to gain his favor
    case 0:
        mesn;
        mesq l("I actually need help. Padric and I were doing some research with catalysts, you see.");
        next;
        mesn;
        mesq l("Now I need 20 @@, 20 @@ and 60 @@ to finish my research. Easy materials, except for the Shadow Herb.", getitemlink(MauveHerb), getitemlink(ShadowHerb), getitemlink(SilkCocoon));
        next;
        mesn;
        mesq l("Shadow Herb only grows on dangerous places, and is mostly found on the Land Of Fire, or underground of very very deep caves.");
        next;
        select
            l("I'll try to find them."),
            l("I actually have them, here.");
        if (@menu == 2) {
            mes "";
            mesn;
            mesq l("Excellent! Let me see...");
            next;
            if (
                countitem(MauveHerb) < 20 ||
                countitem(ShadowHerb) < 20 ||
                countitem(SilkCocoon) < 60)
                    goto L_Lie;
            delitem MauveHerb, 20;
            delitem ShadowHerb, 20;
            delitem SilkCocoon, 60;
            getexp 2500, 0;
            Zeny=Zeny+250;
            setq General_Auldsbel, 1;
            mesn;
            mesq l("Yes, many thanks. This will help me a lot.");
            mesc l("Gained 2500 XP and 250 GP");
        }
        break;
    // Learn #parum
    case 1:
        if (MAGIC_LVL < 1)
            goto L_Magicless;
        mesn;
        mesq l("Hmm, I think I can teach you a basic Mana Skill now. That one is pretty simple.");
        next;
        skill(TMW2_PARUM,1,0);
        setq General_Auldsbel, 2;
        mesn;
        mesq l("This is the @@ skill. It transmutes a single @@ in a @@.", "##B@sk-parum##b", getitemlink(RawLog), getitemlink(MoubooFigurine));
        next;
        mesn;
        mesq l("It may also create some @@ or a @@, with enough skill.", getitemlink(Arrow), getitemlink(WoodenLog));
        next;
        mesn;
        mesq l("So! Please transmute a @@ and bring it to me. You may need to switch with another mana skill, until you are successful.", getitemlink(MoubooFigurine));
        break;
    // Bring the Mouboo figurine back
    case 2:
        mesn;
        mesq l("Have you managed to transmute the @@ I asked for?", getitemlink(MoubooFigurine));
        next;
        if (askyesno() == ASK_YES) {
            if (!countitem(MoubooFigurine)) goto L_Lie;
            if (!MAGIC_EXP) goto L_Lame;
            delitem MoubooFigurine, 1;
            getexp 5000, 0;
            setq General_Auldsbel, 3;
            mesn;
            mesq l("Very well - Congratulations! That was very easy, though, and this one is full of imperfections.");
            mesc l("Gained 5000 XP");
            next;
            mesn;
            mesq l("That skill was only to allow you to practice. Now listen well: Transmutation is ##BNOT##b crafting!");
            next;
            mesn;
            mesq l("Magic is sacred. With transmutation, you can create convenience items, specially reagents for other magic skills.");
            next;
            mesn;
            mesq l("But if you try to create equipment, assuming magic doesn't backfire, YOU WILL BE BANNED from this school, and lose your class. Permanently.");
            next;
            mesn;
            mesq l("This is just a friendly advise. We don't take magic lightly. And you shouldn't, either.");
        }
        break;
    // Help on research to gain his favor
    case 3:
        mesn;
        mesq l("I actually need help. I am a mage, and I'm feeling lazy to get the stuff I need.");
        next;
        mesn;
        mesq l("You don't seem to have anything better to do, anyway.");
        mesq l("Now please bring me @@/2 @@, @@/20 @@, @@/30 @@ and @@/70 @@ so I don't need to leave here and start travelling everywhere...", countitem(IcedBottle), getitemlink(IcedBottle), countitem(Root), getitemlink(Root), countitem(Potatoz), getitemlink(Potatoz), countitem(Moss), getitemlink(Moss));
        next;
        select
            l("I'll try to find them."),
            l("I actually have them, here.");
        if (@menu == 2) {
            mes "";
            mesn;
            mesq l("Excellent! Let me see...");
            next;
            if (
                countitem(IcedBottle)   <  2 ||
                countitem(Root)         < 20 ||
                countitem(Potatoz)      < 30 ||
                countitem(Moss)         < 70)
                    goto L_Lie;
            delitem IcedBottle,  2;
            delitem Root,       20;
            delitem Potatoz,    30;
            delitem Moss,       70;
            getexp 28692, 0;
            Zeny=Zeny+550;
            setq General_Auldsbel, 4;
            mesn;
            mesq l("Yes, many thanks. This will help me a lot.");
        }
        break;
    // Learn #mkpot
    case 4:
        if (MAGIC_LVL < 2)
            goto L_Magicless;
        mesn;
        mesq l("Hmm, I think I can teach you a basic Mana Skill now. This one is more advanced, though.");
        next;
        skill(TMW2_MKPOT,1,0);
        setq General_Auldsbel, 5;
        mesn;
        mesq l("This is the @@ skill. It transmutes @@ @@ and a single @@ in @@.", "##B@sk-mkpot##b", 10, getitemlink(Plushroom), getitemlink(Milk), getitemlink(HastePotion));
        next;
        mesn;
        mesq l("It may fail, and you might end up with something entirely unexpected!");
        next;
        mesn;
        mesq l("Unlike Parum, you can use the skill points you get every time your job level rises. That will lower the mana cost and increase success chances.");
        next;
        mesn;
        mesq l("But please be picky with how you spend job points. They are hard to come by, and I'm not entirely sure you can change it later.");
        next;
        mesn;
        mesq l("Also, job levels get really hard to obtain after a while. The decision is up to you, just be aware there's that possibility.");
        break;
    default:
        mesn;
        mesq l("Uhm, no, not really. Maybe later, who knows?");
        break;
    }
    next;
    goto L_Main;


// Fallbacks
L_Magicless:
    mesn;
    mesq l("Well, you helped me. That's great! One hand washes the other, so, I'm willing to share knowledge with you.");
    next;
    mesn;
    mesq l("But unless you touch a Mana Stone and get stronger magic, that would be as useful as teaching magic to a wall. No offense.");
    next;
    mesn;
    mesq l("So, please, come to me with stronger magic powers. And then, I'll teach you a new magic spell.");
    close;

L_Lie:
    mesn;
    mesq l("Really interesting, how I am NOT seeing the items I asked for...");
    next;
    mesn;
    mesq l("Say, what do you think if I transmuted your head into the missing materials? I can warrant your soul won't return to the Soul Menhir, either!");
    close;

L_Lame:
    setparam(MaxHp, readparam(MaxHp)-50); // I want to see how permanent this is
    setparam(MaxSp, readparam(MaxSp)-25); // I want to see how permanent this is
    //setparam(Karma, readparam(Karma)-1); // testing
    mesn;
    mesq l("%%3 You sadden me. That was so, so lame. I will need to punish you. Sorry. Superior orders. %%S");
    next;
    mesn strcharinfo(0);
    mesq l("%%i What, my maximum life and mana just decreased! Noooo!!");
    next;
    mesn;
    mesq l("%%1 Cheer up, these should go back to normal when you level up. Just don't do that again!");
    // If that is true or not, remains to be checked. Uh... I never used setparam() before! :D
    close;

OnInit:
    .sex=G_MALE;
    .distance=5;
    end;
}