int skill_power_bl(dumb_ptr<block_list> bl, SkillID skill) { if (bl->bl_type == BL::PC) return skill_power(bl->is_player(), skill); else return 0; }
int skill_power_bl (struct block_list *bl, int skill) { if (bl->type == BL_PC) return skill_power ((struct map_session_data *) bl, skill); else return 0; }
int skill_pool_activate(dumb_ptr<map_session_data> sd, SkillID skill_id) { if (bool(sd->status.skill[skill_id].flags & SkillFlags::POOL_ACTIVATED)) return 0; // Already there else if (sd->status.skill[skill_id].lv && (skill_pool_size(sd) < skill_pool_max(sd))) { sd->status.skill[skill_id].flags |= SkillFlags::POOL_ACTIVATED; pc_calcstatus(sd, 0); MAP_LOG_PC(sd, "SKILL-ACTIVATE %d %d %d"_fmt, skill_id, sd->status.skill[skill_id].lv, skill_power(sd, skill_id)); return 0; } return 1; // failed }
int skill_pool_activate (struct map_session_data *sd, int skill_id) { if (sd->status.skill[skill_id].flags & SKILL_POOL_ACTIVATED) return 0; // Already there else if (sd->status.skill[skill_id].id == skill_id // knows the skill && (skill_pool_size (sd) < skill_pool_max (sd))) { sd->status.skill[skill_id].flags |= SKILL_POOL_ACTIVATED; pc_calcstatus (sd, 0); MAP_LOG_PC (sd, "SKILL-ACTIVATE %d %d %d", skill_id, sd->status.skill[skill_id].lv, skill_power (sd, skill_id)); return 0; } return 1; // failed }