diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/clif.c | 3 | ||||
-rw-r--r-- | src/map/skill.c | 8 | ||||
-rw-r--r-- | src/map/status.c | 4 | ||||
-rw-r--r-- | src/map/status.h | 4 |
4 files changed, 13 insertions, 6 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 65df60718..9ec2f9cfb 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -11988,6 +11988,9 @@ void clif_parse_AutoRevive(int fd, struct map_session_data *sd) if (item_position < 0) return; + if (sd->sc.data[SC_HELLPOWER]) //Cannot res while under the effect of SC_HELLPOWER. + return; + if (!status_revive(&sd->bl, 100, 100)) return; diff --git a/src/map/skill.c b/src/map/skill.c index 4c34094b1..2f2a7e6b0 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -3851,7 +3851,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in if( lv > battle_config.devotion_level_difference || // Level difference requeriments (dstsd->sc.data[type] && dstsd->sc.data[type]->val1 != src->id) || // Cannot Devote a player devoted from another source (skillid == ML_DEVOTION && (!mer || mer != dstsd->md)) || // Mercenary only can devote owner - (dstsd->class_&MAPID_UPPERMASK) == MAPID_CRUSADER ) // Crusader Cannot be devoted + (dstsd->class_&MAPID_UPPERMASK) == MAPID_CRUSADER || // Crusader Cannot be devoted + (dstsd->sc.data[SC_HELLPOWER])) // Players affected by SC_HELLPOWERR cannot be devoted. { if( sd ) clif_skill_fail(sd,skillid,0,0); @@ -4727,7 +4728,10 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in case SC_READYSTORM: case SC_READYDOWN: case SC_READYTURN: case SC_READYCOUNTER:case SC_DODGE: case SC_WARM: case SC_SPEEDUP1: case SC_AUTOTRADE: case SC_CRITICALWOUND: - case SC_JEXPBOOST: case SC_INVINCIBLE: case SC_INVINCIBLEOFF: + case SC_JEXPBOOST: case SC_INVINCIBLE: case SC_INVINCIBLEOFF: + case SC_HELLPOWER: case SC_MANU_ATK: case SC_MANU_DEF: + case SC_SPL_ATK: case SC_SPL_DEF: case SC_MANU_MATK: + case SC_SPL_MATK: continue; case SC_ASSUMPTIO: if( bl->type == BL_MOB ) diff --git a/src/map/status.c b/src/map/status.c index 72d020d5f..59b77afa7 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -463,8 +463,8 @@ void initChangeTables(void) StatusIconChangeTable[SC_ASPDPOTION1] = SI_ASPDPOTION1; StatusIconChangeTable[SC_ASPDPOTION2] = SI_ASPDPOTION2; StatusIconChangeTable[SC_ASPDPOTION3] = SI_ASPDPOTIONINFINITY; - StatusIconChangeTable[SC_SPEEDUP0] = SI_SPEEDPOTION1; - StatusIconChangeTable[SC_SPEEDUP1] = SI_SPEEDPOTION2; + StatusIconChangeTable[SC_SPEEDUP0] = SI_MOVHASTE_HORSE; + StatusIconChangeTable[SC_SPEEDUP1] = SI_SPEEDPOTION1; StatusIconChangeTable[SC_INCSTR] = SI_INCSTR; StatusIconChangeTable[SC_MIRACLE] = SI_SPIRIT; StatusIconChangeTable[SC_INTRAVISION] = SI_INTRAVISION; diff --git a/src/map/status.h b/src/map/status.h index 664fcd520..e2ec346a4 100644 --- a/src/map/status.h +++ b/src/map/status.h @@ -372,7 +372,7 @@ enum si_type { SI_ASPDPOTION2 = 39, SI_ASPDPOTIONINFINITY = 40, SI_SPEEDPOTION1 = 41, - SI_SPEEDPOTION2 = 42, +// SI_MOVHASTE_INFINITY = 42, // SI_AUTOCOUNTER = 43, // SI_SPLASHER = 44, // SI_ANKLESNARE = 45, @@ -619,7 +619,7 @@ enum si_type { SI_CRITICALWOUND = 286, // SI_NPC_DEFENDER = 287, // SI_NOACTION_WAIT = 288, -// SI_MOVHASTE_HORSE = 289, + SI_MOVHASTE_HORSE = 289, SI_DEF_RATE = 290, SI_MDEF_RATE = 291, SI_INCHEALRATE = 292, |