// TMW2/LoF scripts. // Authors: // TMW-LoF Team // Jesusalva // Description: // Dimond's Cove NPCs 017-3,34,38,0 script Dimond NPC_DIMOND,{ showavatar NPC_DIMOND; inspectorQuest(); mesn; mesq l("Welcome to Dimond's Cove!"); next; mesn; mesq l("Please, don't say I got fat. I DON'T WANNA HEAR IT FROM YOU, WAS I CLEAR?"); next; mesn; mesq l("Please, enjoy the show! There are some people upstairs, too."); //mesq l("Talk to the waitress to get some food. Enjoy the show! And you can sleep on the 3rd Floor."); if (BaseLevel < 55) close; mesc l("Also..."); GHQ_Assign(GreenDragon, "Land of Fire"); close; OnInit: .sex=G_FEMALE; .distance=5; end; } 017-3,40,35,0 script Phil NPC_BARD_TRUMP,{ showavatar NPC_BARD_TRUMP; inspectorQuest(); if (season() == SPRING) goto L_Quest; mesn; mesq l("We've finally solved the problem with our instruments!"); next; mesn; mesq l("Now we can play any songs! Hooray!"); close; L_Quest: mesn; mesq l("All spring it is the same thing... The instruments stop working!"); close; OnInit: .sex=G_MALE; .distance=5; end; } 017-3,40,37,0 script Jerry NPC_BARD_DRUMS,{ showavatar NPC_BARD_DRUMS; inspectorQuest(); if (season() == SPRING) goto L_Quest; mesn; mesq l("I finally figured out what was wrong. I must thank everyone who help us."); next; mesn; mesq l("I can't believe it took so long to fix... And worse, next spring it'll be the same story all over again..."); close; L_Quest: mesn; mesq l("All spring it is the same thing... The instruments stop working!"); close; OnInit: .sex=G_MALE; .distance=5; end; } 017-3,42,36,0 script Robert NPC_BARD_HARPS,{ showavatar NPC_BARD_HARPS; inspectorQuest(); if (season() == SPRING) goto L_Quest; mesn; mesq l("We held to our hope and Jerry figured it out."); next; mesn; mesq l("Now we are no longer useless — we can play music again!"); close; L_Quest: mesn; mesq l("All spring it is the same thing... The instruments stop working!"); close; OnInit: .sex=G_MALE; .distance=5; end; } // Some functions governing the music on 1st floor 017-3,32,45,0 script #LetsPlayCove NPC_HIDDEN,2,2,{ OnTouch: if (season() != SPRING) changeplayermusic "3b5.ogg"; // I *hate* this one end; } 017-3,35,68,0 script #NoPlayCove1 NPC_HIDDEN,2,2,{ OnTouch: if (season() != SPRING) changeplayermusic "peace2.ogg"; end; } 017-3,83,28,0 script #NoPlayCove2 NPC_HIDDEN,2,2,{ OnTouch: if (season() != SPRING) changeplayermusic "peace2.ogg"; end; } 017-3,35,35,0 script Shannon NPC_LOF_NOBLEMAN,{ showavatar NPC_LOF_NOBLEMAN; inspectorQuest(); if (EPISODE_WINNER && HEROESHOLD_WINNER && REBIRTH && !countitem(RentCart) && (TELEPORTERS & TP_LILIT)) goto L_Cart; // Meaningless babbler, mostly. mesn; mesq l("I'm a traveling poet, businessman and admirer of Robert Burns, a bard from the mana world."); // FIXME: Robert Burns is from Scotland, not TMW... next; mesn; mesq l("I wonder if he exists on this world too. Because if he doesn't, I could tell many tales about him!"); close; L_Cart: mesn; mesq l("Hey, you got recommendations from both Dustman and the Doctor, and I can see you're clearly more powerful than you look."); next; mesn; mesq l("As such, I offer to rent you a %s. Keep in mind several places do not accept you to come with it, including the Magic Academy east of here, but it allows you to carry more loot with you from the dungeons.", getitemlink(RentCart)); next; // FALLTHROUGH // There's a command shortcut for this, which is unlocked after you acquire // Shannon's trust OnCall: if (!EPISODE_WINNER || !HEROESHOLD_WINNER || !REBIRTH || countitem(RentCart)) end; .@map$ = getmap(); if (.@map$ != "017-3" && !(FLAGS & FLAG_SHANNONTRUST)) end; // Attempt to bypass Lilit's quest restrictions? Unacceptable. if (!(TELEPORTERS & TP_LILIT)) end; // Other restricted maps... Blanket-style rule, though. if (instance_id() >= 0 || compare(.@map$,"001-") || compare(.@map$,"soren") || compare(.@map$,"006-") || compare(.@map$,"016-") || compare(.@map$,"018-5") || compare(.@map$,"032-")) { dispbottom l("Shannon cannot reach you where you are."); end; } mesn; mesq l("I'm charging you %s GP per hour, with a limit of %d hours. The cart is mine, and it won't do if you run away with it. So, for how many hours you want?", fnum(500), 12); input .@input, 0, 12; if (.@input < 1 || Zeny < (.@input * 500)) close; inventoryplace RentCart, 1; FLAGS=FLAGS | FLAG_SHANNONTRUST; Zeny-=@input * 500; rentitem RentCart, .@input * 3600; mesn; mesq l("Here you go! You can use %s if you ever need my company services in the future.", b("@rentcart")); tutmes l("Press the 'C' button in inventory screen to open your cart. The cart must be equipped first."); close; OnInit: bindatcmd "rentcart", "Shannon::OnCall", 0, 80, 0; .sex=G_MALE; .distance=5; end; } 017-3,80,32,0 script Dimonds Cove Story NPC_NO_SPRITE,{ mesn l("The Story of Dimonds Cove"); next; mes l("One day Dimond D. Stone dreamed of her own restaurant."); mes l("Dimond sold her food alone in this spot for some time,"); mes l("longing for the day she would have a building."); mes l("She met an adventurer named Merlin outside of the"); mes l("desert mines one day."); next; mes l("They became friends and Dimond told Merlin about her idea."); mes l("Merlin was a accomplished carpenter and wanted to make a new"); mes l("place in the world. He told Dimond that he would make her"); mes l("restaurant for her. He gathered the tools and after much"); mes l("hard work, Dimonds Cove was built."); next; mes l("At January 2008 - Construction of Dimonds Cove."); close; OnInit: .sex=G_OTHER; .distance=3; end; } /* 017-3,71,30,0 script Inn NPC400,{ mes "Welcome to the Dimonds Cove Inn"; mes "Rooms are 200 gp a night."; mes "Plese check in with Basil."; close; } 017-3,24,27,0 shop Bartender NPC112,539:87,567:250,568:250 017-3,32,34,0 shop Waitress NPC139,519:50,533:55,534:45,562:125,676:100 017-3,85,41,0 shop Blacksmith NPC146,545:5000,529:2,603:1000 017-3,65,41,0 shop General Store#dimond NPC137,586:500,524:800,544:2000,632:500,528:500,735:500 */ 017-3,65,41,0 script Basil NPC_TOMBOY,{ showavatar NPC_TOMBOY; inspectorQuest(); if (!is_night()) goto L_Day; mesn; mesq l("For only 100 GP, you can sleep on the beds of the Land Of Fire."); if (Zeny < 100) close; next; mesn; mesq l("The nanorob-- err, the *magic* will seal all your wounds. You trust Basil, right?"); next; /* select rif(Zeny > 100, l("Yes, please, book me a bed.")), l("Uh... I *just* remembered I have something else to do!"); if (@menu == 2) close; Zeny=Zeny-100; recovery(getcharid(3)); if (rand2(1,3) == 1) sc_start SC_POISON, 60000, 0, 10000; else sc_start SC_ATTHASTE_POTION1, 60000, 5; */ mesn; mesq l("Oh, sorry, I just realized we're overbooked. Please make your reservation with antecedence next time! You can sleep on the streets in the meanwhile."); close; L_Day: mesn; mesq l("You can't sleep here during daytime!"); close; OnInit: .sex=G_MALE; .distance=5; end; }