summaryrefslogblamecommitdiff
path: root/npc/000-0/sailors.txt
blob: 65d06a73bbf84b578bf50297d883f72f8c2c542a (plain) (tree)
1
2
3
4
5
6
7
8
9


                        





                    
               
               
                                                        
               
                     
 
                                                 

        



                               
                         
                           
                                                         
 
                 
                                                
 
                    
                                                                                                                  
                                                        
         
                                                                                   
         



                                                                                                                           


                                                                                              

         
                           
                                  
                        
                                         

         
                          
                                
                          
                                                                                                                                 

         
                                     
                                  

                                                                             
                                                      




                             
                           




                                                               
                                     
                                  
                                                                                                           
         



                                                                                                                            
                                                                   




                                  



                                                                              

                                                                                                   

                            
                                              




                                                                                                         

               
               
                    
                                                      
                                                                                                 

         
                                           
                           



                



































                                                                                                                                                                                                                                                             


                     
                      
             





                                
                                                                  
                                                 


                                            





                                                                                                                                                                                                                                                                                                                
                                                                                                                                                           


                                                                                                                                                                        
                                                                                                                       
                                                                                                                                                   
                                                                                                                                                                                                                                                                                                                                               







                                                                                                                                                                                                                                                                                                                                            
                         

















                         
                                  

                       








                                 
                               





                          
                                   
                           
                               
                             
                              



                                                                                                                                                                                   
                                                                                     


                                                                                                  





                                                                                                                                                               
                                                      
                                          







                                                                                                                     
                                            
                                  
                              
                        
                        
                               


                             

                    
                
                               

                              

          
              
                                                                       



                         

                  
                                                              

        
// TMW2 Script
// Modified by Jesusalva

// Evol scripts.
// Authors:
//    4144
//    Qwerty Dragon
//    Reid
//    Vasily_Makarov
//    Jesusalva
// Description:
//    Starting script of Evol Online, modified for TMW2.
// Translation:
//      FR Translated

