|
@@ -1030,20 +1030,21 @@ int chrif_divorceack(uint32 char_id, int partner_id) {
|
|
*------------------------------------------*/
|
|
*------------------------------------------*/
|
|
int chrif_deadopt(int father_id, int mother_id, int child_id) {
|
|
int chrif_deadopt(int father_id, int mother_id, int child_id) {
|
|
struct map_session_data* sd;
|
|
struct map_session_data* sd;
|
|
|
|
+ int idx = skill_get_index(WE_CALLBABY);
|
|
|
|
|
|
if( father_id && ( sd = map_charid2sd(father_id) ) != NULL && sd->status.child == child_id ) {
|
|
if( father_id && ( sd = map_charid2sd(father_id) ) != NULL && sd->status.child == child_id ) {
|
|
sd->status.child = 0;
|
|
sd->status.child = 0;
|
|
- sd->status.skill[WE_CALLBABY].id = 0;
|
|
|
|
- sd->status.skill[WE_CALLBABY].lv = 0;
|
|
|
|
- sd->status.skill[WE_CALLBABY].flag = SKILL_FLAG_PERMANENT;
|
|
|
|
|
|
+ sd->status.skill[idx].id = 0;
|
|
|
|
+ sd->status.skill[idx].lv = 0;
|
|
|
|
+ sd->status.skill[idx].flag = SKILL_FLAG_PERMANENT;
|
|
clif_deleteskill(sd,WE_CALLBABY);
|
|
clif_deleteskill(sd,WE_CALLBABY);
|
|
}
|
|
}
|
|
|
|
|
|
if( mother_id && ( sd = map_charid2sd(mother_id) ) != NULL && sd->status.child == child_id ) {
|
|
if( mother_id && ( sd = map_charid2sd(mother_id) ) != NULL && sd->status.child == child_id ) {
|
|
sd->status.child = 0;
|
|
sd->status.child = 0;
|
|
- sd->status.skill[WE_CALLBABY].id = 0;
|
|
|
|
- sd->status.skill[WE_CALLBABY].lv = 0;
|
|
|
|
- sd->status.skill[WE_CALLBABY].flag = SKILL_FLAG_PERMANENT;
|
|
|
|
|
|
+ sd->status.skill[idx].id = 0;
|
|
|
|
+ sd->status.skill[idx].lv = 0;
|
|
|
|
+ sd->status.skill[idx].flag = SKILL_FLAG_PERMANENT;
|
|
clif_deleteskill(sd,WE_CALLBABY);
|
|
clif_deleteskill(sd,WE_CALLBABY);
|
|
}
|
|
}
|
|
|
|
|