diff options
author | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-07-22 01:26:48 +0000 |
---|---|---|
committer | cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-07-22 01:26:48 +0000 |
commit | 04ce57ecc743ec95e79fedab7e00bc650e386d23 (patch) | |
tree | b9a0abcfed19b711b343ef32f37e2f84bea2512e /src/map/status.c | |
parent | 48ae82a0d0bd24c8ba9ee622930f4d74009843e9 (diff) | |
download | hercules-04ce57ecc743ec95e79fedab7e00bc650e386d23.tar.gz hercules-04ce57ecc743ec95e79fedab7e00bc650e386d23.tar.bz2 hercules-04ce57ecc743ec95e79fedab7e00bc650e386d23.tar.xz hercules-04ce57ecc743ec95e79fedab7e00bc650e386d23.zip |
Added a new configuration option to allow either weapon switching to cancel SC_DANCING or not.
Fixed an issue where movement is frozen (caster) with Longing for Freedom (walking outside of the cast).
Added checks related to dancing/ensemble skills to prevent frozen characters.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16470 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/map/status.c b/src/map/status.c index 1b12c2ae4..80d194774 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -8858,8 +8858,15 @@ int status_change_end_(struct block_list* bl, enum sc_type type, int tid, const {// end status on partner as well dsc = dsd->sc.data[SC_DANCING]; if(dsc) - { //This will prevent recursive loops. + { + struct status_change *tsc = status_get_sc(&dsd->bl); + + //This will prevent recursive loops. dsc->val2 = dsc->val4 = 0; + + // Set cant.move back to 0 to avoid character freezing. + tsc->cant.move = 0; + sc->cant.move = 0; status_change_end(&dsd->bl, SC_DANCING, INVALID_TIMER); } } |