diff options
author | zephyrus <zephyrus@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-09-18 10:06:00 +0000 |
---|---|---|
committer | zephyrus <zephyrus@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-09-18 10:06:00 +0000 |
commit | 6e9f95da3aa9b75d13ccd76a38b4628afc082d26 (patch) | |
tree | 9e2186a670d8d63d31df22f872d241126099688c | |
parent | 7e74a65aa0c120b3bf61751ccbd2b5ea4c83a840 (diff) | |
download | hercules-6e9f95da3aa9b75d13ccd76a38b4628afc082d26.tar.gz hercules-6e9f95da3aa9b75d13ccd76a38b4628afc082d26.tar.bz2 hercules-6e9f95da3aa9b75d13ccd76a38b4628afc082d26.tar.xz hercules-6e9f95da3aa9b75d13ccd76a38b4628afc082d26.zip |
- Some corrections to Basilica.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13217 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | src/map/map.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 19 |
2 files changed, 11 insertions, 10 deletions
diff --git a/src/map/map.c b/src/map/map.c index d1da19e7f..0312b926f 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -410,8 +410,6 @@ int map_moveblock(struct block_list *bl, int x1, int y1, unsigned int tick) status_change_end(bl, SC_CLOSECONFINE2, -1); // if (sc->data[SC_BLADESTOP]) //Won't stop when you are knocked away, go figure... // status_change_end(bl, SC_BLADESTOP, -1); - if (sc->data[SC_BASILICA]) - status_change_end(bl, SC_BASILICA, -1); if (sc->data[SC_TATAMIGAESHI]) status_change_end(bl, SC_TATAMIGAESHI, -1); if (sc->data[SC_MAGICROD]) diff --git a/src/map/skill.c b/src/map/skill.c index 5dbd6d8be..46c7ccef1 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7286,14 +7286,17 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns break; case UNT_BASILICA: - if( battle_check_target(&src->bl, bl, BCT_ENEMY) > 0 && !(status_get_mode(bl)&MD_BOSS) ) - { // knock-back any enemy except Boss - skill_blown(&src->bl, bl, 2, unit_getdir(bl), 0); - clif_fixpos(bl); - } + { + int i = battle_check_target(&src->bl, bl, BCT_ENEMY); + if( i > 0 && !(status_get_mode(bl)&MD_BOSS) ) + { // knock-back any enemy except Boss + skill_blown(&src->bl, bl, 2, unit_getdir(bl), 0); + clif_fixpos(bl); + } - if( sg->src_id != bl->id && battle_check_target(&src->bl, bl, BCT_ENEMY) <= 0 ) - status_change_start(bl, type, 100, src->bl.id, 0, 0, 0, sg->interval + 100, 0); + if( sg->src_id != bl->id && i <= 0 ) + sc_start4(bl, type, 100, 0, 0, 0, src->bl.id, sg->interval + 100); + } break; case UNT_GRAVITATION: @@ -7359,7 +7362,7 @@ int skill_unit_onout (struct skill_unit *src, struct block_list *bl, unsigned in break; case UNT_BASILICA: - if( sce && sce->val1 == src->val1 ) + if( sce && sce->val4 == src->bl.id ) status_change_end(bl,type,-1); break; |