diff options
Diffstat (limited to 'npc/craft')
-rw-r--r-- | npc/craft/options.txt | 2 | ||||
-rw-r--r-- | npc/craft/recipes.txt | 29 | ||||
-rw-r--r-- | npc/craft/smith.txt | 14 |
3 files changed, 32 insertions, 13 deletions
diff --git a/npc/craft/options.txt b/npc/craft/options.txt index 37e19e8be..c0ad5c8b7 100644 --- a/npc/craft/options.txt +++ b/npc/craft/options.txt @@ -708,7 +708,7 @@ function script csysGUI_OptReq { case CRGROUP_BOSSATK: return (getskilllv(TMW2_CRAFT) >= 4 && CRAFTSYS[CRGROUP_ATK] >= 3 && - CRAFTSYS[CRGROUP_HIT] >= 3 && + CRAFTSYS[CRGROUP_ACC] >= 3 && CRAFTSYS[CRGROUP_BASE] >= 4); case CRGROUP_FINAL: return (getskilllv(TMW2_CRAFT) >= 5 && diff --git a/npc/craft/recipes.txt b/npc/craft/recipes.txt index c8a3362ca..65409aee8 100644 --- a/npc/craft/recipes.txt +++ b/npc/craft/recipes.txt @@ -223,6 +223,19 @@ function readCrafting { 1, TinIngot, 20, Coal, 1, EverburnPowder); + // Reserved ID 63 and 64 + // Halberd is really cheap as it doesn't uses Platinum/Iridium :P + showRecipe(CraftHalberd, Halberd, + 45, SilverIngot, + 5, TinIngot, + 34, Coal, + 1, EverburnPowder); + showRecipe(CraftImmortalSword, ImmortalSword, + 40, SilverIngot, + 2, PlatinumIngot, + 3, IridiumIngot, + 1, BlueManaPearl); + next; // Archery Weapons: Always use Wood, Root and Carp. mesc "----------"+l("Archery Weapon Recipes")+"----------", 2; @@ -382,11 +395,12 @@ function script MakeBlueprint { // Now you'll learn some recipe! .@rcp=any_of(.@recipes); if (RECIPES_ALCHEMY[.@rcp]) { - dispbottom l("It was a recipe you already knew..."); + .@mpot=rand2(900, 1000*.@rarity); + dispbottom l("It was a recipe you already knew... (+ @@ Mobpt)", .@mpot); getexp (BaseLevel+JobLevel)*rand2(1,.@rarity), JobLevel+rand2(1,.@rarity); // Give you some Monster Points to use with Intense Beard // You do NOT need to be registered with Aidan for this. - Mobpt+=rand2(900, 1000*.@rarity); + Mobpt+=.@mpot; } else { dispbottom l("Learned a new recipe!"); RECIPES_ALCHEMY[.@rcp]=true; @@ -406,6 +420,7 @@ function script MakeBlueprint { if (.@rarity & CRAFT_INTERMEDIARY) { array_push(.@recipes, CraftBugSlayer); array_push(.@recipes, CraftShortGladius); + array_push(.@recipes, CraftMiereCleaver); array_push(.@recipes, CraftBladeShield); array_push(.@recipes, CraftNoviceWand); array_push(.@recipes, CraftForestBow); @@ -415,7 +430,7 @@ function script MakeBlueprint { array_push(.@recipes, CraftShortsword); array_push(.@recipes, CraftBoneKnife); array_push(.@recipes, CraftKitana); - array_push(.@recipes, CraftMiereCleaver); + array_push(.@recipes, CraftBroadsword); array_push(.@recipes, CraftPynRevolver); array_push(.@recipes, CraftApprenticeWand); array_push(.@recipes, CraftElficBow); @@ -424,7 +439,7 @@ function script MakeBlueprint { array_push(.@recipes, CraftGoldenRing); array_push(.@recipes, CraftLongSword); array_push(.@recipes, CraftRockKnife); - array_push(.@recipes, CraftBroadsword); + array_push(.@recipes, CraftHalberd); array_push(.@recipes, CraftPynRifle); array_push(.@recipes, CraftPynGatling); array_push(.@recipes, CraftLeaderWand); @@ -432,6 +447,7 @@ function script MakeBlueprint { } if (.@rarity & CRAFT_MASTER) { array_push(.@recipes, CraftDivineSword); + array_push(.@recipes, CraftImmortalSword); array_push(.@recipes, CraftPynShotgun); array_push(.@recipes, CraftLegendaryWand); array_push(.@recipes, CraftBansheeBow); @@ -440,11 +456,12 @@ function script MakeBlueprint { // Now you'll learn some recipe! .@rcp=any_of(.@recipes); if (RECIPES_EQUIPMENT[.@rcp]) { - dispbottom l("It was a recipe you already knew..."); + .@mpot=rand2(900, 1000*.@rarity); + dispbottom l("It was a recipe you already knew... (+ @@ Mobpt)", .@mpot); getexp (BaseLevel+JobLevel)*rand2(1,.@rarity), JobLevel+rand2(1,.@rarity); // Give you some Monster Points to use with Intense Beard // You do NOT need to be registered with Aidan for this. - Mobpt+=rand2(900, 1000*.@rarity); + Mobpt+=.@mpot; } else { dispbottom l("Learned a new recipe!"); RECIPES_EQUIPMENT[.@rcp]=true; diff --git a/npc/craft/smith.txt b/npc/craft/smith.txt index 87dc9d55d..fa866f7eb 100644 --- a/npc/craft/smith.txt +++ b/npc/craft/smith.txt @@ -17,15 +17,14 @@ // Usage: SmithSystem ({scope}) // Scopes: CRAFT_NPC, CRAFT_PLAYER, CRAFT_GUILD -// If an invalid scope is passed, .knowledge won't be set but will be required +// CRAFT_NPC - Unlocks all recipes +// CRAFT_PLAYER - Normal behavior +// CRAFT_GUILD - Items created will be Guild-bound // Returns true on success, false on failure function script SmithSystem { // Set .scope, .knowledge and .success .scope=getarg(0, CRAFT_PLAYER); - if (.scope == CRAFT_PLAYER) - copyarray(.knowledge,RECIPES_EQUIPMENT,getarraysize(RECIPES_EQUIPMENT)); - else if (.scope == CRAFT_GUILD) - copyarray(.knowledge,$@RECIPES_EQUIPMENT[getcharid(2)],getarraysize($@RECIPES_EQUIPMENT[getcharid(2)])); + copyarray(.knowledge,RECIPES_EQUIPMENT,getarraysize(RECIPES_EQUIPMENT)); .success=false; setskin "craft4"; @@ -49,7 +48,10 @@ function script SmithSystem { // Mark the crafting in your score book (except dagger) if (.@it != Dagger) CRAFTING_SCORE+=1; - getnameditem(.@it, strcharinfo(0)); + if (.scope == CRAFT_GUILD) + getitembound(.@it, 1, 2); // Create a guild-bound item + else + getnameditem(.@it, strcharinfo(0)); if (getskilllv(TMW2_CRAFT)) { delinventorylist(); // Needed, because we'll rely on rfind() getinventorylist(); |