summaryrefslogtreecommitdiff
path: root/world/map/npc/commands/exp.txt
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-02-04 12:19:44 -0300
committerJesusaves <cpntb1@ymail.com>2021-02-04 12:19:44 -0300
commit965ef3e88a407aceffd7aea0d33eb92adb993aa3 (patch)
tree981e2a72d1e9825a12ee18ecc6c6fc9392e07db9 /world/map/npc/commands/exp.txt
parent2f3450acff9b312514390e20a16af8453f9b60ed (diff)
downloadserverdata-965ef3e88a407aceffd7aea0d33eb92adb993aa3.tar.gz
serverdata-965ef3e88a407aceffd7aea0d33eb92adb993aa3.tar.bz2
serverdata-965ef3e88a407aceffd7aea0d33eb92adb993aa3.tar.xz
serverdata-965ef3e88a407aceffd7aea0d33eb92adb993aa3.zip
Final batch of changes and balance after through testing with Ledmitz (and Prsm$
- Fix bugs on @getexp and @chargetexp - Bump exp for Beheader quest from 400k to 750k - Beheader: 999 DMG +50% Double Attack, 1800ms, -20% HIT, -25% CRIT. No int and no bow. NOTE: The -20 HIT might be or not be lowered further. Beheader is not as powerful as it looks like!
Diffstat (limited to 'world/map/npc/commands/exp.txt')
-rw-r--r--world/map/npc/commands/exp.txt8
1 files changed, 5 insertions, 3 deletions
diff --git a/world/map/npc/commands/exp.txt b/world/map/npc/commands/exp.txt
index 64530976..069f98d1 100644
--- a/world/map/npc/commands/exp.txt
+++ b/world/map/npc/commands/exp.txt
@@ -4,6 +4,7 @@
set .@n$, if_then_else(@argv$[1] != "", "char", "") + "getexp";
if (GM < CMD_ZENY && GM < G_SYSOP) goto L_GM; // check if you can use it on self
set .@target_id, BL_ID;
+ set .@caster_id, BL_ID;
if (@argv$[1] != "") set .@target_id, getcharid(3, @argv$[1]);
if (@argv$[1] != "" && !(isloggedin(.@target_id))) goto L_Failed; // do NOT fallback to self
if (@argv$[1] != "" && GM < CMD_CHARZENY && GM < G_SYSOP) goto L_GM; // when target is not self, use charzeny permission
@@ -12,11 +13,12 @@
if (.@delta > .max_int) goto L_OutOfBounds;
if (!(attachrid(.@target_id))) goto L_Failed;
getexp .@delta, 0;
+ if (!(attachrid(.@caster_id))) goto L_Failed;
goto L_Success;
L_OutOfBounds:
- // XXX: maybe we could also take from other chars from the same accout?
- message strcharinfo(0), .@n$+" : Impossible to proceed! This would cause the player to have less than 0 zeny or more than " + .max_int + ".";
+ // XXX: can getexp even work with a negative number?
+ message strcharinfo(0), .@n$+" : Impossible to proceed! This would cause the player to have less than 0 xp or more than " + .max_int + ".";
end;
L_Failed:
@@ -24,7 +26,7 @@ L_Failed:
end;
L_Success:
- gmlog "@getexp " + @args$;
+ gmlog "@" + .@n$ + " " + @args$;
message strcharinfo(0), .@n$+" : The operation succeeded.";
end;