Ejemplo n.º 1
0
/**
* Check if the skill is a valid homunculus skill based skill range or availablity in skill db
* @param skill_id
* @return -1 if invalid skill or skill index for homunculus skill_tree
*/
static short hom_skill_get_index(int skill_id) {
	if (!skill_get_index(skill_id))
		return -1;
	if ((skill_id -= HM_SKILLBASE) < 0 || skill_id >= MAX_HOMUNSKILL)
		return -1;
	return skill_id;
}
Ejemplo n.º 2
0
bool elemental_skillnotok(uint16 skill_id, struct elemental_data *ed) {
	uint16 idx = skill_get_index(skill_id);
	nullpo_retr(1,ed);

	if (idx == 0)
		return false; // invalid skill id

	return skill_isNotOk(skill_id,ed->master);
}
Ejemplo n.º 3
0
int elemental_skillnotok(uint16 skill_id, struct elemental_data *ed) {
	int16 idx = skill_get_index(skill_id);
	nullpo_retr(1,ed);

	if( !idx )
		return 1; // Invalid skill id

	return skill_isNotOk(skill_id,ed->master);
}
Ejemplo n.º 4
0
int elemental_skillnotok (int skillid, struct elemental_data *ed)
{
	int i = skill_get_index (skillid);
	nullpo_retr (1, ed);

	if (i == 0)
		return 1; // invalid skill id

	return skillnotok (skillid, ed->master);
}
Ejemplo n.º 5
0
struct skill_condition elemental_skill_get_requirements(uint16 skill_id, uint16 skill_lv){
	struct skill_condition req;
	uint16 idx = skill_get_index(skill_id);

	memset(&req,0,sizeof(req));

	if( idx == 0 ) // invalid skill id
		return req;

	skill_lv = cap_value(skill_lv, 1, MAX_SKILL_LEVEL);

	req.hp = skill_db[idx]->require.hp[skill_lv-1];
	req.sp = skill_db[idx]->require.sp[skill_lv-1];

	return req;
}
Ejemplo n.º 6
0
struct skill_condition elemental_skill_get_requirements(uint16 skill_id, uint16 skill_lv) {
	struct skill_condition req;
	int idx = skill_get_index(skill_id);

	memset(&req,0,sizeof(req));

	if(idx == 0)   // invalid skill id
		return req;

	if(skill_lv < 1 || skill_lv > MAX_SKILL_LEVEL)
		return req;

	req.hp = skill_db[idx].hp[skill_lv-1];
	req.sp = skill_db[idx].sp[skill_lv-1];

	return req;
}
Ejemplo n.º 7
0
bool elemental_skillnotok(uint16 skill_id, struct elemental_data *ed) {
	uint16 idx = skill_get_index(skill_id);
	nullpo_retr(1,ed);
	return idx == 0 ? false : skill_isNotOk(skill_id,ed->master); // return false or check if it,s ok for master as well
}