diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/battle.c | 1 | ||||
-rw-r--r-- | src/map/skill.c | 5 | ||||
-rw-r--r-- | src/map/status.c | 5 |
3 files changed, 5 insertions, 6 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index c17977151..bf830de1a 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2527,6 +2527,7 @@ struct Damage battle_calc_magic_attack( case PR_SANCTUARY:
ad.blewcount|=0x10000;
case AL_HEAL:
+ case PR_BENEDICTIO:
case WZ_FIREPILLAR:
flag.imdef = 1;
break;
diff --git a/src/map/skill.c b/src/map/skill.c index d05e845ec..716d6ef17 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4097,7 +4097,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in skill_get_splash(skillid, skilllv), BL_CHAR,
src, skillid, skilllv, tick, flag|BCT_ENEMY,
skill_castend_damage_id);
- battle_damage(src, src, skill_area_temp[2], 0);
+ battle_damage(src, src, status_get_max_hp(src), 0);
break;
/* パ?ティスキル */
@@ -5978,6 +5978,9 @@ int skill_castend_pos2( struct block_list *src, int x,int y,int skillid,int skil nullpo_retr(0, src);
+ if(status_isdead(src))
+ return 0;
+
if(src->type==BL_PC)
sd=(struct map_session_data *)src;
diff --git a/src/map/status.c b/src/map/status.c index 9358aad07..0edb39ccb 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -354,11 +354,6 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int int mode, race, hide_flag;
struct status_change *sc=NULL, *tsc;
- if (src && status_isdead(src))
- return 0;
- if (target && status_isdead(target) && skill_num != ALL_RESURRECTION && skill_num != PR_REDEMPTIO)
- return 0;
-
mode = src?status_get_mode(src):MD_CANATTACK;
if (!skill_num && !(mode&MD_CANATTACK))
|