diff options
author | Fedja Beader <fedja@protonmail.ch> | 2023-06-06 22:30:37 +0000 |
---|---|---|
committer | Jesusalva Jesusalva <jesusalva@themanaworld.org> | 2023-06-06 22:30:37 +0000 |
commit | 51ca34d96313107b3b1d9562da9e2db7df3ff2b7 (patch) | |
tree | 6ec2d02be8f305c493f63c9f05880aa367061bfe /npc/functions | |
parent | bf31cc3d6572bb305299da9f54efc74ad6a152fe (diff) | |
download | serverdata-51ca34d96313107b3b1d9562da9e2db7df3ff2b7.tar.gz serverdata-51ca34d96313107b3b1d9562da9e2db7df3ff2b7.tar.bz2 serverdata-51ca34d96313107b3b1d9562da9e2db7df3ff2b7.tar.xz serverdata-51ca34d96313107b3b1d9562da9e2db7df3ff2b7.zip |
Increase job xp gain on siege maps to match base xp rate increase.
Also, from now on, town reputation affects this bonus.
This however reduces total xp up in siege maps.
Diffstat (limited to 'npc/functions')
-rw-r--r-- | npc/functions/siege.txt | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/npc/functions/siege.txt b/npc/functions/siege.txt index 33375d314..597f96993 100644 --- a/npc/functions/siege.txt +++ b/npc/functions/siege.txt @@ -176,12 +176,18 @@ function script siege_setup { if (.@m$ != "003-1") pvpon(.@m$); setmapflag(.@m$,mf_zone,"MMO"); // MMO Zone: Overrides GM Commands - setmapflag(.@m$,mf_bexp,rand2(135,142)); // 35~42% EXP UP on siege maps + .@tn$ = MapToLoc(.@m$, false); if (getd("$"+.@tn$+"_SIEGEXP")) { setmapflag(.@m$, mf_bexp, 300); // Triple EXP is on + setmapflag(.@m$, mf_jexp, 300); // Triple EXP is on kamibroadcast("Experience for siege map has been set to 3×!", "INFORMATION"); setd("$"+.@tn$+"_SIEGEXP", 0); + } else { + .@reputation = getd("$"+.@tn$+"_REPUTATION"); + .@exp_rate = rand2(105, 105 + (30 * .@reputation/100)); // 5~35% EXP UP on siege maps + setmapflag(.@m$, mf_bexp, .@exp_rate); + setmapflag(.@m$, mf_jexp, .@exp_rate); } return; } @@ -234,8 +240,10 @@ function script siege_revert { changemusic .@m$, "caketown.ogg"; // :> pvpoff(.@m$); removemapflag(.@m$,mf_bexp); + removemapflag(.@m$,mf_jexp); removemapflag(.@m$,mf_nosave); setmapflag(.@m$,mf_bexp,100); + setmapflag(.@m$,mf_jexp,100); killmonsterall(.@m$); return; } |