diff options
-rw-r--r-- | db/const.txt | 4 | ||||
-rw-r--r-- | src/map/pc.c | 4 | ||||
-rw-r--r-- | src/map/skill.c | 2 | ||||
-rw-r--r-- | src/map/status.c | 3 | ||||
-rw-r--r-- | src/map/status.h | 3 | ||||
-rw-r--r-- | src/map/unit.c | 2 |
6 files changed, 12 insertions, 6 deletions
diff --git a/db/const.txt b/db/const.txt index 7ab0cd438..c27ee4f4b 100644 --- a/db/const.txt +++ b/db/const.txt @@ -1254,6 +1254,10 @@ SC_SUPER_STAR 572 SC_OKTOBERFEST 573 SC_STRANGELIGHTS 574 SC_DECORATION_OF_MUSIC 575 +SC__MAELSTROM 576 +SC__CHAOS 577 +SC__FEINTBOMB_MASTER 578 +SC_FALLENEMPIRE 579 e_gasp 0 e_what 1 diff --git a/src/map/pc.c b/src/map/pc.c index fb1fae2c7..1ab9b0e2e 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -8153,8 +8153,8 @@ bool pc_can_attack( struct map_session_data *sd, int target_id ) { sd->sc.data[SC_TRICKDEAD] || (sd->sc.data[SC_SIREN] && sd->sc.data[SC_SIREN]->val2 == target_id) || sd->sc.data[SC_BLADESTOP] || - sd->sc.data[SC_DEEP_SLEEP] /*|| - sd->sc.data[SC_FALLENEMPIRE]TODO*/) + sd->sc.data[SC_DEEP_SLEEP] || + sd->sc.data[SC_FALLENEMPIRE] ) return false; return true; diff --git a/src/map/skill.c b/src/map/skill.c index 0b012f3a6..6aa4fe706 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1245,7 +1245,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 sc_start(src, bl, SC_STUN, 1 + skill_lv, skill_lv, skill->get_time(skill_id, skill_lv)); break; case SR_FALLENEMPIRE: - sc_start(src, bl, SC_STOP, 100, skill_lv, skill->get_time(skill_id, skill_lv)); + sc_start(src, bl, SC_FALLENEMPIRE, 100, skill_lv, skill->get_time(skill_id, skill_lv)); break; case SR_WINDMILL: if( dstsd ) diff --git a/src/map/status.c b/src/map/status.c index 9c25aadc7..7a9d8b747 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -636,7 +636,7 @@ void initChangeTables(void) { **/ add_sc( SR_DRAGONCOMBO , SC_STUN ); add_sc( SR_EARTHSHAKER , SC_STUN ); - set_sc( SR_FALLENEMPIRE , SC_STOP/*SC_FALLENEMPIRE*/ , SI_FALLENEMPIRE , SCB_NONE ); + set_sc( SR_FALLENEMPIRE , SC_FALLENEMPIRE , SI_FALLENEMPIRE , SCB_NONE ); set_sc( SR_CRESCENTELBOW , SC_CRESCENTELBOW , SI_CRESCENTELBOW , SCB_NONE ); set_sc_with_vfx( SR_CURSEDCIRCLE , SC_CURSEDCIRCLE_TARGET, SI_CURSEDCIRCLE_TARGET , SCB_NONE ); set_sc( SR_LIGHTNINGWALK , SC_LIGHTNINGWALK , SI_LIGHTNINGWALK , SCB_NONE ); @@ -9200,6 +9200,7 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t // Cancel cast when get status [LuzZza] if (battle_config.sc_castcancel&bl->type) unit->skillcastcancel(bl, 0); + case SC_FALLENEMPIRE: case SC_WHITEIMPRISON: unit->stop_attack(bl); case SC_STOP: diff --git a/src/map/status.h b/src/map/status.h index bed0d9fbf..3beba35c4 100644 --- a/src/map/status.h +++ b/src/map/status.h @@ -712,7 +712,8 @@ typedef enum sc_type { SC__CHAOS, SC__FEINTBOMB_MASTER, - + SC_FALLENEMPIRE, + SC_MAX, //Automatically updated max, used in for's to check we are within bounds. } sc_type; diff --git a/src/map/unit.c b/src/map/unit.c index 4290778e6..78a85ba3e 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -921,7 +921,7 @@ int unit_can_move(struct block_list *bl) { || (sc->data[SC_GOSPEL] && sc->data[SC_GOSPEL]->val4 == BCT_SELF) // cannot move while gospel is in effect || (sc->data[SC_BASILICA] && sc->data[SC_BASILICA]->val4 == bl->id) // Basilica caster cannot move || sc->data[SC_STOP] - /*|| sc->data[SC_FALLENEMPIRE]TODO*/ + || sc->data[SC_FALLENEMPIRE] || sc->data[SC_RG_CCONFINE_M] || sc->data[SC_RG_CCONFINE_S] || sc->data[SC_GS_MADNESSCANCEL] |