diff options
-rw-r--r-- | db/quest_db.conf | 4 | ||||
-rw-r--r-- | db/re/item_db.conf | 12 | ||||
-rw-r--r-- | maps/re/012-2.mcache | bin | 168 -> 170 bytes | |||
-rw-r--r-- | npc/003-0-1/_import.txt | 1 | ||||
-rw-r--r-- | npc/003-0-1/maxime.txt | 87 | ||||
-rw-r--r-- | npc/009-2/_import.txt | 1 | ||||
-rw-r--r-- | npc/009-2/ryan.txt | 66 |
7 files changed, 166 insertions, 5 deletions
diff --git a/db/quest_db.conf b/db/quest_db.conf index 006736f43..3b01b035d 100644 --- a/db/quest_db.conf +++ b/db/quest_db.conf @@ -200,6 +200,10 @@ quest_db: ( Id: 73 Name: "HalinarzoQuest_SickWife" }, +{ + Id: 74 + Name: "HalinarzoQuest_LifeDelight" +}, // ID 91 to 110: Hurnscald Quests { diff --git a/db/re/item_db.conf b/db/re/item_db.conf index ab2a4dea6..354dbba90 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -1479,18 +1479,20 @@ item_db: ( Name: "Tonori Delight" Type: "IT_HEALING" Buy: 50 - Sell: 25 - Weight: 4 + Sell: 20 + Weight: 2 Refine: false ViewSprite: 571 BuyingStore: true Delay: 500 UseEffect: "EFFECT_HEAL" Script: <" - @min = 4; - @max = 400; - @delay = 3; + @min = 375; + @max = 910; + @delay = 6; @type = 1; + heal 0, rand(40,180); + sc_start SC_ATTHASTE_POTION1, 10000, 3; doevent "rand_sc_heal::OnUse"; "> }, diff --git a/maps/re/012-2.mcache b/maps/re/012-2.mcache Binary files differindex d597e4c83..abf7306f2 100644 --- a/maps/re/012-2.mcache +++ b/maps/re/012-2.mcache diff --git a/npc/003-0-1/_import.txt b/npc/003-0-1/_import.txt index c877b8a28..573966206 100644 --- a/npc/003-0-1/_import.txt +++ b/npc/003-0-1/_import.txt @@ -3,4 +3,5 @@ "npc/003-0-1/_warps.txt", "npc/003-0-1/colin.txt", "npc/003-0-1/luca.txt", +"npc/003-0-1/maxime.txt", "npc/003-0-1/statues.txt", diff --git a/npc/003-0-1/maxime.txt b/npc/003-0-1/maxime.txt new file mode 100644 index 000000000..ab1d29496 --- /dev/null +++ b/npc/003-0-1/maxime.txt @@ -0,0 +1,87 @@ +// TMW-2 Script. +// Author: +// Saulc +// Jesusalva +// Notes: +// Bakes Tonori Delight + +003-0-1,77,40,0 script Maxime NPC_PLAYER,{ + mesn; + mesq l("Hello. I know the secrets of the legendary @@.", getitemlink(TonoriDelight)); + next; + mesn; + mesq l("I could easily bake one for you, provided you bring me the following:"); + mesc l("@@/12 @@", countitem(MaggotSlime), getitemlink(MaggotSlime)); + mesc l("@@/8 @@", countitem(Plushroom), getitemlink(Plushroom)); + mesc l("@@/4 @@", countitem(MushroomSpores), getitemlink(MushroomSpores)); + mesc l("@@/3 @@", countitem(ScorpionStinger), getitemlink(ScorpionStinger)); + mesc l("@@/2 @@", countitem(RoastedMaggot), getitemlink(RoastedMaggot)); + mesc l("@@/1 @@", countitem(CactusPotion), getitemlink(CactusPotion)); + mesc l("150 GP"); + next; + select + l("I have the items, please bake for me"), + l("Ah, nice to know."); + + mes ""; + + if (@menu == 2) + goto L_Close; + + if ( + countitem(MaggotSlime) < 12 || + countitem(Plushroom) < 8 || + countitem(MushroomSpores) < 4 || + countitem(ScorpionStinger) < 3 || + countitem(RoastedMaggot) < 2 || + countitem(CactusPotion) < 1 || + Zeny < 150 + ) goto L_Missing; + + // 3~7 normaly, 4~10 during Summer + inventoryplace TonoriDelight, 12; + delitem MaggotSlime, 12; + delitem Plushroom, 8; + delitem MushroomSpores, 4; + delitem ScorpionStinger, 3; + delitem RoastedMaggot, 2; + delitem CactusPotion, 1; + getitem TonoriDelight, rand(3,7); + if (season() == SUMMER) { + getitem TonoriDelight, rand(1,3); + mesc l("During summer, more Tonori Delight can be produced."); + } + getexp rand(30, 60), 0; + + mesn; + mesq l("Here you go, fresh from the oven!"); + next; + +L_Close: + closedialog; + goodbye; + close; + +L_Missing: + mesn; + mesq l("You don't have everything I asked you for."); + next; + mesn; + mesq l("I always wonder if I should raise my price to teach bad kids to don't lie."); + close; + +OnInit: + .@npcId = getnpcid(0, .name$); + setunitdata(.@npcId, UDT_HEADTOP, ChefHat); + setunitdata(.@npcId, UDT_HEADMIDDLE, SilkRobe); + setunitdata(.@npcId, UDT_HEADBOTTOM, CottonTrousers); + setunitdata(.@npcId, UDT_WEAPON, AssassinBoots); + setunitdata(.@npcId, UDT_HAIRSTYLE, 26); + setunitdata(.@npcId, UDT_HAIRCOLOR, 2); + + .sex = G_MALE; + .distance = 4; + npcsit; + end; +} + diff --git a/npc/009-2/_import.txt b/npc/009-2/_import.txt index 3d586a4f8..15d6e104b 100644 --- a/npc/009-2/_import.txt +++ b/npc/009-2/_import.txt @@ -1,3 +1,4 @@ // Map 009-2: Halinarzo Library & Bar // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/009-2/_warps.txt", +"npc/009-2/ryan.txt", diff --git a/npc/009-2/ryan.txt b/npc/009-2/ryan.txt new file mode 100644 index 000000000..3b6807381 --- /dev/null +++ b/npc/009-2/ryan.txt @@ -0,0 +1,66 @@ +// TMW-2 Script. +// Author: +// Saulc +// Jesusalva +// Notes: +// Buys Tonori Delight + +009-2,29,57,0 script Ryan NPC_PLAYER,{ + .@q=getq(HalinarzoQuest_LifeDelight); + .@a=(.@q**2)+(.@q*5)+20; + // Maximum: 10'520 Delights + if (.@q > 100) goto L_Complete; + mesn; + mesq l("Ah, I just wanted @@... Yummy, lovely @@...", getitemlink(TonoriDelight), getitemlink(TonoriDelight)); + next; + mesn; + mesq l("If you bring me @@ @@, I'll give you a reward!", .@a, getitemlink(TonoriDelight)); + next; + select + rif(countitem(TonoriDelight > .@a), l("I have everything!")), + l("Ah, not now..."); + mes ""; + if (@menu == 2) + close; + + inventoryplace ChefHat, 1; + + delitem TonoriDelight, .@a; + getexp rand(.@a, .@a*2), 0; + Zeny=Zeny+.@a*21; + setq HalinarzoQuest_LifeDelight, .@q+1; + mesn; + mesq l("Hmmm... Yummy!"); + + // Landmark rewards + // PS. 20 = 520 Delights + .@q=getq(HalinarzoQuest_LifeDelight); + if (.@q == 20) { + getitem ChefHat, 1; + next; + mesn; + mesq l("Ah, you really deserve this @@. Good job!", getitemlink(ChefHat)); + } + + close; + +L_Complete: + mesn; + mesq l("Thanks for the help! Yummy!"); + close; + +OnInit: + .@npcId = getnpcid(0, .name$); + setunitdata(.@npcId, UDT_HEADTOP, ChefHat); + setunitdata(.@npcId, UDT_HEADMIDDLE, SilkRobe); + setunitdata(.@npcId, UDT_HEADBOTTOM, CottonTrousers); + setunitdata(.@npcId, UDT_WEAPON, AssassinBoots); + setunitdata(.@npcId, UDT_HAIRSTYLE, 26); + setunitdata(.@npcId, UDT_HAIRCOLOR, 2); + + .sex = G_MALE; + .distance = 4; + npcsit; + end; +} + |