diff options
author | Haru <haru@dotalux.com> | 2016-12-02 20:10:44 +0100 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2016-12-03 15:38:56 +0100 |
commit | 0f5fdca8945ec3afd5ba2e67a9d414f1ef5565c3 (patch) | |
tree | 5f1bb716cdc3b44f9c2ffd6f909047657f234844 /src/map/script.c | |
parent | 76801cdf48a979728034cb81b81c989f7f655f5a (diff) | |
download | hercules-0f5fdca8945ec3afd5ba2e67a9d414f1ef5565c3.tar.gz hercules-0f5fdca8945ec3afd5ba2e67a9d414f1ef5565c3.tar.bz2 hercules-0f5fdca8945ec3afd5ba2e67a9d414f1ef5565c3.tar.xz hercules-0f5fdca8945ec3afd5ba2e67a9d414f1ef5565c3.zip |
Ensure that pc->addfame() increments the correct fame points
The function now takes the rank type as argument, rather than guessing
it from the character's class. If the wrong fame point type for the
current character is requested, the request is ignored.
This fixes some (unofficial) edge cases where a Taekwon or an Alchemist
refined a signed item, they could obtain rank points.
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'src/map/script.c')
-rw-r--r-- | src/map/script.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/map/script.c b/src/map/script.c index f876f1072..27db206cf 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -9168,15 +9168,15 @@ BUILDIN(successrefitem) sd->status.char_id == (int)MakeDWord(sd->status.inventory[i].card[2],sd->status.inventory[i].card[3]) ) { // Fame point system [DracoRPG] switch (sd->inventory_data[i]->wlv) { - case 1: - pc->addfame(sd,1); // Success to refine to +10 a lv1 weapon you forged = +1 fame point - break; - case 2: - pc->addfame(sd,25); // Success to refine to +10 a lv2 weapon you forged = +25 fame point - break; - case 3: - pc->addfame(sd,1000); // Success to refine to +10 a lv3 weapon you forged = +1000 fame point - break; + case 1: + pc->addfame(sd, RANKTYPE_BLACKSMITH, 1); // Success to refine to +10 a lv1 weapon you forged = +1 fame point + break; + case 2: + pc->addfame(sd, RANKTYPE_BLACKSMITH, 25); // Success to refine to +10 a lv2 weapon you forged = +25 fame point + break; + case 3: + pc->addfame(sd, RANKTYPE_BLACKSMITH, 1000); // Success to refine to +10 a lv3 weapon you forged = +1000 fame point + break; } } } |