diff options
author | Jesusalva Jesusalva <jesusalva@themanaworld.org> | 2023-07-17 01:48:54 +0000 |
---|---|---|
committer | Jesusalva Jesusalva <jesusalva@themanaworld.org> | 2023-07-17 01:48:54 +0000 |
commit | 5b0a9c8ffdbac30c4ff3981167c7206ca75425c7 (patch) | |
tree | 5a82418c9f0b725fed8d5e5cf0c1fa1a6fe861bc /npc/017-3 | |
parent | cac5c770e7bbb169e9516909dfc0d44afceb1446 (diff) | |
download | serverdata-5b0a9c8ffdbac30c4ff3981167c7206ca75425c7.tar.gz serverdata-5b0a9c8ffdbac30c4ff3981167c7206ca75425c7.tar.bz2 serverdata-5b0a9c8ffdbac30c4ff3981167c7206ca75425c7.tar.xz serverdata-5b0a9c8ffdbac30c4ff3981167c7206ca75425c7.zip |
Jesusalva/00610
Diffstat (limited to 'npc/017-3')
-rw-r--r-- | npc/017-3/gambler.txt | 165 | ||||
-rw-r--r-- | npc/017-3/nico.txt | 302 |
2 files changed, 0 insertions, 467 deletions
diff --git a/npc/017-3/gambler.txt b/npc/017-3/gambler.txt deleted file mode 100644 index 7d5c848..0000000 --- a/npc/017-3/gambler.txt +++ /dev/null @@ -1,165 +0,0 @@ -// TMW2 Scripts -// Author: -// Jesusalva -// Description: -// Gambler: Can you remember the sequence? - -017-3,23,38,0 script Gambler#017-3 NPC_PLAYER,{ - function colorname { - switch (getarg(0)) { - case 1: - return "Green"; break; - case 2: - return "Blue"; break; - case 3: - return "Red"; break; - case 4: - return "Yellow"; break; - case 5: - return "Exit"; break; - default: - return l("ERROR: %d", getarg(0)); - } - } - - goto L_Menu; - -L_Menu: - showavatar NPC_FLOPPED_NOBLEMAN; - mesn; - mesc l("Gambling is for the weak, I offer you a true game!"); - mesc l("You need %d %s. I'll start showing you sequences of colors.", .price, getitemlink(CasinoCoins)); - mesc l("The farther you go on the sequence, the better the payout!"); - next; - menu - rif(countitem(CasinoCoins) >= .price, l("Let's play!")), L_Start, - l("Information"), L_Info, - l("Leave"), -; - close; - -L_Info: - mes ""; - mesc l("Rules:"); - mesc l("A color sequence will be displayed on the avatar frame."); - mesc l("You must then repeat the sequence at the board which will show."); - next; - mesc l("Prizes:"); - mesc l("You'll get %d GP every time you finish the sequence.", .prize); - next; - mesc l("Winning Strike Prizes:"); - mesc l("Every %d sequences, you'll get a %s!", 10, getitemlink(StrangeCoin)); - mesc l("If you get %d sequence, you'll get a %s!", 30, getitemlink(BronzeGift)); - mesc l("If you get %d sequence, you'll get a %s!", 50, getitemlink(SilverGift)); - //mesc l("If you get %d sequence, you'll get a %s!", 50, getitemlink(GoldenGift)); - next; - goto L_Menu; - - -L_Start: - showavatar AVATAR_SEQBOARD; - mesc l("Pay attention to the sequence!"); - next; - delitem CasinoCoins, .price; - deletearray(@sequence); - @streak=0; - -L_Sequence: - // Configure - setnpcdialogtitle l("Memorize the sequence!"); - array_push(@sequence, 1+rand2(4)); - sleep2(1000); - - // Display - freeloop(true); - for (.@i=0;.@i < getarraysize(@sequence);.@i++) { - showavatar 1200+@sequence[.@i]; - sleep2(1200-(@streak*20)); - } - freeloop(false); - - // Request - setnpcdialogtitle l("What was the sequence?"); - showavatar AVATAR_SEQBOARD; - sleep2(500); - - for (.@i=0;.@i < getarraysize(@sequence);.@i++) { - setskin "seqboard"; - select - l("Green"), - l("Blue"), - l("Red"), - l("Yellow"), - l("Exit"); - .@ans=@menu; - setskin ""; - mes ""; - mes l("%s", colorname(.@ans)); - //next; - setnpcdialogtitle strnpcinfo(1); - - // Exit - if (.@ans == 5) - goto L_Close; - - // Wrong reply - if (.@ans != @sequence[.@i]) - goto L_Wrong; - // Correct! - } - mes ""; - showavatar AVATAR_SEQBOARD_WELL; - - // Seems like everything is/was correct - mesn; - mesq l("Congratulations! Everything was correct!"); - Zeny+=.prize; - @streak+=1; - - // Winning Streak - if (@streak % 10 == 0) - getitem StrangeCoin, 1; - if (@streak == 30) - getitem BronzeGift, 1; - if (@streak == 50) - getitem SilverGift, 1; - mesc l("Your current win streak is @@!", @streak); - next; - // Game over - if (@streak == 50) - goto L_Close; - // Otherwise, go ahead - mesn; - mesc l("Continue?"), 1; - next; - if (askyesno() == ASK_YES) - goto L_Sequence; - goto L_Close; - -L_Wrong: - showavatar AVATAR_SEQBOARD_FAIL; - mesn; - mesq l("Oh no... That is wrong! %%3"); - next; - mesn; - mesq l("Better luck next time!"); - close; - -L_Close: - mesn; - mesq l("Thanks for playing!"); - close; - -OnInit: - .@npcId = getnpcid(.name$); - setunitdata(.@npcId, UDT_HEADTOP, TopHat); - setunitdata(.@npcId, UDT_HEADMIDDLE, CreasedShirt); - setunitdata(.@npcId, UDT_HEADBOTTOM, JeansShorts); - - .sex = G_MALE; - .distance = 4; - .price = 5; - .prize = 50; - npcsit; - end; -} - diff --git a/npc/017-3/nico.txt b/npc/017-3/nico.txt deleted file mode 100644 index 19dd79e..0000000 --- a/npc/017-3/nico.txt +++ /dev/null @@ -1,302 +0,0 @@ -// TMW2 scripts. -// Authors: -// Jesusalva -// Description: -// Arcmage Cards Enhancer - -017-3,37,84,0 script Nico Goethe NPC_PLAYER,{ - mesn; - mesq l("My name is Nico Goethe, an %s card player.", "[@@https://arcmage.org|Arcmage@@]"); - next; - mesn; - mesq l("Would love to invite you to a card minigame... But alas, Kenton told me that minigames are a waste of time, and that I should not bother adventurers with it."); - next; - mesn; - mesq l("However, I am still up for trading cards, if you wish."); - next; - goto L_Main; - -L_Main: - select - l("Trade a card"), - l("Evolve a card"), - l("Lets play!"), - l("Bye."); - mes ""; - switch (@menu) { - // Trade Card - case 1: - mesn; - mesq l("Give me a card and select another card of same class. I charge %d GP for simple exchanges.", 5000); - next; - if (Zeny < 5000) - break; - - mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; - .@card = requestitem(); - if (.@card <= 1) break; - - @menuret = 0; - switch (.@card) { - case HeroCard: - case KnightCard: - case ClericCard: - case DruidCard: - case MageCard: - case NinjaCard: - case NatureCard: - case NecromancerCard: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(HeroCard), HeroCard, - getitemname(KnightCard), KnightCard, - getitemname(ClericCard), ClericCard, - getitemname(DruidCard), DruidCard, - getitemname(MageCard), MageCard, - getitemname(NinjaCard), NinjaCard, - getitemname(NatureCard), NatureCard, - getitemname(NecromancerCard), NecromancerCard; - mes ""; - break; - case SpeedCard: - case ReflectCard: - case PowerCard: - case WallCard: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(SpeedCard), SpeedCard, - getitemname(ReflectCard), ReflectCard, - getitemname(PowerCard), PowerCard, - getitemname(WallCard), WallCard; - mes ""; - break; - case HeroCardS: - case KnightCardS: - case ClericCardS: - case DruidCardS: - case MageCardS: - case NinjaCardS: - case NatureCardS: - case NecromancerCardS: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(HeroCardS), HeroCardS, - getitemname(KnightCardS), KnightCardS, - getitemname(ClericCardS), ClericCardS, - getitemname(DruidCardS), DruidCardS, - getitemname(MageCardS), MageCardS, - getitemname(NinjaCardS), NinjaCardS, - getitemname(NatureCardS), NatureCardS, - getitemname(NecromancerCardS), NecromancerCardS; - mes ""; - break; - case SpeedCardS: - case ReflectCardS: - case PowerCardS: - case WallCardS: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(SpeedCardS), SpeedCardS, - getitemname(ReflectCardS), ReflectCardS, - getitemname(PowerCardS), PowerCardS, - getitemname(WallCardS), WallCardS; - mes ""; - break; - case HeroCardX: - case KnightCardX: - case ClericCardX: - case DruidCardX: - case MageCardX: - case NinjaCardX: - case NatureCardX: - case NecromancerCardX: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(HeroCardX), HeroCardX, - getitemname(KnightCardX), KnightCardX, - getitemname(ClericCardX), ClericCardX, - getitemname(DruidCardX), DruidCardX, - getitemname(MageCardX), MageCardX, - getitemname(NinjaCardX), NinjaCardX, - getitemname(NatureCardX), NatureCardX, - getitemname(NecromancerCardX), NecromancerCardX; - mes ""; - break; - case SpeedCardX: - case ReflectCardX: - case PowerCardX: - case WallCardX: - menuint - "Sorry, I don't want to trade it.", 0, - getitemname(SpeedCardX), SpeedCardX, - getitemname(ReflectCardX), ReflectCardX, - getitemname(PowerCardX), PowerCardX, - getitemname(WallCardX), WallCardX; - mes ""; - break; - default: - mesn; - mesq l("Sorry, I only deal with Arcmage cards."); - break; - } - if (@menuret < 1) - break; - Zeny -= 5000; - delitem .@card, 1; - getitem @menuret, 1; - break; - // Evolve Card - case 2: - mesn; - mesq l("Give me %s copies of the same card and %s GP, and I'll improve its tier.", b(l("three")), fnum(25000)); - mesc l("Normal Cards can be upgraded to S-Tier, and S Cards can be upgraded to X-Tier. X-Tier cards cannot be upgraded."); - next; - if (Zeny < 25000) - break; - - mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; - .@card = requestitem(); - if (.@card <= 1) break; - if (countitem(.@card) < 3) { - mesn; - mesq l("You don't have enough cards of this type to upgrade."); - next; - break; - } - switch (.@card) { - case HeroCard: - delitem .@card, 3; Zeny -= 25000; - getitem HeroCardS, 1; - break; - case KnightCard: - delitem .@card, 3; Zeny -= 25000; - getitem KnightCardS, 1; - break; - case ClericCard: - delitem .@card, 3; Zeny -= 25000; - getitem ClericCardS, 1; - break; - case DruidCard: - delitem .@card, 3; Zeny -= 25000; - getitem DruidCardS, 1; - break; - case MageCard: - delitem .@card, 3; Zeny -= 25000; - getitem MageCardS, 1; - break; - case NinjaCard: - delitem .@card, 3; Zeny -= 25000; - getitem NinjaCardS, 1; - break; - case NatureCard: - delitem .@card, 3; Zeny -= 25000; - getitem NatureCardS, 1; - break; - case NecromancerCard: - delitem .@card, 3; Zeny -= 25000; - getitem NecromancerCardS, 1; - break; - case SpeedCard: - delitem .@card, 3; Zeny -= 25000; - getitem SpeedCardS, 1; - break; - case ReflectCard: - delitem .@card, 3; Zeny -= 25000; - getitem ReflectCardS, 1; - break; - case PowerCard: - delitem .@card, 3; Zeny -= 25000; - getitem PowerCardS, 1; - break; - case WallCard: - delitem .@card, 3; Zeny -= 25000; - getitem WallCardS, 1; - break; - - - case HeroCardS: - delitem .@card, 3; Zeny -= 25000; - getitem HeroCardX, 1; - break; - case KnightCardS: - delitem .@card, 3; Zeny -= 25000; - getitem KnightCardX, 1; - break; - case ClericCardS: - delitem .@card, 3; Zeny -= 25000; - getitem ClericCardX, 1; - break; - case DruidCardS: - delitem .@card, 3; Zeny -= 25000; - getitem DruidCardX, 1; - break; - case MageCardS: - delitem .@card, 3; Zeny -= 25000; - getitem MageCardX, 1; - break; - case NinjaCardS: - delitem .@card, 3; Zeny -= 25000; - getitem NinjaCardX, 1; - break; - case NatureCardS: - delitem .@card, 3; Zeny -= 25000; - getitem NatureCardX, 1; - break; - case NecromancerCardS: - delitem .@card, 3; Zeny -= 25000; - getitem NecromancerCardX, 1; - break; - case SpeedCardS: - delitem .@card, 3; Zeny -= 25000; - getitem SpeedCardX, 1; - break; - case ReflectCardS: - delitem .@card, 3; Zeny -= 25000; - getitem ReflectCardX, 1; - break; - case PowerCardS: - delitem .@card, 3; Zeny -= 25000; - getitem PowerCardX, 1; - break; - case WallCardS: - delitem .@card, 3; Zeny -= 25000; - getitem WallCardX, 1; - break; - - default: - mesn; - mesq l("Sorry, I only deal with Arcmage cards."); - break; - } - break; - // TODO: Play minigame - case 3: - mesn; - mesq l("...Are you trying to troll me?"); - next; - break; - // Leave - default: - closeclientdialog; - goodbye; - close; - break; - } - goto L_Main; - -OnInit: - .@npcId = getnpcid(.name$); - setunitdata(.@npcId, UDT_HEADTOP, TopHat); - setunitdata(.@npcId, UDT_HEADMIDDLE, GoldenLightPlatemail); - setunitdata(.@npcId, UDT_HEADBOTTOM, LeatherTrousers); - setunitdata(.@npcId, UDT_WEAPON, ManaGloves); - setunitdata(.@npcId, UDT_HAIRSTYLE, 24); - setunitdata(.@npcId, UDT_HAIRCOLOR, 4); - npcsit; - - .sex = G_MALE; - .distance = 4; - end; - -} - |