000-0,23,19,0	script	Sailors	NPC_SAILORS,6,6,{

OnTouch:
    .@q=getq(General_Narrator);
    if (.@q)
        end;

    //checkclientversion;
    .@lang = requestlang();
    if (.@lang >= 0 && .@lang <= MAX_LANG) Lang = .@lang;

    showavatar 3;
    if ($EVENT$ == "Steam") goto L_FiresOfSteam;

    mesn "Narrator";
    mesc l("You open your eyes. The remants of the salt water in your eyes is not particularly helping you see.");
    mesc l("(Click next button to advance dialogs)"), 3;
    next;
    mesc l("What in the world is happening?! Where in Jesusalva's name are you?!");
    next;
    if (getvaultid()) {
        mesc l("Sometimes, you really wish you could visit new universes without having to pick some sort of role on it.");
        next;
    }
    mesc l("Actually. Who are you again? A headache which doesn't want to pass strikes you.");
    mesc l("You can hear creaking planks and a sail flapping in the storm. A ship?");
    mesc l("You hear shouting directed at you. Sailors from the ship?");
    next;

    showavatar NPC_ORC_MAN;
    setcamnpc "Sailors", -64, -32;
    mesn l("Orc Voice");
    mesq lg("Hey kid! Can you hear me?");
    next;

    showavatar NPC_SILVIO;
    setcamnpc "Sailors", 0, -32;
    mesn l("Human Voice");
    mesq lg("Hear you? How do you even know she can understand you?!", "Hear you? How do you even know he can understand you?!");
    next;

    showavatar NPC_TRITAN_MAN_SAILOR;
    setcamnpc "Sailors", 144, -80;
    mesn l("Tritan Voice");
    mesq l("We speak various languages on this world. Let's try gesturing!");
    mesq l("Hey, you on the dune! Can you hear us?!");
    next;
    restorecam;

    asklanguage(LANG_ON_SEA);

    showavatar NPC_SAILORS;
    setcamnpc;
    mes "";
    mesn;
    mesq lg("Oh, she's still alive!", "Oh, he's still alive!");
    next;
    showavatar NPC_TRITAN_MAN_SAILOR;
    setcamnpc "Sailors", 144, -80;
    mesq lg("This girl needs help, we need to rescue her!", "This boy needs help, we need to rescue him!");
    next;
    mesn;
    mesc l("This is a menu. You can click on the desired option and press \"Send\", and double-clicking should work, too.");
    mes "";
    select
        l("I don't need to be rescued. I'm enjoying myself here."),
        l("Thanks... I guess..."),
        l("(Don't respond)");
    mes "";

    if (@menu == 1) {
        mesn l("Sailor");
        mesq l("What do you mean? Do you at least have a rowboat with you?!");
        next;
        mesn l("Billy Bons");
        // Dying of thirst will set in waaaay sooner than dying of hunger.
        mesq l("We can't let you die of thirst! That wouldn't be cool at all! And I'm very cool!");
        next;
    } else if (@menu == 2) {
        mes ""; // You don't need to thank us!
    } else {
        mesn l("Sailor");
        mesq lg("Oh noes! She fainted! Quick, rescue her!!", "Oh noes! He fainted! Quick, rescue him!!");
        next;
    }
    restorecam;

    showavatar;
    mesn "Narrator";
    mesc l("The sailors take you aboard their ship.");
    mesc l("Click on the NPCs (Non-Player Characters) around you to continue the introduction.");
    next;

    addtimer(20000,"Elmo#sailors::OnSlow");
    warp "000-0-0", 30, 36;

    closedialog;
    close;

L_FiresOfSteam:
    dispbottom l("Welcome to Moubootaur Legends: ##1Fires of Steam##0");
    warp "000-0-1", 26, 28;
    sleep2(25);
    atcommand("@refresh");
    asklanguage(LANG_ON_SEA);
    clear;
    mesn "Narrator";
    mesc l("You wake up in the middle of the night. How did you got here? WERE YOU KIDNAPPED?");
    next;
    mesn "Narrator";
    mesc l("Memory slowly returns to you as you start growing aware of your surroundings. That's right, you are on a ship.");
    next;
    mesn "Narrator";
    mesc l("Andrei Sakar, the legendary Hurnscald Hero, as well as a group of alliance members which include yourself, are heading to the continent of Kolev, where is said to be a legendary town which helped the humans from the second era to survive.");
    next;
    mesn "Narrator";
    mesc l("They were sending food and supplies to the Alliance, but in the past months, there was a deadly silence. Not a single sign of life came from there.");
    next;
    mesn "Narrator";
    mesc l("Hoping for the best, but prepared for the worst, you set off to the legendary continent of Kolev; Your destination: Artis.");
    next;
    clear;
    mesc l("Moubootaur Legends presents..."), 3;
    mes "";
    mesc b(l("        Fires of Steam       ")), 1;
    mesc l("- The Death of Andrei Sakar -"), 1;
    mes "";
    mesc l("An event to prepare for the Steam Release"), 2;
    mes "";
    next;
    mes "";
    mes "";
    mesn strcharinfo(0);
    mesq l("We'll be arriving at Artis by the dawn, where Elora will be waiting for us. I can only hope, that the denizens are okay...");
    next;
    clear;
    GameRules(8 | 4);
    clear;
    closeclientdialog;
OnForceReset:
    freeloop(true);
    while (BaseLevel < 80)
        getexp NextBaseExp, 100;
    freeloop(false);
    setq ShipQuests_Arpan, 5;
    setq General_Narrator, 21;
    consoleinfo "New account: %d (%s)", getcharid(3), getcharip();
    if (array_find($@IPBLIST$, getcharip()) >= 0)
        #TUTORIAL_DONE=true;
    else
        array_push($@IPBLIST$, getcharip());
    if (!#TUTORIAL_DONE) {
        .@acc=any(Mustache, Beard, HeartGlasses, Sunglasses, EyePatch, Shemagh, Monocle, Googles, BurglarMask, BanditMask, Shemagh);
        .@ac2=any(OldTowel, SantaGlobe, RedStocking, LeatherBall, Doll, ZarkorScroll, ThetaBook, AshUrn, RubberDucky, DragonStar, BronzeQuiver, AstralCube, PlushMouboo, PlushMouboo, GraduationAlbum);
        .@hat=any(TopHat, CaptainHat, SmileyCap, BowlerHat, DesertHat, PirateBandana, KnitHat, RightEyePatch, AntlersHat, BunnyEars, AxeHat, PaperBag, ShroomHat, AFKCap, BrimmedFeatherHat, CatEars, Earmuffs, CorsairHat, SailorHat, ChefHat, SkullMask, LeprechaunHat, PrsmHelmet, ImperialCrown, ClericCap);
        .@ha2=any(DarkKnightHelmet, VikingHelmet, TerraniteMask, CenturionHelmet, ChemistHelmet, BullHelmet, DarkHelm, SamuraiHelmet, SamuraiHelmet);
        .@che=any(RedknightArmor, AssassinChest, SaviorArmor, TerraniteArmor, GraduationRobe, GoldenWarlordPlate, RedknightArmor);
        .@pan=any(JeansChaps, LeatherTrousers, AssassinPants, TerranitePants, BromenalPants, ChainmailSkirt, AssassinPants, ChainmailSkirt, AssassinPants);
        .@sho=any(DeepBlackBoots, HeliosBoots, WizardMoccasins, WarlordBoots, TerraniteBoots, AssassinBoots, WitchBoots, RedStockings, DeepBlackBoots, DeepBlackBoots);
        .@nec=any(BarbarianAmulet, GoldenFourLeafAmulet, PlatinumFourLeafAmulet, BarbarianMasterAmulet, MoubooPendant, LifestonePendant, AlvasusPendant, ToothNecklace);
        .@rin=any(GoldenPearlRing, GoldenBlackPearlRing);
        .@glo=any(WarlordGloves, AssassinGloves, TerraniteGloves, ManaGloves, SarabArmlet, LeatherGloves, MinerGloves);
        .@shi=any(EnchantedHerbBag, RentCart, Barrel, MasterBola, PiouBola, AncientShield, BlueKnightShield, SteelShield, DragonShield, SnakeBola);
        .@wpn=any(Setzer, Kitana, Lightsaber, BoneKnife, AncientSword, LongSword, RockKnife, DivineSword, CentaurSpear, Zambacutou, CursedScythe, Halberd, PynRifle, PynGatling, PynShotgun, PynRevolver, Dustynator, ChampionshipBow, BansheeBow, LeaderWand, ImmortalSword, MysticWand, ChampionshipBow, BansheeBow, LeaderWand, MysticWand);
        .@bon=any(Pickaxe, Kanabo, ElficBow, Judgement, ThunderStaff, ReinbooWand, DarkPulsar, Skypiercer, IceGladius, RealBronzeGladius, PurpleBola, KidBola, SilkGloves, ClawPendant, Boots, LuffyxSummerShorts, UglyChristmasSweater, MinerTankTop, ContributorSweater, LinarianSoul, TuxSoul, DeliciousCookie, DarkEggshellHat, Wreath);
        .@pet=any(PiouEgg, BhopEgg, MaggotCocoon, DoggyDog, CattyCat, BlackyCat, Ratte, ForestShroomEgg, FluffyEgg, DuckEgg, BatEgg, MoggunEgg, PinkieCrystal, DragonHorn, TamedSnakeEgg);
        getitem .@acc, 1;
        getitem .@ac2, 1;
        getitem .@hat, 1;
        getitem .@ha2, 1;
        getitem .@che, 1;
        getitem .@pan, 1;
        getitem .@sho, 1;
        getitem .@nec, 1;
        getitem .@rin, 1;
        getitem .@glo, 1;
        getitem .@shi, 1;
        getitem .@wpn, 1;
        getitem .@bon, 1;
        getitem .@pet, 1;
        equip(.@acc);
        equip(.@ac2);
        equip(.@hat);
        equip(.@ha2);
        equip(.@che);
        equip(.@pan);
        equip(.@nec);
        equip(.@rin);
        equip(.@glo);
        equip(.@shi);
        equip(.@wpn);
        Zeny+=rand2(10000, 60000);
    }
    adddefaultskills();
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(AL_DP);
    sk_lvup(TMW2_TRANSMIGRATION);
    sk_lvup(AM_REST);
    sk_lvup(AM_RESURRECTHOMUN);
    sk_lvup(AM_CALLHOMUN);
    sk_lvup(TMW2_CRAFT);
    sk_lvup(TMW2_CRAFT);
    sk_lvup(TMW2_CRAFT);
    sk_lvup(TMW2_CRAFT);
    sk_lvup(TMW2_CRAFT);
    sk_lvup(TMW2_ANCIENTLANGUAGES);
    sk_lvup(TMW2_MANABOMB);
    sk_lvup(TMW2_GROUNDSTRIKE);
    sk_lvup(TMW2_NAPALMBEAT);
    sk_lvup(TMW2_ARROWSHOWER);
    sk_lvup(any(ALL_INCCARRY, TF_STEAL, MC_VENDING, MC_DISCOUNT, MC_OVERCHARGE));
    sk_lvup(any(AC_OWL, SA_DRAGONOLOGY, TMW2_SAGE, CR_TRUST, SM_PROVOKE, ALL_FULL_THROTTLE, SA_FREECAST, TF_BACKSLIDING, NV_TRICKDEAD, MG_FIREWALL, SO_FIREWALK, GC_DARKILLUSION));
    sk_lvup(any(AC_OWL, SA_DRAGONOLOGY, TMW2_SAGE, CR_TRUST, SM_PROVOKE, ALL_FULL_THROTTLE, SA_FREECAST, TF_BACKSLIDING, NV_TRICKDEAD, MG_FIREWALL, SO_FIREWALK, GC_DARKILLUSION));
    sk_lvup(any(TMW2_KALMURK, TMW2_DRAGOKIN, TMW2_LIMERIZER, TMW2_HALHISS));
    sk_lvup(any(TMW2_KALWULF, TMW2_FAIRYKINGDOM, TMW2_FROZENHEART, TMW2_STONEHEART));
    sk_lvup(any(TMW2_KALBOO, TMW2_KALSPIKE, TMW2_CUTEHEART, TMW2_PLANTKINGDOM, TMW2_FAIRYEMPIRE));
    sk_lvup(any(TMW2_FIRSTAID, TMW2_HEALING, TMW2_MAGNUSHEAL, EVOL_AREA_PROVOKE));
    sk_lvup(any(TMW2_FIRSTAID, TMW2_HEALING, TMW2_MAGNUSHEAL, EVOL_AREA_PROVOKE));
    sk_lvup(any(TMW2_FROSTDIVER, TMW2_NAPALMBEAT, TMW2_MAGICSTRIKE, TMW2_METEORSTRIKE, TMW2_FIREARROW, TMW2_BRAWLING, TMW2_FALKONSTRIKE, TMW2_CHARGEDARROW));
    sk_lvup(any(TMW2_FROSTDIVER, TMW2_NAPALMBEAT, TMW2_MAGICSTRIKE, TMW2_METEORSTRIKE, TMW2_FIREARROW, TMW2_BRAWLING, TMW2_FALKONSTRIKE, TMW2_CHARGEDARROW));
    sk_lvup(any(TMW2_FROSTDIVER, TMW2_NAPALMBEAT, TMW2_MAGICSTRIKE, TMW2_METEORSTRIKE, TMW2_FIREARROW, TMW2_BRAWLING, TMW2_FALKONSTRIKE, TMW2_CHARGEDARROW));
    sk_lvup(any(TMW2_FROSTNOVA, TMW2_HOLYLIGHT, TMW2_LIGHTNINGBOLT, TMW2_METEORSHOWER, TMW2_FIREBALL, TMW2_BEARSTRIKE, TMW2_SUPREMEATTACK, SN_SHARPSHOOTING));
    sk_lvup(any(TMW2_FROSTNOVA, TMW2_HOLYLIGHT, TMW2_LIGHTNINGBOLT, TMW2_METEORSHOWER, TMW2_FIREBALL, TMW2_BEARSTRIKE, TMW2_SUPREMEATTACK, SN_SHARPSHOOTING));
    sk_lvup(any(TMW2_NILFHEIM, TMW2_JUDGMENT, TMW2_TEMPEST, TMW2_GAIABREAK, TMW2_ARMAGEDDON, TMW2_ALLINONE, TMW2_GROUNDSTRIKE, TMW2_ARROWSHOWER, SN_WINDWALK));
    sk_lvup(any(TMW2_GDP_MAXPOWER, TMW2_GDP_SPREGEN));
    getitembound GuildCoin, rand2(500), 4;
    getitembound any(StrengthFruit, AgilityFruit, VitalityFruit, IntelligenceFruit, DexterityFruit, LuckFruit), 1, 4;
    getitembound any(StrengthFruit, AgilityFruit, VitalityFruit, IntelligenceFruit, DexterityFruit, LuckFruit), 1, 4;
    getitembound any(SacredBullet, EvilBullet), 400, 4;
    getitembound any(ThornArrow, PoisonArrow, CursedArrow), 400, 4;
    getitembound DeathPenalty, rand2(18), 4;
    getitembound ScentGrenade, rand2(4), 4;
    getitembound InsuranceContract, 1, 4;
    getitembound Wurtzite, 6, 4;
    getitembound MercCard_AndreiSakar, 1, 4;
    getitembound RecipeBook, 1, 1;
    getitembound Bread, 10, 4;
    percentheal 100,100;
    LOCATION$ = "Artis";
	TUT_VAR=gettimetick(2);
    #TUTORIAL_DONE=true;
    #REG_DATE=gettimetick(2);
    TUTORIAL=true;
    CRAFTQUEST=true;
    MPQUEST=true;
    MAGIC_LVL=7;
    savepoint "029-0", 202, 85;
    if (!@forcereset)
        warp "029-0", 202, 85;
    close;

OnForceReset2:
    logmes(sprintf("%s - Reset Forced by System Admin", getcharid(3)));
    #TUTORIAL_DONE=false;
    @forcereset=true;
    goto OnForceReset;

OnInit:
    .sex = G_MALE;
    bindatcmd "sakarfr", "Sailors::OnForceReset2", 100, 99, 1;
    end;
}