diff options
author | Matias <matiassw@gmail.com> | 2013-06-25 02:46:11 -0400 |
---|---|---|
committer | Matias <matiassw@gmail.com> | 2013-06-25 02:46:11 -0400 |
commit | 7c81bc0fb6817748ea38cd1bbd440a1c46811131 (patch) | |
tree | 9f8b99ba62a01b0822ae0a8b5f58981b36eb524e | |
parent | dc5c72590f286125f1f1aad8321a80127b0ed9d8 (diff) | |
download | hercules-7c81bc0fb6817748ea38cd1bbd440a1c46811131.tar.gz hercules-7c81bc0fb6817748ea38cd1bbd440a1c46811131.tar.bz2 hercules-7c81bc0fb6817748ea38cd1bbd440a1c46811131.tar.xz hercules-7c81bc0fb6817748ea38cd1bbd440a1c46811131.zip |
- Fixing an issue with Ensemble Songs buffing non-party members and not clearing once leaving party. (Allowing you to walk off the AoE and keep the buff)
-rw-r--r-- | src/map/party.c | 7 | ||||
-rw-r--r-- | src/map/status.c | 9 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/map/party.c b/src/map/party.c index 8a632a8ef..18a426364 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -573,7 +573,12 @@ int party_member_withdraw(int party_id, int account_id, int char_id) if( p->instance_id ) instance_check_kick(sd); } - + if (sd && sd->sc.data[SC_DANCING]) { + status_change_end(&sd->bl, SC_DANCING, INVALID_TIMER); + status_change_end(&sd->bl, SC_DRUMBATTLE, INVALID_TIMER); + status_change_end(&sd->bl, SC_NIBELUNGEN, INVALID_TIMER); + status_change_end(&sd->bl, SC_SIEGFRIED, INVALID_TIMER); + } return 0; } diff --git a/src/map/status.c b/src/map/status.c index b7e906910..a6acaf874 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6514,6 +6514,15 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val undead_flag = battle->check_undead(status->race,status->def_ele); //Check for inmunities / sc fails switch (type) { + case SC_DRUMBATTLE: + case SC_NIBELUNGEN: + case SC_INTOABYSS: + case SC_SIEGFRIED: + if( bl->type == BL_PC) { + struct map_session_data *sd = BL_CAST(BL_PC,bl); + if (!sd->status.party_id) return 0; + } + break; case SC_ANGRIFFS_MODUS: case SC_GOLDENE_FERSE: if ((type==SC_GOLDENE_FERSE && sc->data[SC_ANGRIFFS_MODUS]) |