summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2022-06-02 09:04:26 -0300
committerJesusaves <cpntb1@ymail.com>2022-06-02 09:04:26 -0300
commit0be2180294b8a8962585fb48fcd40f7ac62620d9 (patch)
treece56f0910acbb097956c3136f771833d554a1626
parent491941aff0d11be1c8eb0b2cb6af894be2e9ed90 (diff)
downloadserverdata-0be2180294b8a8962585fb48fcd40f7ac62620d9.tar.gz
serverdata-0be2180294b8a8962585fb48fcd40f7ac62620d9.tar.bz2
serverdata-0be2180294b8a8962585fb48fcd40f7ac62620d9.tar.xz
serverdata-0be2180294b8a8962585fb48fcd40f7ac62620d9.zip
Put Royal Fairy to work and stock her with pure awesomeness.
...Not really.
-rw-r--r--db/re/item_db.conf10
-rw-r--r--npc/017-1/fairy_collector.txt113
2 files changed, 85 insertions, 38 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index 39ff1c95a..9fa46ff5d 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -1583,7 +1583,7 @@ item_db: (
noauction: true
}
Script: <"
- setarray .@r, StrangeCoin, StrangeCoin, CasinoCoins, IronIngot, SaxsoKey, GoldenApple, GoldenRing, GoldOre, PoisonAmmoBox, CursedAmmoBox, MercBoxA, AncientBlueprint, SilverGift;
+ setarray .@r, StrangeCoin, StrangeCoin, CasinoCoins, IronIngot, SaxsoKey, GoldenApple, GoldenRing, GoldOre, Graphene, PoisonAmmoBox, CursedAmmoBox, MercBoxA, AncientBlueprint, HeadHood, SilverGift;
.@n=rand(getarraysize(.@r));
if (.@n > 2)
@@ -1637,13 +1637,13 @@ item_db: (
noauction: true
}
Script: <"
- setarray .@r, StrangeCoin, StrangeCoin, Googles, BlueManaPearl, Bloodstone, LavaManaPearl, DivineApple, BowlerHat, Butterfly, BoneAmmoBox, CrystallizedMaggot, MercBoxDD, MercBoxE, MysteriousFruit, PrismGift;
+ setarray .@r, StrangeCoin, StrangeCoin, StrangeCoin, Googles, BlueManaPearl, BlackPearl, Bloodstone, LavaManaPearl, SaviorBlueprint, DivineApple, BowlerHat, Butterfly, BoneAmmoBox, CrystallizedMaggot, MylarinDust, MercBoxDD, MercBoxE, MysteriousFruit, PrismGift;
.@n=rand(getarraysize(.@r));
- if (.@n > 1)
+ if (.@n > 2)
getitem .@r[.@n], 1;
else
- getitem .@r[.@n], rand(60,80);
+ getitem .@r[.@n], rand(67,88);
">
},
{
@@ -17772,7 +17772,7 @@ item_db: (
{
Id: 7467
AegisName: "SaviorBlueprint"
- Name: "Ssavior Blueprint"
+ Name: "Savior Blueprint"
Type: "IT_USABLE"
Buy: 10000
Sell: 3000
diff --git a/npc/017-1/fairy_collector.txt b/npc/017-1/fairy_collector.txt
index 1d1c0d553..aa90e1e85 100644
--- a/npc/017-1/fairy_collector.txt
+++ b/npc/017-1/fairy_collector.txt
@@ -8,7 +8,6 @@
017-1,135,106,0 script Royal Fairy NPC_FAIRY_B,{
.@n=getq(LoFQuest_Fairy);
- .@q=getq(General_Collector);
mesn;
if (.@n == 0) goto L_Busy;
@@ -57,28 +56,26 @@ L_Main:
mesq l("Are you trying to collect every piece of equipment ingame? Come tell me if you are and I'll give you a collector stamp!");
mesc l("Not every piece of equipment is ingame yet.");
mes "";
- if (!is_staff() && !debug && !$@GM_OVERRIDE)
- close;
select
l("Good bye!"),
- rif(false && !(.@q & COLLECT_CHESTPLATE), l("Chestplates")),
- rif(false && !(.@q & COLLECT_HEADGEAR), l("Headgear")),
- rif(false && !(.@q & COLLECT_PANTS), l("Pants")),
- rif(false && !(.@q & COLLECT_SHOES), l("Shoes")),
- rif(false && !(.@q & COLLECT_NECKLACES), l("Necklaces")),
- rif(false && !(.@q & COLLECT_RINGS), l("Rings")),
- rif(false && !(.@q & COLLECT_ACESSORIES), l("Accessories")),
- rif(false && !(.@q & COLLECT_SCARFS), l("Scarfs")),
- rif(false && !(.@q & COLLECT_GLOVES), l("Gloves")),
- rif(false && !(.@q & COLLECT_SHIELDS), l("Shields")),
- rif(false && !(.@q & COLLECT_1HSWORDS), l("1 Hand Swords")),
- rif(false && !(.@q & COLLECT_2HSWORDS), l("2 Hand Swords")),
- rif(true && !(.@q & COLLECT_BOWS), l("Bows")),
- rif(true && !(.@q & COLLECT_FIREGUNS), l("Fire Staves")),
- rif(true && !(.@q & COLLECT_WANDS), l("Wands")),
- rif(true && !(.@q & COLLECT_QUIVERS), l("Quivers")),
- rif(false && !(.@q & COLLECT_MOUNTS), l("Mounts")),
- rif(false && !(.@q & COLLECT_PETS), l("Pets")),
+ rif(false && !(#COLLECTOR & COLLECT_CHESTPLATE), l("Chestplates")),
+ rif(false && !(#COLLECTOR & COLLECT_HEADGEAR), l("Headgear")),
+ rif(false && !(#COLLECTOR & COLLECT_PANTS), l("Pants")),
+ rif(false && !(#COLLECTOR & COLLECT_SHOES), l("Shoes")),
+ rif(false && !(#COLLECTOR & COLLECT_NECKLACES), l("Necklaces")),
+ rif(false && !(#COLLECTOR & COLLECT_RINGS), l("Rings")),
+ rif(false && !(#COLLECTOR & COLLECT_ACESSORIES), l("Accessories")),
+ rif(false && !(#COLLECTOR & COLLECT_SCARFS), l("Scarfs")),
+ rif(false && !(#COLLECTOR & COLLECT_GLOVES), l("Gloves")),
+ rif(false && !(#COLLECTOR & COLLECT_SHIELDS), l("Shields")),
+ rif(false && !(#COLLECTOR & COLLECT_1HSWORDS), l("1 Hand Swords")),
+ rif(false && !(#COLLECTOR & COLLECT_2HSWORDS), l("2 Hand Swords")),
+ rif(false && !(#COLLECTOR & COLLECT_BOWS), l("Bows")),
+ rif(true && !(#COLLECTOR & COLLECT_FIREGUNS), l("Fire Staves")),
+ rif(true && !(#COLLECTOR & COLLECT_WANDS), l("Wands")),
+ rif(true && !(#COLLECTOR & COLLECT_QUIVERS), l("Quivers")),
+ rif(false && !(#COLLECTOR & COLLECT_MOUNTS), l("Mounts")),
+ rif(false && !(#COLLECTOR & COLLECT_PETS), l("Pets")),
l("Trade stamps");
mes "";
switch (@menu+1) {
@@ -87,7 +84,7 @@ L_Main:
msObjective(countitem(CreasedShirt), "* "+getitemlink(CreasedShirt));
next;
break;
- // Headgear
+ // Headgear (2x bells)
case 2:
msObjective(countitem(CreasedShirt), "* "+getitemlink(CreasedShirt));
next;
@@ -175,8 +172,9 @@ L_Main:
countitem(PynShotgun) &&
countitem(PynRevolver) &&
countitem(Dustynator)) {
- setq1 General_Collector, .@q|COLLECT_FIREGUNS;
- .@q=getq(General_Collector);
+ #COLLECTOR = #COLLECTOR|COLLECT_FIREGUNS;
+ getitembound SilverBell, 1, 1;
+ mesc l("CONGRATULATIONS! You have obtained the %s.", getitemlink(SilverBell)), 3;
}
next;
break;
@@ -195,8 +193,9 @@ L_Main:
countitem(ApprenticeWand) &&
countitem(LeaderWand) &&
countitem(MysticWand)) {
- setq1 General_Collector, .@q|COLLECT_WANDS;
- .@q=getq(General_Collector);
+ #COLLECTOR = #COLLECTOR|COLLECT_WANDS;
+ getitembound SilverBell, 1, 1;
+ mesc l("CONGRATULATIONS! You have obtained the %s.", getitemlink(SilverBell)), 3;
}
next;
break;
@@ -211,8 +210,9 @@ L_Main:
countitem(IronQuiver) &&
countitem(BronzeQuiver) &&
countitem(PlatinumQuiver)) {
- setq1 General_Collector, .@q|COLLECT_QUIVERS;
- .@q=getq(General_Collector);
+ #COLLECTOR = #COLLECTOR|COLLECT_QUIVERS;
+ getitembound SilverBell, 1, 1;
+ mesc l("CONGRATULATIONS! You have obtained the %s.", getitemlink(SilverBell)), 3;
}
next;
break;
@@ -221,19 +221,66 @@ L_Main:
msObjective(countitem(LegendaryTortuga), "* "+getitemlink(LegendaryTortuga));
next;
break;
- // Pets
+ // Pets (2x bells)
case 18:
msObjective(countitem(CreasedShirt), "* "+getitemlink(CreasedShirt));
next;
break;
case 19:
- mesn;
- mesq l("Sorry! Not yet implemented!");
- next;
+ openshop;
+ closeclientdialog;
+ close;
break;
-
}
} while (@menu != 0);
close;
+
+OnInit:
+ .distance=5;
+ tradertype(NST_CUSTOM);
+
+ // Sell: Aethyr Points, Strange Coins, Manapple, Supreme Gift, Housing Letter 3, Blueprints E, SaviorBlueprint, BoxsetEE, Tux/Linarian Soul, SunnyCrystal?, X Cards,
+ // Pets → Strange Coin
+ // You can get up to 18 stamps, but pets and hats give 2x
+ // Plan wisely and accordingly
+ sellitem SunnyCrystal, 12;
+ sellitem SupremeGift, 9;
+ sellitem PrismGift, 8;
+ sellitem MysteriousFruit, 7;
+ sellitem LinarianSoul, 6;
+ sellitem SaviorBlueprint, 5;
+ sellitem TuxSoul, 4;
+ sellitem GoldenGift, 3;
+ sellitem MercBoxEE, 2;
+ sellitem HousingLetterIII, 2;
+ sellitem ReflectCardX, 2;
+ sellitem SpeedCardX, 2;
+ sellitem PowerCardX, 2;
+ sellitem WallCardX, 2;
+ sellitem NecromancerCardX, 1;
+ sellitem HeroCardX, 1;
+ sellitem KnightCardX, 1;
+ sellitem ClericCardX, 1;
+ sellitem DruidCardX, 1;
+ sellitem MageCardX, 1;
+ sellitem NinjaCardX, 1;
+ sellitem NatureCardX, 1;
+ sellitem LightGreenDiamond, 1;
+ end;
+
+/* set currency to be item 828 */
+OnCountFunds:
+ setcurrency(countitem(SilverBell));
+ end;
+
+/* @price is total cost. @points is if we accept two items as currency. */
+OnPayFunds:
+ //dispbottom "Hi: price="+@price+" and points="+@points;
+ if( countitem(SilverBell) < @price )
+ end;
+ delitem SilverBell, @price;
+ purchaseok();
+ end;
+
}