diff options
Diffstat (limited to 'world/map/npc/commands/zeny.txt')
-rw-r--r-- | world/map/npc/commands/zeny.txt | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/world/map/npc/commands/zeny.txt b/world/map/npc/commands/zeny.txt index 9215637a..94c02c4b 100644 --- a/world/map/npc/commands/zeny.txt +++ b/world/map/npc/commands/zeny.txt @@ -1,10 +1,12 @@ -|script|@zeny|32767 { - if (GM < get(.zeny, "GM") && GM < G_SYSOP) goto L_GM; callfunc "argv_splitter"; + set .@n$, if_then_else(@argv$[1] != "", "char", "") + "zeny"; + if (GM < get(.zeny, "GM") && GM < G_SYSOP) goto L_GM; // check if you can use it on self set .@target_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 < get(.charzeny, "GM") && GM < G_SYSOP) goto L_GM; // when target is not self, use charzeny permission if (@argv$[0] == "--") goto L_Remove; if (@argv$[0] == "---") goto L_RemoveAll; if (@argv$[0] == "++") goto L_Max; @@ -51,21 +53,21 @@ L_MaybeRemoveBank: L_OutOfBounds: // XXX: maybe we could also take from other chars from the same accout? - message strcharinfo(0), "zeny : Impossible to proceed! This would cause the player to have less than 0 zeny or more than " + .max_int + "."; + message strcharinfo(0), .@n$+" : Impossible to proceed! This would cause the player to have less than 0 zeny or more than " + .max_int + "."; end; L_Failed: // XXX: should we allow GMs to change zeny of users that are not logged in? - message strcharinfo(0), "zeny : Impossible to attach to the target player."; + message strcharinfo(0), .@n$+" : Impossible to attach to the target player. Did you try putting the name in \"quotation marks\"?"; end; L_Success: gmlog "@zeny " + @args$; - message strcharinfo(0), "zeny : The operation succeeded."; + message strcharinfo(0), .@n$+" : The operation succeeded."; end; L_GM: - message strcharinfo(0), "zeny : GM command is level "+ get(.zeny, "GM") +", but you are level " + GM; + message strcharinfo(0), .@n$+" : GM command is level "+ get(if_then_else(@argv$[1] != "", .charzeny, .zeny), "GM") +", but you are level " + GM; end; OnInit: |