summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-05-28 11:32:13 -0300
committerJesusaves <cpntb1@ymail.com>2019-05-28 11:32:13 -0300
commitec1745f659a8b5e21591782cd3c0a7b239e2f1e6 (patch)
tree8925132eb2738bca231f5f9ee8c257676923951d
parent05fc156501201bc5cde04a8abaebe0015fcf2a42 (diff)
downloadserverdata-ec1745f659a8b5e21591782cd3c0a7b239e2f1e6.tar.gz
serverdata-ec1745f659a8b5e21591782cd3c0a7b239e2f1e6.tar.bz2
serverdata-ec1745f659a8b5e21591782cd3c0a7b239e2f1e6.tar.xz
serverdata-ec1745f659a8b5e21591782cd3c0a7b239e2f1e6.zip
Option to remove an item options
-rw-r--r--npc/craft/tweak.txt33
-rw-r--r--npc/guilds/forge.txt7
2 files changed, 35 insertions, 5 deletions
diff --git a/npc/craft/tweak.txt b/npc/craft/tweak.txt
index d46a80db6..ba5a4b2bb 100644
--- a/npc/craft/tweak.txt
+++ b/npc/craft/tweak.txt
@@ -6,6 +6,25 @@
// Notes:
// It's like smithing, but it only change an item options
+// Usage: SmithTweakReset ()
+// Asks if player wants to remove an item options. And remove them.
+function script SmithTweakReset {
+ mesc l("Note: This action cannot be undone."), 1;
+ mes l("Drag and drop here the item you want to remove the options.");
+
+ .@id=requestitemindex();
+ mes "";
+
+ // Ask player to confirm
+ mesc l("Are you sure?"), 1;
+ mesc l("Note: This action cannot be undone."), 1;
+ if (!csys_Confirm(.@id))
+ return;
+
+ csys_Check();
+ return;
+}
+
// Usage: SmithTweakSystem ({scope})
// Scopes: CRAFT_PLAYER, CRAFT_NPC
// Returns true on success, false on failure
@@ -13,10 +32,13 @@ function script SmithTweakSystem {
// Set .scope, .knowledge and .success
.scope=getarg(0, CRAFT_PLAYER);
copyarray(.knowledge,RECIPES_EQUIPMENT,getarraysize(RECIPES_EQUIPMENT));
- .success=false;
mes l("Which item will you tweak?");
- mesc l("WARNING, ITEM MAY BREAK"), 1;
+ mesc l("Note: You may fail to write skills to it."), 1;
+ mesc l("Operation Cost: 600 GP"), 3;
+
+ if (Zeny < 600)
+ return false;
.@id=requestitemindex();
mes "";
@@ -25,9 +47,12 @@ function script SmithTweakSystem {
if (!csys_Confirm(.@id))
return false;
+ // Take the money away
+ Zeny-=600;
+
// Check if you fail
if (!csys_Check(.@id)) {
- mesc l("ITEM BREAKS, ALL OPTIONS LOST!"), 1;
+ mesc l("YOU FAIL! It is a simple item now."), 1;
return false;
}
@@ -37,6 +62,6 @@ function script SmithTweakSystem {
CRAFTSYS[CRGROUP_BASE]=10;
}
csys_Apply(.@id);
- mesc l("SUCCESS!"), 3;
+ mesc l("SUCCESS! Congratulations, the item was improved!"), 3;
return true;
}
diff --git a/npc/guilds/forge.txt b/npc/guilds/forge.txt
index ffb43f529..0d192e9fe 100644
--- a/npc/guilds/forge.txt
+++ b/npc/guilds/forge.txt
@@ -7,12 +7,17 @@
guilds,24,27,0 script Guild Blacksmith NPC_NO_SPRITE,{
select
l("Forge a new item"),
- rif(is_staff(), "Tweak an item");
+ rif(is_staff(), "Tweak an item"),
+ l("Remove an item tweaks");
mes "";
if (@menu == 2) {
SmithTweakSystem();
close;
}
+ if (@menu == 3) {
+ SmithTweakReset();
+ close;
+ }
// Script begins here
do