summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/skill.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 9f7ec7b15..525beac6f 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3320,12 +3320,13 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
case SA_MONOCELL:
if (dstmd)
{
- if ( dstmd->status.mode&MD_BOSS )
+ int class_;
+ if ( sd && dstmd->status.mode&MD_BOSS )
{
clif_skill_fail(sd,skillid,0,0);
break;
}
- int class_ = skillid==SA_MONOCELL?1002:mob_get_random_id(2, 1, 0);
+ class_ = skillid==SA_MONOCELL?1002:mob_get_random_id(2, 1, 0);
clif_skill_nodamage(src,bl,skillid,skilllv,1);
mob_class_change(dstmd,class_);
if( tsc && dstmd->status.mode&MD_BOSS )
@@ -3339,7 +3340,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
}
break;
case SA_DEATH:
- if ( dstmd && dstmd->status.mode&MD_BOSS )
+ if ( sd && dstmd && dstmd->status.mode&MD_BOSS )
{
clif_skill_fail(sd,skillid,0,0);
break;