diff options
34 files changed, 911 insertions, 57 deletions
diff --git a/db/constants.conf b/db/constants.conf index bcac8ddd4..8ba69372c 100644 --- a/db/constants.conf +++ b/db/constants.conf @@ -1870,6 +1870,7 @@ constants_db: { NPC_KADIYA: 281 NPC_SASHA: 282 NPC_BLANC: 283 + NPC_STOVE: 284 // TMW-BR Non Animated NPCs NPC_SHOPPAKEP: 301 diff --git a/db/craft_db.conf b/db/craft_db.conf index 0c1b1869e..b098336f1 100644 --- a/db/craft_db.conf +++ b/db/craft_db.conf @@ -4403,5 +4403,267 @@ craft_db: ( // Cooking System (ID 200~250, Flag 4) ////////////////////////////////////////////////////////////////////////////// +{ + Id: 200 + Name: "CraftPepperoniPizza" + Flag: 4 + ReturnCode: 2300 + SourceItems: + ( + { + TortugaTongue: 1 + Bread: 1 + Cheese: 1 + Tomato: 1 + Fungus: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 201 + Name: "CraftCaramelApple" + Flag: 4 + ReturnCode: 2301 + SourceItems: + ( + { + RedApple: 1 + Honey: 1 + HardSpike: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 202 + Name: "CraftCarpSandwich" + Flag: 4 + ReturnCode: 2302 + SourceItems: + ( + { + GrassCarp: 1 + Bread: 1 + Cheese: 1 + LettuceLeaf: 1 + Root: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 203 + Name: "CraftShellSandwich" + Flag: 4 + ReturnCode: 2303 + SourceItems: + ( + { + TortugaShellFragment: 1 + Bread: 1 + Cheese: 1 + LettuceLeaf: 1 + Root: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 204 + Name: "CraftChickenSandwich" + Flag: 4 + ReturnCode: 2304 + SourceItems: + ( + { + ChickenLeg: 1 + Bread: 1 + Cheese: 1 + LettuceLeaf: 1 + Root: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 205 + Name: "CraftSushi" + Flag: 4 + ReturnCode: 2305 + SourceItems: + ( + { + Trout: 1 + CommonCarp: 1 + GrassCarp: 1 + Roach: 1 + Tench: 1 + Aquada: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 206 + Name: "CraftSteakAndEggs" + Flag: 4 + ReturnCode: 2306 + SourceItems: + ( + { + MoubooSteak: 2 + BlackMambaEgg: 2 + SmallMushroom: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 207 + Name: "CraftFruitSalad" + Flag: 4 + ReturnCode: 2307 + SourceItems: + ( + { + Manana: 1 + RedApple: 1 + Orange: 1 + Pear: 1 + NPCEyes: 1 + NPCEyes: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 208 + Name: "CraftPoisonedDish" + Flag: 4 + ReturnCode: 2308 + SourceItems: + ( + { + BatWing: 1 + Moss: 1 + PurpleBlobime: 1 + PinkBlobime: 1 + SeaDrops: 1 + ChocolateBiscuit: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 209 + Name: "CraftZombieNachos" + Flag: 4 + ReturnCode: 2309 + SourceItems: + ( + { + Cheese: 1 + GambogeHerb: 1 + Flour: 1 + Dragonfruit: 1 + SkullBloodyMug: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, +/****************************************************************************/ +{ + Id: 210 + Name: "CraftPancake" + Flag: 4 + ReturnCode: 2310 + SourceItems: + ( + { + MountainSnakeEgg: 1 + Flour: 1 + Milk: 1 + Cheese: 1 + Curshroom: 1 + }, + ) + CreateItems: + ( + { + HalfEggshell: 1 + }, + ) + Priority: 10 +}, /****************************************************************************/ ) diff --git a/db/re/item_db.conf b/db/re/item_db.conf index 1d0bdf4f7..b37fd2b93 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -158,7 +158,8 @@ item_db: ( 1300 1799 = Chest Armors 1800 1999 = Boots 2000 2199 = Gloves -2200 2499 = Pants +2200 2299 = Pants +2300 2499 = Cooked Food 2500 2699 = Rings 2700 2899 = Shields 2900 3199 = Head Gears @@ -1402,19 +1403,20 @@ item_db: ( }, { Id: 574 - AegisName: "ZombieNachos" - Name: "Zombie Nachos" + AegisName: "Tomato" + Name: "Tomato" Type: "IT_HEALING" Buy: 50 Sell: 25 - Weight: 4 + Weight: 5 Refine: false Delay: 500 UseEffect: "EFFECT_HEAL" Script: <" - callfunc("ItHeal2", 2, 1); + callfunc("ItHeal", 15, 75); "> }, +// 575-582 free { Id: 583 AegisName: "ChocolateBiscuit" @@ -3384,8 +3386,8 @@ item_db: ( AegisName: "TortugaShellFragment" Name: "Tortuga Shell Fragment" Type: "IT_ETC" - Buy: 25 - Sell: 8 + Buy: 250 + Sell: 80 Weight: 25 Refine: false }, @@ -3444,8 +3446,8 @@ item_db: ( AegisName: "TortugaShell" Name: "Tortuga Shell" Type: "IT_ETC" - Buy: 90 - Sell: 30 + Buy: 900 + Sell: 300 Weight: 95 Refine: false }, @@ -3454,8 +3456,8 @@ item_db: ( AegisName: "TortugaTongue" Name: "Tortuga Tongue" Type: "IT_ETC" - Buy: 18 - Sell: 6 + Buy: 180 + Sell: 60 Weight: 2 Refine: false }, @@ -3530,17 +3532,13 @@ item_db: ( }, { Id: 717 - AegisName: "PoisonedDish" - Name: "Poisoned Dish" + AegisName: "Trout" + Name: "Trout" Type: "IT_ETC" - Buy: 999999 - Sell: 1 - Weight: 20 + Buy: 114 + Sell: 57 + Weight: 150 Refine: false - Trade: { - nodrop: true - noselltonpc: true - } }, { Id: 718 @@ -4523,11 +4521,15 @@ item_db: ( Weight: 20 Refine: false }, -// ID 816 is free { Id: 816 - AegisName: "Item816" - Name: "Item 816" + AegisName: "Flour" + Name: "Flour" + Type: "IT_ETC" + Buy: 250 + Sell: 100 + Weight: 80 + Refine: false }, { Id: 817 @@ -8791,6 +8793,203 @@ item_db: ( "> }, +// Cooked Food +{ + Id: 2300 + AegisName: "PepperoniPizza" + Name: "Pepperoni Pizza" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bAllStats,2; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2300; + "> +}, +{ + Id: 2301 + AegisName: "CaramelApple" + Name: "Caramel Apple" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bShortWeaponDamageReturn, 5; + bonus bLongWeaponDamageReturn, 5; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2301; + "> +}, +{ + Id: 2302 + AegisName: "CarpSandwich" + Name: "Carp Sandwich" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bPerfectHitRate, 10; + bonus bHit, 5; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2302; + "> +}, +{ + Id: 2303 + AegisName: "ShellSandwich" + Name: "Shell Sandwich" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bSplashAddRange, 1; // Stackable! + bonus bAtkRate, -15; // The canon value is -20% + "> + OnUnequipScript: <" + callfunc "item_consumption", 2303; + "> +}, +{ + Id: 2304 + AegisName: "ChickenSandwich" + Name: "Chicken Sandwich" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus2 bHPRegenRate, 40, 2000; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2304; + "> +}, +{ + Id: 2305 + AegisName: "Sushi" + Name: "Sushi" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bDoubleAddRate, 10; + bonus bHit, 25; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2305; + "> +}, +{ + Id: 2306 + AegisName: "SteakAndEggs" + Name: "Steak and Eggs" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bNoWeaponDamage, 5; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2306; + "> +}, +{ + Id: 2307 + AegisName: "FruitSalad" + Name: "FruitSalad" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bRestartFullRecover,100; + bonus2 bSPRegenRate, 8, 2000; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2307; + "> +}, +{ + Id: 2308 + AegisName: "PoisonedDish" + Name: "Poisoned Dish" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bMaxHPrate, -35; + bonus2 bGetZenyNum, 15, 100; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2308; + "> +}, +{ + Id: 2309 + AegisName: "ZombieNachos" + Name: "Zombie Nachos" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bAddMonsterDropChainItem, ITMCHAIN_ORE; // FIXME: Not thematic + "> + OnUnequipScript: <" + callfunc "item_consumption", 2309; + "> +}, +{ + Id: 2310 + AegisName: "Pancake" + Name: "Pancake" + Type: "IT_ARMOR" + Buy: 999999 + Sell: 1 + Weight: 1 + Loc: "EQP_SHADOW_ACC_L" + Refine: false + Script: <" + bonus bCriticalDef, 5; + bonus bNearAtkDef, 5; + bonus bLuk, 3; + "> + OnUnequipScript: <" + callfunc "item_consumption", 2310; + "> +}, + // Rings { Id: 2500 @@ -19617,15 +19816,51 @@ item_db: ( Refine: false Delay: 500 Script: <" - @min = 20; - @max = 20; - @delay = 60; - @type = SC_INCFLEE; - doevent "inc_sc_bonus::OnUse"; + callfunc("SC_Bonus", 60, SC_INCFLEE, 20); + "> +}, +{ + Id: 8053 + AegisName: "ChocolateDonut" + Name: "Chocolate Donut" + Type: "IT_USABLE" + Buy: 10000 + Sell: 100 + Weight: 20 + Refine: false + Delay: 500 + Script: <" + callfunc("SC_Bonus", 60, SC_INCHIT, 20); + "> +}, +{ + Id: 8054 + AegisName: "SparklyChocolateDonut" + Name: "Sparkly Chocolate Donut" + Type: "IT_USABLE" + Buy: 10000 + Sell: 100 + Weight: 24 + Refine: false + Delay: 500 + Script: <" + callfunc("SC_Bonus", 60, SC_FOOD_CRITICALSUCCESSVALUE, 10); // 10/10=1 + "> +}, +{ + Id: 8055 + AegisName: "MintDonut" + Name: "Mint Donut" + Type: "IT_USABLE" + Buy: 10000 + Sell: 100 + Weight: 20 + Refine: false + Delay: 500 + Script: <" + callfunc("SC_Bonus", 60, SC_WALKSPEED, 110); "> }, -// 8053 Chocolate Donut -// 8054 Sparkly Chocolate Donut // 8055 Mint Donut // 8056 Sparkly Mint Donut { @@ -19639,11 +19874,7 @@ item_db: ( Refine: false Delay: 500 Script: <" - @min = 5; - @max = 5; - @delay = 150; - @type = SC_INCMSPRATE; - doevent "inc_sc_bonus::OnUse"; + callfunc("SC_Bonus", 150, SC_INCMSPRATE, 5); "> }, { @@ -19657,11 +19888,7 @@ item_db: ( Refine: false Delay: 500 Script: <" - @min = 5; - @max = 5; - @delay = 150; - @type = SC_INCMHPRATE; - doevent "inc_sc_bonus::OnUse"; + callfunc("SC_Bonus", 150, SC_INCMHPRATE, 5); "> }, diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf index ad9dfa9a1..199f72619 100644 --- a/db/re/mob_db.conf +++ b/db/re/mob_db.conf @@ -231,8 +231,8 @@ mob_db: ( Moss: 2500 LettuceLeaf: 1800 TortugaShellFragment: 1780 - TortugaTongue: 1000 Fungus: 800 + TortugaTongue: 700 Aquada: 600 SeaDrops: 500 TortugaShell: 400 @@ -2423,6 +2423,7 @@ mob_db: ( Chagashroom: 350 HardSpike: 200 ArtichokeHerb: 150 + Pear: 60 Emerald: 3 ForestShroomHat: 1 } @@ -2509,6 +2510,7 @@ mob_db: ( DamageMotion: 900 Drops: { RedApple: 400 + Tomato: 300 LeatherPatch: 240 CoinBag: 125 Lockpicks: 100 @@ -6083,6 +6085,10 @@ mob_db: ( AttackMotion: 672 DamageMotion: 480 // This chest must give back 70% hp recovery to killer. + Drops: { + Tomato: 350 + Pear: 300 + } }, { Id: 1146 @@ -6208,7 +6214,10 @@ mob_db: ( AttackDelay: 800 AttackMotion: 672 DamageMotion: 480 - // Chest way spawm some angry monsters + // Chest may spawn some angry monsters + Drops: { + Tomato: 50 + } }, { Id: 1150 @@ -7251,10 +7260,11 @@ mob_db: ( AttackMotion: 472 DamageMotion: 280 Drops: { - Potatoz: 1300 + Potatoz: 1400 Moss: 500 GrassSeeds: 300 TinOre: 140 + Pear: 20 Carrot: 11 LOFCoin: 6 Emerald: 2 @@ -7472,6 +7482,7 @@ mob_db: ( Drops: { FluoPowder: 200 Curshroom: 150 + Pear: 40 LightGreenDiamond: 2 } }, @@ -8556,11 +8567,12 @@ mob_db: ( AttackMotion: 672 DamageMotion: 270 Drops: { - FrozenYetiTear: 10000 - AnimalBones: 8000 + FrozenYetiTear: 9500 + AnimalBones: 7500 HeroCoin: 3000 BronzeBossGift: 2000 SilverBossGift: 1000 + Pear: 150 MercBoxA: 100 ArcmageBoxset: 80 YetiMask: 50 @@ -9150,6 +9162,8 @@ mob_db: ( AttackMotion: 672 DamageMotion: 200 Drops: { + Tomato: 180 + Pear: 70 CherryCake: 60 } }, @@ -9682,6 +9696,7 @@ mob_db: ( Drops: { CoinBag: 780 CasinoCoins: 560 + Tomato: 320 SharpKnife: 280 CactusDrink: 200 Dagger: 180 @@ -9782,6 +9797,7 @@ mob_db: ( TinOre: 400 Coal: 360 IronOre: 300 + SparklyChocolateDonut: 70 TitaniumOre: 40 CopperKey: 20 IridiumOre: 10 @@ -9836,7 +9852,7 @@ mob_db: ( OrangeCupcake: 400 GoldOre: 200 CherryCake: 150 - SharpKnife: 42 + MintDonut: 42 Topaz: 22 } WeaponAttacks: { @@ -9936,6 +9952,7 @@ mob_db: ( ChocolateBar: 3600 ChocolateBar: 1000 ChocolateBiscuit: 800 + Pear: 75 ChocolateMouboo: 40 LOFCoin: 10 ChocolateDye: 8 @@ -11363,9 +11380,12 @@ mob_db: ( ViewRange: 7 ChaseRange: 11 Drops: { + Tomato: 810 ChickenLeg: 520 Fungus: 220 + ChocolateDonut: 100 SparklyStrawberryDonut: 50 + MintDonut: 30 } }, { @@ -11406,10 +11426,12 @@ mob_db: ( ViewRange: 7 ChaseRange: 11 Drops: { - Fungus: 180 + Fungus: 190 + Pear: 120 DodgeDonut: 60 Sapphire: 30 - StrawberryDonut: 10 + StrawberryDonut: 15 + MintDonut: 10 } }, { @@ -11452,8 +11474,9 @@ mob_db: ( Drops: { MushroomSpores: 1200 SmallMushroom: 900 + ChocolateDonut: 240 Curshroom: 180 - Fungus: 80 + Fungus: 120 } }, { @@ -11498,6 +11521,7 @@ mob_db: ( Acorn: 3000 Acorn: 2000 Acorn: 1000 + ChocolateDonut: 500 SparklyStrawberryDonut: 250 } }, @@ -11540,7 +11564,8 @@ mob_db: ( ChaseRange: 11 Drops: { ArtichokeHerb: 2800 - Fungus: 40 + ChocolateDonut: 100 + Fungus: 50 DodgeDonut: 10 } }, @@ -11620,9 +11645,11 @@ mob_db: ( ChaseRange: 11 Drops: { LettuceLeaf: 800 + Fungus: 250 FluoPowder: 240 + MintDonut: 120 Emerald: 40 - Fungus: 10 + SparklyChocolateDonut: 10 } }, { @@ -11664,7 +11691,10 @@ mob_db: ( ChaseRange: 11 Drops: { ShadowHerb: 8000 + TortugaShellFragment: 670 + ChocolateDonut: 500 Coal: 180 + SparklyChocolateDonut: 120 Amethyst: 20 DeathPotion: 10 } @@ -11711,6 +11741,7 @@ mob_db: ( DeathPotion: 1000 DodgeDonut: 600 StrawberryDonut: 300 + SparklyChocolateDonut: 140 ThetaRing: 3 } }, @@ -12219,8 +12250,11 @@ mob_db: ( ViewRange: 14 ChaseRange: 18 Drops: { + ChocolateDonut: 1400 FluoPowder: 900 + SparklyChocolateDonut: 200 FluoPowder: 50 + MintDonut: 25 } WeaponAttacks: { All: 4000 @@ -12519,6 +12553,7 @@ mob_db: ( Drops: { CoinBag: 4000 BronzeBossGift: 1000 + SparklyChocolateDonut: 400 SilverBossGift: 200 GoldenBossGift: 25 } @@ -12560,6 +12595,7 @@ mob_db: ( AttackMotion: 672 DamageMotion: 200 Drops: { + Tomato: 920 CoinBag: 500 DarkCrystal: 24 Pearl: 20 @@ -12603,6 +12639,7 @@ mob_db: ( AttackMotion: 672 DamageMotion: 200 Drops: { + Tomato: 920 CoinBag: 500 DarkCrystal: 24 Pearl: 20 @@ -12649,6 +12686,7 @@ mob_db: ( AttackMotion: 672 DamageMotion: 200 Drops: { + Tomato: 6000 CoinBag: 3500 BronzeBossGift: 800 SilverBossGift: 150 @@ -12696,6 +12734,7 @@ mob_db: ( AttackMotion: 672 DamageMotion: 200 Drops: { + SparklyChocolateDonut: 300 BronzeBossGift: 200 SilverBossGift: 50 GoldenBossGift: 10 @@ -12750,6 +12789,8 @@ mob_db: ( } Drops: { Coal: 300 + ChocolateDonut: 15 + TortugaShellFragment: 3 } }, // System @@ -13114,6 +13155,7 @@ mob_db: ( DamageMotion: 480 Drops: { ArcmageBoxset: 4500 + Tomato: 1420 BronzeBossGift: 1000 HastePotion: 500 StrengthPotion: 500 @@ -13161,6 +13203,7 @@ mob_db: ( AttackMotion: 272 DamageMotion: 100 Drops: { + SparklyChocolateDonut: 2700 LegendaryMouboo: 1 } }, @@ -13334,6 +13377,7 @@ mob_db: ( DamageMotion: 100 Drops: { BronzeBossGift: 1000 + Tomato: 620 SilverBossGift: 250 GoldenBossGift: 10 GuildCoin: 10 diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index 28bb8630e..9328a4d40 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -38485,7 +38485,19 @@ skill_db: ( Quest: true } }, -// 20005~20008 reserved for TMW/Evol +// 20005~20007 reserved for TMW/Evol +{ + Id: 20008 + Name: "TMW2_COOKING" + Description: "Cooking" + MaxLevel: 7 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } +}, { Id: 20009 Name: "TMW2_DROPS" diff --git a/db/re/skill_tree.conf b/db/re/skill_tree.conf index 02d20488a..6ecdff753 100644 --- a/db/re/skill_tree.conf +++ b/db/re/skill_tree.conf @@ -33,6 +33,7 @@ Human: { TMW2_FAKESKILL2: 0 TMW2_SKILLPERMIT: 0 TMW2_CRAFT: 0 + TMW2_COOKING: 0 TMW2_ANCIENTLANGUAGES: 0 TMW2_SPEECH: 0 TMW2_MPREGEN: 0 diff --git a/npc/001-1/eventmaster.txt b/npc/001-1/eventmaster.txt index ad44024b2..a040470d6 100644 --- a/npc/001-1/eventmaster.txt +++ b/npc/001-1/eventmaster.txt @@ -554,6 +554,7 @@ L_EventOnly: "Silver Mimic", SilverMimic, "Golden Chest", GoldenChest, "Golden Mimic", GoldenMimic, + "WildX Chest", WildxChest, "Evil Chest", EvilChest, "Big Magic Bif", BigMagicBif, "Maverick", Maverick; diff --git a/npc/001-1/rewards.txt b/npc/001-1/rewards.txt index 0d49ca796..859ede1f2 100644 --- a/npc/001-1/rewards.txt +++ b/npc/001-1/rewards.txt @@ -108,7 +108,6 @@ OnInit: sellitem PrecisionPotion,9; sellitem DodgePotion,9; sellitem Wurtzite,8; - sellitem Curshroom,6; sellitem PetcaringGuide,5; // I needed to add this somewhere sellitem ScrollSCave,3; sellitem SmokeGrenade,3; diff --git a/npc/007-1/pylon.txt b/npc/007-1/pylon.txt index 71637600a..67c5bd4b7 100644 --- a/npc/007-1/pylon.txt +++ b/npc/007-1/pylon.txt @@ -39,6 +39,7 @@ L_Menu: rif(countitem(Amethyst) >= 1 && Zeny >= 100, l("Yeah sure, take my Amethyst!")), rif(countitem(IronOre) >= 1 && Zeny >= 100, l("And what about Iron Ore?")), rif(countitem(SunnyCrystal) >= 1 && Zeny >= 1000 && !checkbound(SunnyCrystal), l("And what about Sunny Crystals?")), + rif(!checkbound(TortugaShell) && countitem(TortugaShell) && Zeny >= 1000 && getskilllv(TMW2_COOKING), l("Actually, can you break Tortuga Shells?")), l("No, thanks, I will keep my gems."); mes ""; @@ -54,6 +55,9 @@ L_Menu: goto L_Savior; break; case 10: + goto L_Shell; + break; + case 11: close; break; default: @@ -160,6 +164,23 @@ L_Savior: } goto L_Menu; +L_Shell: + mesn; + mesq l("For cooking? Sure thing, but this costs %s GP.", fnum(1000)); + next; + mesn; + mesc l("Are you sure you want to smash it?"), 1; + next; + if (askyesno() == ASK_YES) { + Zeny-=1000; + delitem TortugaShell, 1; + getitem TortugaShellFragment, rand2(1,3); + mesn; + mesq l("Here you go, have fun in whatever dish you'll use this in."); + next; + } + goto L_Menu; + L_Close: close; diff --git a/npc/009-6/doorbell.txt b/npc/009-6/doorbell.txt index 2f6796823..5a7444a4d 100644 --- a/npc/009-6/doorbell.txt +++ b/npc/009-6/doorbell.txt @@ -265,6 +265,7 @@ OnInit: create_object("Shelf 12" , 1, 2000, 8192, 38, 23, 38, 23); create_object("Piano" , 3, 10000, 1, 33, 25, 35, 25); + create_object("Stove" , 3, 40000, 2, 23, 24, 24, 24); create_object("Left Desk" , 2, 5000, 1, 20, 25, 22, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/009-6/utils.txt b/npc/009-6/utils.txt index 65ffbb276..0652607fa 100644 --- a/npc/009-6/utils.txt +++ b/npc/009-6/utils.txt @@ -67,6 +67,7 @@ OnReload: // load_npc ( name , map, x , y{, cell} ) load_npc("Wardrobe#RES_0096", .mapa$, 21, 23); load_npc("Piano#RES_0096" , .mapa$, 34, 25); + load_npc("Stove#RES_0096" , .mapa$, 23, 24); end; } diff --git a/npc/009-7/doorbell.txt b/npc/009-7/doorbell.txt index 0898dc334..1dfd1c1e5 100644 --- a/npc/009-7/doorbell.txt +++ b/npc/009-7/doorbell.txt @@ -265,6 +265,7 @@ OnInit: create_object("Shelf 12" , 1, 2000, 8192, 38, 23, 38, 23); create_object("Piano" , 3, 10000, 1, 33, 25, 35, 25); + create_object("Stove" , 3, 40000, 2, 23, 24, 24, 24); create_object("Left Desk" , 2, 5000, 1, 20, 25, 22, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/009-7/utils.txt b/npc/009-7/utils.txt index 424a1f779..4a30c401d 100644 --- a/npc/009-7/utils.txt +++ b/npc/009-7/utils.txt @@ -67,6 +67,7 @@ OnReload: // load_npc ( name , map, x , y{, cell} ) load_npc("Wardrobe#RES_0097", .mapa$, 21, 23); load_npc("Piano#RES_0097" , .mapa$, 34, 25); + load_npc("Stove#RES_0097" , .mapa$, 23, 24); end; } diff --git a/npc/012-8/doorbell.txt b/npc/012-8/doorbell.txt index e9f5877d4..2ddb693d7 100644 --- a/npc/012-8/doorbell.txt +++ b/npc/012-8/doorbell.txt @@ -271,6 +271,7 @@ OnInit: create_object("Shelf 12" , 1, 2000, 8192, 38, 23, 38, 23); create_object("Piano" , 3, 10000, 1, 33, 25, 35, 25); + create_object("Stove" , 3, 40000, 2, 23, 24, 24, 24); create_object("Left Desk" , 2, 5000, 1, 20, 25, 22, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/012-8/utils.txt b/npc/012-8/utils.txt index 7e34e91fe..0086fd191 100644 --- a/npc/012-8/utils.txt +++ b/npc/012-8/utils.txt @@ -65,6 +65,7 @@ OnReload: load_npc("Wardrobe#RES_0128", .map$, 21, 23); load_npc("Cauldron#RES_0128", .map$, 28, 24); load_npc("Piano#RES_0128" , .map$, 34, 25); + load_npc("Stove#RES_0128" , .map$, 23, 24); end; } diff --git a/npc/017-7/doorbell.txt b/npc/017-7/doorbell.txt index 1be18ad8b..a944dc83e 100644 --- a/npc/017-7/doorbell.txt +++ b/npc/017-7/doorbell.txt @@ -271,6 +271,7 @@ OnInit: create_object("Shelf 12" , 1, 2000, 8192, 38, 23, 38, 23); create_object("Piano" , 3, 10000, 1, 33, 25, 35, 25); + create_object("Stove" , 3, 40000, 2, 23, 24, 24, 24); create_object("Left Desk" , 2, 5000, 1, 20, 25, 22, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/017-7/utils.txt b/npc/017-7/utils.txt index 28f69e283..6541d6a03 100644 --- a/npc/017-7/utils.txt +++ b/npc/017-7/utils.txt @@ -68,6 +68,7 @@ OnReload: load_npc("Wardrobe#RES_0177", .mapa$, 21, 23); load_npc("Cauldron#RES_0177", .mapa$, 28, 24); load_npc("Piano#RES_0177" , .mapa$, 34, 25); + load_npc("Stove#RES_0177" , .mapa$, 23, 24); end; } diff --git a/npc/017-8/doorbell.txt b/npc/017-8/doorbell.txt index cc26c4679..4accdd31e 100644 --- a/npc/017-8/doorbell.txt +++ b/npc/017-8/doorbell.txt @@ -271,6 +271,7 @@ OnInit: create_object("Shelf 12" , 1, 2000, 8192, 38, 23, 38, 23); create_object("Piano" , 3, 10000, 1, 33, 25, 35, 25); + create_object("Stove" , 3, 40000, 2, 23, 24, 24, 24); create_object("Left Desk" , 2, 5000, 1, 20, 25, 22, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/017-8/utils.txt b/npc/017-8/utils.txt index 70161131a..11f711334 100644 --- a/npc/017-8/utils.txt +++ b/npc/017-8/utils.txt @@ -68,6 +68,7 @@ OnReload: load_npc("Wardrobe#RES_0178", .mapa$, 21, 23); load_npc("Cauldron#RES_0178", .mapa$, 28, 24); load_npc("Piano#RES_0178" , .mapa$, 34, 25); + load_npc("Stove#RES_0178" , .mapa$, 23, 24); end; } diff --git a/npc/018-2/_import.txt b/npc/018-2/_import.txt index adb5e8745..cee0d2783 100644 --- a/npc/018-2/_import.txt +++ b/npc/018-2/_import.txt @@ -2,3 +2,4 @@ // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/018-2/_mobs.txt", "npc/018-2/_warps.txt", +"npc/018-2/wateranimation.txt", diff --git a/npc/018-2/wateranimation.txt b/npc/018-2/wateranimation.txt new file mode 100644 index 000000000..73a17835a --- /dev/null +++ b/npc/018-2/wateranimation.txt @@ -0,0 +1,22 @@ +// TMW2 scripts. +// Author: +// Jesusalva +// Description: +// Water animations, splash, fishes, etc... + +018-2,118,50,0 script #HH_WAM0 NPC_WATER_SPLASH,{ + + fishing(1, + CommonCarp, + Trout); + + close; + +OnInit: + .sex = G_OTHER; + .distance = 4; + end; +} + +018-2,41,49,0 duplicate(#HH_WAM0) #HH_WAM1 NPC_WATER_SPLASH +018-2,51,93,0 duplicate(#HH_WAM0) #HH_WAM2 NPC_WATER_SPLASH diff --git a/npc/024-14/doorbell.txt b/npc/024-14/doorbell.txt index ac6452a17..b8b6c8842 100644 --- a/npc/024-14/doorbell.txt +++ b/npc/024-14/doorbell.txt @@ -219,6 +219,7 @@ OnInit: create_object("Beer Shelf" , 1, 2000, 32, 37, 26, 37, 26); create_object("Piano" , 3, 10000, 1, 31, 26, 33, 26); + create_object("Stove" , 3, 42000, 2, 30, 26, 31, 27); create_object("Right Desk" , 2, 5000, 2, 36, 30, 38, 32); diff --git a/npc/024-14/utils.txt b/npc/024-14/utils.txt index ad9c51134..69656594c 100644 --- a/npc/024-14/utils.txt +++ b/npc/024-14/utils.txt @@ -45,6 +45,7 @@ OnReload: load_npc("Wardrobe#RES_PPL", "ples@"+getcharid(0), 25, 26); load_npc("Cauldron#RES_PPL", "ples@"+getcharid(0), 28, 27); load_npc("Piano#RES_PPL" , "ples@"+getcharid(0), 32, 26); + load_npc("Stove#RES_PPL" , "ples@"+getcharid(0), 30, 27); end; } @@ -78,3 +79,13 @@ OnInit: end; } + +024-14,30,27,0 script Stove#RES_PPL NPC_STOVE,{ + realestate_stove(); + close; + +OnInit: + .distance=3; + end; +} + diff --git a/npc/025-1/ctrl.c b/npc/025-1/ctrl.c index 160206415..18e685801 100644 --- a/npc/025-1/ctrl.c +++ b/npc/025-1/ctrl.c @@ -287,7 +287,7 @@ OnMPReinforce: // Last a whole minute summon("Allied Guard", any(FallenGuard1, FallenGuard2, FallenGuard3)); if (strcharinfo(0) == $MOST_HEROIC$) - summon("Allied Guard", any(FallenGuard1, FallenGuard2, FallenGuard3)); + summon("Allied Guard", any(FallenGuard1, FallenGuard2, DustGatling)); end; ///////////////////////////////////////////////////////// diff --git a/npc/029-8/_import.txt b/npc/029-8/_import.txt index 02bf49b9f..b21131502 100644 --- a/npc/029-8/_import.txt +++ b/npc/029-8/_import.txt @@ -1,2 +1,3 @@ // Map 029-8: Asphodel Moors // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/029-8/wateranimation.txt", diff --git a/npc/029-8/wateranimation.txt b/npc/029-8/wateranimation.txt new file mode 100644 index 000000000..702e554d9 --- /dev/null +++ b/npc/029-8/wateranimation.txt @@ -0,0 +1,27 @@ +// TMW2 scripts. +// Author: +// Jesusalva +// Description: +// Water animations, splash, fishes, etc... + +029-8,96,82,0 script #Moors_WAM0 NPC_WATER_SPLASH,{ + + fishing(2, + Trout, Roach, + GrassCarp, Tench); + + close; + +OnInit: + .sex = G_OTHER; + .distance = 4; + end; +} + +029-8,115,75,0 duplicate(#Moors_WAM0) #Moors_WAM1 NPC_WATER_SPLASH +029-8,98,65,0 duplicate(#Moors_WAM0) #Moors_WAM2 NPC_WATER_SPLASH +029-8,108,58,0 duplicate(#Moors_WAM0) #Moors_WAM3 NPC_WATER_SPLASH +029-8,112,65,0 duplicate(#Moors_WAM0) #Moors_WAM4 NPC_WATER_SPLASH +029-8,55,88,0 duplicate(#Moors_WAM0) #Moors_WAM5 NPC_WATER_SPLASH +029-8,103,79,0 duplicate(#Moors_WAM0) #Moors_WAM6 NPC_WATER_SPLASH +029-8,52,90,0 duplicate(#Moors_WAM0) #Moors_WAM7 NPC_WATER_SPLASH diff --git a/npc/craft/cooking.txt b/npc/craft/cooking.txt new file mode 100644 index 000000000..0ec3ee1f8 --- /dev/null +++ b/npc/craft/cooking.txt @@ -0,0 +1,132 @@ +// TMW2 Script +// Author: +// Jesusalva, Micksha, Meway +// Description: +// Cooking System (Player, Guild, NPC) + +// Usage: CookingSystem ({scope}) +// Scopes: CRAFT_NPC, CRAFT_PLAYER +// If an invalid scope is passed, .knowledge won't be set but will be required +// Returns true on success, false on failure +function script CookingSystem { + // Set .scope, .knowledge and .success + .scope=getarg(0, CRAFT_PLAYER); + if (.scope == CRAFT_PLAYER) { + if (!getskilllv(TMW2_COOKING)) { + mesc l("You don't know how to cook."), 1; + return false; + } + copyarray(.knowledge,RECIPES_COOKING,getarraysize(RECIPES_COOKING)); + } + .success=false; + + setskin "craft3"; + .@var$ = requestcraft(6); // ????? + .@craft = initcraft(.@var$); + .@entry = findcraftentry(.@craft, CRAFT_COOKING); // ?????? + if (debug || $@GM_OVERRIDE) mes "found craft entry: " + .@entry; + if (debug || $@GM_OVERRIDE) mes "knowledge value: " + .knowledge[.@entry]; + if (.@entry < 0) { + .success=false; + } else { + if (.scope == CRAFT_NPC || .knowledge[.@entry]) { + .@s=validatecraft(.@craft); + // Could not validate (not enough resources) + if (!.@s) { + mesc l("Not crafting - insufficient materials!"), 1; + return false; + } + usecraft(.@craft); + .@it=getcraftcode(.@entry); + .@tm=limit(3600, getiteminfo(.@it, ITEMINFO_SELLPRICE) * getskilllv(TMW2_COOKING), 86400); + rentitem(.@it, .@tm); // From 1 hour to 1 day + // getskilllv(TMW2_COOKING) → and in theory, we can apply options + .success=true; + } else { + .success=false; + } + } + deletecraft .@craft; + setskin ""; + return .success; +} + +/* +Alchemy can rely in cross-building +Where a weaker potion is base for a stronger one +Standard Duration = 2 minutes ~ 5 minutes + +Reagents: + Water + ...Eggs? + ...Milk? + Nymph Poison + Death Potion + Manapple + +Products: + Tea (Chamomile, Spearmint, Oolong, Jasmine, Yerba Mate?) + → Argaes Water + «Herbal Reagent» +OK Coffee (Shadow Herb + Tonori Water) +OK Piberries Infusion (Piberries + Curshroom) +OK Atropos Mixture (Lachesis Brew + Clotho Liquor) +OK Death Potion (Dragonfruit + Nightshade Tea) +OK Smoke Grenade (Cactus pot + Coal) +OK Grenade (Cactus pot + Sulfur Powder) +OK Scented Grenade (Cactus pot + Moss) +OK Haste Potion (Plushshroom) +OK Strength Potion (Chagashroom) + Return Potion (Hurnscald Recipe => Ocean Croc Claw + Hard Spike? Grass Seeds?) +OK Status Reset (Curshroom + Mana Piou Feather) +OK Homun Stat Reset (Curshroom + Manapple) +OK Move Speed (Gem Powder + Fluor Powder) +OK Precision (Piberries + Mt. Snake Egg) +OK Dodge Potion (Piberries + Snake Egg) +OK Luck, Dex, Int, Vit, Agi (Gems + Tea) +OK Sacred Life (Golden Apple + Elixir of Life) +OK Sacred Mana (Golden Apple + Celestia Tea) +OK Sacred Revival (Sacred Life + Sacred Mana) +OK Broken Warp Crystal? (Wurtizite + Black Mamba Skin) +OK Magic Apple? (Divine Apple + Manapple? Death Potion? Sacred Life/Revival?) +OK Purification Potion (Nymph Poison + Sacred Life) +OK Iced Bottle (Tonori W. + Argaes W.) +OK Insurance Contract (» Insurance?) (Quill + Reed Bundle) +OK Insurance (Quill + Death Potion) + Mysterious Fruit? (Legendary) + +For all Scrolls: Quill + ? (depends on scroll itself) + » Summon Scrolls (Based on mob parts, 1× mob?) + → alignment_cansummon() + SummonMagic() or summon() directly + → Criteria between weak/strong version is alignment + → When aligned, scrolls always summon strongest ver + → Level must be equal or superior to strongest, tho + » Maggot/Giant Maggot: Bug Leg (Lv 40) + » CaveMaggot: Maggot Slime + » Green Dragon/Nightmare: Dragon Scales (Lv 105) + » Wolvern: Wolvern Pelt + » Moggun/Yeti: Frozen Yeti Tear (Lv 60) + » Terranite/T.Prot.: Terranite Ore (Lv 90) + » Magnus Heal (Lifestone) + » Area Provoke? → Scent grenade? + » Guild Skills? +OK » ScrollAngelLightA ( + ) +OK » ScrollBattlePlansA ( + ) +OK » ScrollDefenseBlessA ( + ) +OK » ScrollCriticalFortuneA ( + ) + → TODO: Kyrie Eleison (Absolute Shield) + → With self-stun, makes you a temporary wall? + → Maybe a item of Quill + LoF Coin for guild skills? (LoF Quill) + + // Skills for Aegis Shield, all beyond maximum level + // Slimes, Snakes, Fairies, Darth Duck, Mr. Prickel + // PoisonS.Mushroom + // TODO: Lizards, (Black)Scorpions, Moonshroom, Black Mamba, Centaur + skill TMW2_HALHISS, 10; + skill TMW2_KALSPIKE, 9; + skill TMW2_LIMERIZER, 10; + skill TMW2_FAIRYKINGDOM, 9; + skill TMW2_DUCKY, 10; + skill TMW2_FAIRYEMPIRE, 10; + +*/ + diff --git a/npc/craft/price.txt b/npc/craft/price.txt index ba40f95e8..7cc755029 100644 --- a/npc/craft/price.txt +++ b/npc/craft/price.txt @@ -96,6 +96,19 @@ function script fix_cPrice { // TODO: Scrolls? Reagents? // And reagents should happen before potions + // Fix cooked food prices + _fix_cPrice(PepperoniPizza, 9999); + _fix_cPrice(CaramelApple, 9999); + _fix_cPrice(CarpSandwich, 9999); + _fix_cPrice(ShellSandwich, 9999); + _fix_cPrice(ChickenSandwich, 9999); + _fix_cPrice(Sushi, 9999); + _fix_cPrice(SteakAndEggs, 9999); + _fix_cPrice(FruitSalad, 9999); + _fix_cPrice(PoisonedDish, 9999); + _fix_cPrice(ZombieNachos, 9999); + _fix_cPrice(Pancake, 9999); + // And weapons _fix_cPrice(WoodenSword); _fix_cPrice(BugSlayer); diff --git a/npc/craft/recipes.txt b/npc/craft/recipes.txt index 423bca93b..3d819e654 100644 --- a/npc/craft/recipes.txt +++ b/npc/craft/recipes.txt @@ -107,11 +107,22 @@ function readCooking { @scope$="COOKING"; mesc l("Eating is a necessity, but cooking is an art."); + mesc l("NOTE: Cooked Food will expire some time after its cooked."), 1; mesc l("(All items must be placed exactly in this order.)"); next; mesc l("List of known cooking recipes:"); mes ""; - //showRecipe(0, Iten, WarpedLog, 9999); + showRecipe(PepperoniPizza, + CaramelApple, + CarpSandwich, + ShellSandwich, + ChickenSandwich, + Sushi, + SteakAndEggs, + FruitSalad, + PoisonedDish, + ZombieNachos, + Pancake); next; @scope$=""; return; diff --git a/npc/functions/estate2.txt b/npc/functions/estate2.txt index 99100f2f8..3899a560d 100644 --- a/npc/functions/estate2.txt +++ b/npc/functions/estate2.txt @@ -273,6 +273,23 @@ function script realestate_cauldron { return; } + + +// Stove Mobilia +// realestate_cauldron ( ) +function script realestate_stove { + do { + mesc l("What will you brew today?"); + if (CookingSystem(CRAFT_PLAYER)) + mesc l("Success!"), 3; + else + mesc l("That didn't work!"), 1; + next; + mesc l("Try again?"); + } while (askyesno() == ASK_YES); + return; +} + //////////////////////////////////////////////////////////////////////////// // TODO: NPCs toogle on/off controller? @@ -324,3 +341,19 @@ OnInit: 009-7,34,25,0 duplicate(Piano#RES_0128) Piano#RES_0097 NPC_NO_SPRITE +//////////////////////////////////////////////////////////////////////////// +012-8,23,24,0 script Stove#RES_0128 NPC_STOVE,{ + realestate_stove(); + close; + +OnInit: + .distance=3; + end; +} + +017-7,23,24,0 duplicate(Stove#RES_0128) Stove#RES_0177 NPC_NO_SPRITE +017-8,23,24,0 duplicate(Stove#RES_0128) Stove#RES_0178 NPC_NO_SPRITE +009-6,23,24,0 duplicate(Stove#RES_0128) Stove#RES_0096 NPC_NO_SPRITE +009-7,23,24,0 duplicate(Stove#RES_0128) Stove#RES_0097 NPC_NO_SPRITE + + diff --git a/npc/items/cooking.txt b/npc/items/cooking.txt new file mode 100644 index 000000000..70de9a8e0 --- /dev/null +++ b/npc/items/cooking.txt @@ -0,0 +1,15 @@ +// TMW2 scripts. +// Authors: +// Jesusalva +// Description: +// Cooking inner functions + +// item_consumption(item_id) - consumes the item after it is removed +function script item_consumption { + sleep2(15); // To avoid crashes, but too quick for user reaction + .@it=getarg(0); + if (countitem(.@it)) + delitem .@it, 1; + return; +} + diff --git a/npc/items/inc_sc_bonus.txt b/npc/items/inc_sc_bonus.txt index 8e6b6e5be..b0680b680 100644 --- a/npc/items/inc_sc_bonus.txt +++ b/npc/items/inc_sc_bonus.txt @@ -3,11 +3,11 @@ // Jesusalva // Description: // Applies effects for INC_* (STR doesn't exist) -// Valid values: INCAGI INCVIT INCINT INCDEX INCLUK INCHIT INCFLEE SC_FURY +// Valid values: INCAGI INCVIT INCINT INCDEX INCLUK INCHIT INCFLEE // Doesn't works: SC_STRUP // Works if .@min == .@max: INCMHP INCMHPRATE INCMSP INCMSPRATE /// Untested Values: WALKSPEED (reverse logic) INVINCIBLE (broken) -// PS. SC_FURY causes crit rate to increase +// PS. SC_CRITICALPERCENT (Crit) SC_FOOD_CRITICALSUCCESSVALUE (Crit) SC_STRIKING (Crit , ATK) // // Variables: // .@delay Second of buffing diff --git a/npc/magic/transmigration.txt b/npc/magic/transmigration.txt index 838fa718c..77c3e8114 100644 --- a/npc/magic/transmigration.txt +++ b/npc/magic/transmigration.txt @@ -80,6 +80,7 @@ OnCall: l("Black Mamba Tongue -> Mountain Snake Tongue"), MountainSnakeTongue, l("Mountain Snake Tongue -> Snake Tongue"), SnakeTongue, l("Snake Tongue -> Cave Snake Tongue"), CaveSnakeTongue, + l("5x Snake Tongues -> Tortuga Tongue"), TortugaTongue, l("Cancel"), 0; break; case RedScorpionStinger: @@ -216,6 +217,12 @@ OnCall: end; } break; + case TortugaTongue: + if (!transcheck(SnakeTongue, 5)) { + dispbottom l("Not enough items!"); + end; + } + break; // Scorpion Stinger Chain case RedScorpionStinger: if (!transcheck(BlackScorpionStinger, 1)) { diff --git a/npc/scripts.conf b/npc/scripts.conf index 5f8bc1cab..204d22a09 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -81,6 +81,7 @@ "npc/items/alcohol.txt", "npc/items/arcmage.txt", "npc/items/books.txt", +"npc/items/cooking.txt", "npc/items/croconut.txt", "npc/items/emptybox.txt", "npc/items/grenade.txt", @@ -95,6 +96,7 @@ // Crafting System "npc/craft/options.txt", "npc/craft/alchemy.txt", +"npc/craft/cooking.txt", "npc/craft/smith.txt", "npc/craft/tweak.txt", "npc/craft/recipes.txt", |