From 79b7a40abaf1b4855cd3c828d96f61dd71750814 Mon Sep 17 00:00:00 2001 From: skotlex Date: Fri, 7 Jul 2006 19:42:47 +0000 Subject: - Status_calc_bl will no longer stop you from attacking/walking when the mode is changed unless the new mode no longer includes "can-attack"/"can-move" respectively. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7575 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 3 +++ src/map/status.c | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index c5fc31863..2597bc998 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. 2006/07/07 + * Status_calc_bl will no longer stop you from attacking/walking when the + mode is changed unless the new mode no longer includes + "can-attack"/"can-move" respectively. [Skotlex] * Should have fixed clif_item_sub to properly store pet egg/armor data. There should be no more "random refine levels" bugs related to these. [Skotlex] diff --git a/src/map/status.c b/src/map/status.c index bce2fd246..4b8a9f9f2 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -2648,8 +2648,10 @@ void status_calc_bl(struct block_list *bl, unsigned long flag) { status->mode = status_calc_mode(bl, sc, b_status->mode); //Since mode changed, reset their state. - unit_stop_attack(bl); - unit_stop_walking(bl,0); + if (!(status->mode&MD_CANATTACK)) + unit_stop_attack(bl); + if (!(status->mode&MD_CANMOVE)) + unit_stop_walking(bl,0); } // No status changes alter these yet. -- cgit v1.2.3-70-g09d2