diff options
-rw-r--r-- | src/char/char.c | 7 | ||||
-rw-r--r-- | src/map/skill.c | 4 |
2 files changed, 4 insertions, 7 deletions
diff --git a/src/char/char.c b/src/char/char.c index 7dfb6861c..ac5a9a66c 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -3683,11 +3683,8 @@ static void char_delete2_accept(int fd, struct char_session_data* sd) } // refresh character list cache - for(k = i; k < MAX_CHARS-1; k++) { - sd->found_char[k] = sd->found_char[k+1]; - } - sd->found_char[MAX_CHARS-1] = -1; - + sd->found_char[i] = -1; + char_delete2_accept_ack(fd, char_id, 1); } diff --git a/src/map/skill.c b/src/map/skill.c index dc89f3170..4763b5667 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7892,8 +7892,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui case AB_CLEMENTIA: case AB_CANTO: { - int bless_lv = pc->checkskill(sd,AL_BLESSING) + (sd->status.job_level / 10); - int agi_lv = pc->checkskill(sd,AL_INCAGI) + (sd->status.job_level / 10); + int bless_lv = sd ? ( pc->checkskill(sd,AL_BLESSING) + (sd->status.job_level / 10) ) : 10; + int agi_lv = sd ? ( pc->checkskill(sd,AL_INCAGI) + (sd->status.job_level / 10) ) : 10; if( sd == NULL || sd->status.party_id == 0 || flag&1 ) clif->skill_nodamage(bl, bl, skill_id, skill_lv, sc_start(bl,type,100, (skill_id == AB_CLEMENTIA)? bless_lv : (skill_id == AB_CANTO)? agi_lv : skill_lv, skill->get_time(skill_id,skill_lv))); |