Corrects Spirit/Charm absorption behaviour on Ninja Spirit Charm (#2980)
* Fixes #2087. * The conditional was missing a check on Kagero/Oboro's Spirit Charm, therefore not removing the charms nor applying SP regeneration on caster. Thanks to @Chisee!
This commit is contained in:
parent
ad5416e271
commit
794f497914
@ -6968,7 +6968,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
|
||||
case MO_ABSORBSPIRITS:
|
||||
i = 0;
|
||||
if (dstsd && dstsd->spiritball && (sd == dstsd || map_flag_vs(src->m) || (sd && sd->duel_group && sd->duel_group == dstsd->duel_group)) &&
|
||||
if (dstsd && (sd == dstsd || map_flag_vs(src->m) || (sd && sd->duel_group && sd->duel_group == dstsd->duel_group)) &&
|
||||
((dstsd->class_&MAPID_BASEMASK) != MAPID_GUNSLINGER || (dstsd->class_&MAPID_UPPERMASK) != MAPID_REBELLION)) { // split the if for readability, and included gunslingers in the check so that their coins cannot be removed [Reddozen]
|
||||
if (dstsd->spiritball > 0) {
|
||||
i = dstsd->spiritball * 7;
|
||||
@ -9961,7 +9961,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
|
||||
case SR_ASSIMILATEPOWER:
|
||||
if (flag&1) {
|
||||
i = 0;
|
||||
if (dstsd && dstsd->spiritball && (sd == dstsd || map_flag_vs(src->m)) && (dstsd->class_&MAPID_BASEMASK)!=MAPID_GUNSLINGER) {
|
||||
if (dstsd && (sd == dstsd || map_flag_vs(src->m)) && (dstsd->class_&MAPID_BASEMASK)!=MAPID_GUNSLINGER) {
|
||||
if (dstsd->spiritball > 0) {
|
||||
i = dstsd->spiritball;
|
||||
pc_delspiritball(dstsd,dstsd->spiritball,0);
|
||||
|
Loading…
x
Reference in New Issue
Block a user