// TMW2 script. // Author: // Saulc // Jesusalva // Description: // Luca and Colin assigns player a class. This may end up contradicting races, // so expect core changes! 003-0-1,58,29,0 script Colin NPC_PLAYER,{ mesn; mesq l("I am the Wizard Mages master."); if (!MAGIC_LVL) goto L_NoMagic; if (getskilllv(MAGIC_WARRIOR) && !is_admin()) close; if (getskilllv(WIZARD_MAGE) == 1 && MAGIC_LVL >= 2 && ST_TIER == 0) goto L_Tier2; if (getskilllv(WIZARD_MAGE) == 1 && MAGIC_LVL >= 2 && ST_TIER == 1) mes col("...Where is the recipe for the potion? Ah, I lost it...", 9); // Sanity check if (getskilllv(MG_FIREBALL) >= 1) mesq l("Are you using my skill?"); if (getskilllv(MG_FIREBALL) >= 1) close; // could grant MG_THUNDERSTORM perhaps, oh, I don't care. if (getskilllv(WIZARD_MAGE) == 0) goto L_SignUp; close; L_SignUp: next; mesn; mesq l("You have some magic power. Do you want to join the Wizard Mages? ##BThis cannot be undone##b."); next; mesn; mesq l("We use sheer magic to destroy, explode, burn, freeze, and in overall kill our opponents!"); next; menu l("What do I need to do to join?"), L_JoinReq, l("I'm not interested, sorry."), -; close; L_JoinReq: mesn; mesq l("Ah, nothing too major, as you already have magic."); next; mesn; mesq l("We only require a small fee of 1 @@, or 40 @@", getitemlink(DivineApple), getitemlink(SnakeEgg)); next; switch(select( rif(countitem(DivineApple) >= 1, l("I got the apple.")), rif(countitem(SnakeEgg) >= 40, l("I got the eggs.")), l("I will apply later."))) { case 1: delitem DivineApple, 1; goto L_Tier1Ok; break; case 2: // If player had 40 eggs, and eat 1 - they are clearly cheating. // It will delete all 39 eggs, and when it tries to delete the 40th, // it won't find and will terminate the script. No lame cheating. // Of course, all 39 eggs are gone for and I can't do anything about it. delitem SnakeEgg, 40; goto L_Tier1Ok; break; default: break; } close; L_Tier1Ok: // The last argument is duration: 0 - permanent 1- temporary. If omitted, defaults to 1. skill(MG_FIREBALL,1,0); skill(WIZARD_MAGE,1,0); mes ""; mesn; mesq l("Here, learn the ##BFireball##b. It is on Magical skills tab. You can drag it to the shortcut list. Use it to protect people!"); close; L_NoMagic: next; mesn; mesq l("Your lack of magical power is critical. I dare say, you might never in your life get access to a Mana Stone."); next; mesn; mesq l("Besides the Magic Council, Andrei Sakar have his own Mana Stone, but I doubt he would train the likes of you, or share his Mana Stone."); next; mesn; mesq l("Perhaps, in the city, someone knows rumors about Mana Stones and can teach you. Other than that, you're on your own."); close; // progressbar("", ) // Script will be canceled if character moves :D // So I probably could *try* to reuse TMW-BR Magic Tier 2 Scripts. L_Tier2: next; mesn; mesq l("Wha, your magic power increased! How?! Ah, nevermind. You are eligible to get tier 2!"); next; mesn; mesq l("But whoa, not so fast! You must pass the seven steps of a trial first!"); next; mesn; mesq l("The first trial is simple, I'm not doing anything in special. Bring me 1 @@, or 20 @@ and 20 @@.", getitemlink(DivineApple), getitemlink(SilkCocoon), getitemlink(ChocolateMouboo)); next; switch(select( rif(countitem(DivineApple) >= 1, l("I got the apple.")), rif(countitem(SilkCocoon) >= 20 && countitem(ChocolateMouboo) >= 20, l("I got the silk and chocolate.")), l("I will apply later."))) { case 1: delitem DivineApple, 1; goto L_Tier2Ok; break; case 2: delitem SilkCocoon, 20; delitem ChocolateMouboo, 20; goto L_Tier2Ok; break; default: break; } close; L_Tier2Ok: // The last argument is duration: 0 - permanent 1- temporary. If omitted, defaults to 1. addtoskill(MG_FIREBALL,1,0); getexp 10000, 0; ST_TIER=1; mes ""; mesn; mesq l("Good, good. The skill you got earlier just raised a single level. I'll also impair some experience on you, no biggies."); next; mesn; mesq l("Now, the real challenge will start. You have a lot of raw power, but that doesn't gives you a lot of skills to learn."); next; mesn; mesq l("I can make a nice, simple potion for you. Once you drink it, the raw mana will settle on your body."); next; mesn; mesq l("However, beware! That potion is short-lived, you'll be running against time. Get ready to travel a lot."); next; mesn; mesq l("Come talk to me when you're ready, and we can begin."); close; L_T2_S1: addtoskill(WIZARD_MAGE,1,0); getexp 40000, 0; // Yes, 40k experience points. Waw. close; OnInit: .@npcId = getnpcid(0, .name$); setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); setunitdata(.@npcId, UDT_HEADMIDDLE, SorcererRobe); setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); setunitdata(.@npcId, UDT_WEAPON, DeepBlackBoots); setunitdata(.@npcId, UDT_HAIRSTYLE, 21); setunitdata(.@npcId, UDT_HAIRCOLOR, 20); .sex = G_MALE; .distance = 5; end; }