diff options
author | ultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-12-01 22:48:05 +0000 |
---|---|---|
committer | ultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-12-01 22:48:05 +0000 |
commit | 6d2c353d0cb6afbeceeb4f3d40c56aa018183203 (patch) | |
tree | fd91f4e5e4128c45403632c7a9271826d072df0f /src | |
parent | 3c11e7169e1f9f888226f4a6fab6193d0b64044d (diff) | |
download | hercules-6d2c353d0cb6afbeceeb4f3d40c56aa018183203.tar.gz hercules-6d2c353d0cb6afbeceeb4f3d40c56aa018183203.tar.bz2 hercules-6d2c353d0cb6afbeceeb4f3d40c56aa018183203.tar.xz hercules-6d2c353d0cb6afbeceeb4f3d40c56aa018183203.zip |
* Fixed rare crash when using Flying Kick on clones (bugreport:2506)
* Corrected Flying Kick's debuff rules to match official servers
- only works on players
- soul linkers and stalkers with Preserve active are immune
- only removes Berserk Potion, Kaahi, Kaite, 1HQ, AAR and Soul Links
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13392 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 35 |
1 files changed, 9 insertions, 26 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 199c4f13f..2937a489c 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -796,37 +796,20 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int break; case TK_JUMPKICK: - //Cancel out Soul Linker status of the target. [Skotlex] - if (tsc->count) { - //Remove NORMAL potions effect. - if (tsc->data[SC_ASPDPOTION0] && !tsc->data[SC_ASPDPOTION0]->val4) - status_change_end(bl, SC_ASPDPOTION0, -1); - if (tsc->data[SC_ASPDPOTION1] && !tsc->data[SC_ASPDPOTION1]->val4) - status_change_end(bl, SC_ASPDPOTION1, -1); - if (tsc->data[SC_ASPDPOTION2] && !tsc->data[SC_ASPDPOTION2]->val4) - status_change_end(bl, SC_ASPDPOTION2, -1); - if (tsc->data[SC_ASPDPOTION3] && !tsc->data[SC_ASPDPOTION3]->val4) - status_change_end(bl, SC_ASPDPOTION3, -1); - if (tsc->data[SC_SPEEDUP0] && !tsc->data[SC_SPEEDUP0]->val4) - status_change_end(bl, SC_SPEEDUP0, -1); - if (tsc->data[SC_SPEEDUP1] && !tsc->data[SC_SPEEDUP1]->val4) - status_change_end(bl, SC_SPEEDUP1, -1); - // Stalkers who are preserved will no longer lose their link. - if (tsc->data[SC_SPIRIT] && !(dstsd->class_&MAPID_STALKER && tsc->data[SC_SPIRIT] && tsc->data[SC_PRESERVE])) + if( dstsd && dstsd->class_ != MAPID_SOUL_LINKER && !tsc->data[SC_PRESERVE] ) + {// debuff the following statuses + if (tsc->data[SC_SPIRIT]) status_change_end(bl, SC_SPIRIT, -1); - // Updated by Brainstorm to remove 'Ka' status effects and Link granted skills. - if (tsc->data[SC_KAIZEL]) - status_change_end(bl, SC_KAIZEL, -1); - if (tsc->data[SC_KAAHI]) - status_change_end(bl, SC_KAAHI, -1); - if (tsc->data[SC_KAUPE]) - status_change_end(bl, SC_KAUPE, -1); + if (tsc->data[SC_ADRENALINE2]) + status_change_end(bl, SC_ADRENALINE2, -1); if (tsc->data[SC_KAITE]) status_change_end(bl, SC_KAITE, -1); + if (tsc->data[SC_KAAHI]) + status_change_end(bl, SC_KAAHI, -1); if (tsc->data[SC_ONEHAND]) status_change_end(bl, SC_ONEHAND, -1); - if (tsc->data[SC_ADRENALINE2]) - status_change_end(bl, SC_ADRENALINE2, -1); + if (tsc->data[SC_ASPDPOTION2]) + status_change_end(bl, SC_ASPDPOTION2, -1); } break; case TK_TURNKICK: |