summaryrefslogtreecommitdiff
path: root/src/map/script.cpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2013-03-01 11:45:15 -0800
committerBen Longbons <b.r.longbons@gmail.com>2013-03-01 13:56:33 -0800
commit30335063bff54c2b4782689eebdb3b2717e878fa (patch)
tree8cf4af06a0915e8741b51bbdcb19491d954b5c7f /src/map/script.cpp
parent777c013fe163348d1489fb9ca2e41cb135eec0d1 (diff)
downloadtmwa-30335063bff54c2b4782689eebdb3b2717e878fa.tar.gz
tmwa-30335063bff54c2b4782689eebdb3b2717e878fa.tar.bz2
tmwa-30335063bff54c2b4782689eebdb3b2717e878fa.tar.xz
tmwa-30335063bff54c2b4782689eebdb3b2717e878fa.zip
Convince skills to work
Diffstat (limited to 'src/map/script.cpp')
-rw-r--r--src/map/script.cpp24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/map/script.cpp b/src/map/script.cpp
index a39186e..f56cabb 100644
--- a/src/map/script.cpp
+++ b/src/map/script.cpp
@@ -2494,11 +2494,10 @@ void builtin_setskill(ScriptState *st)
int level;
struct map_session_data *sd;
- SkillID id = SkillID(conv_num(st, &(st->stack->stack_data[st->start + 2])));
+ SkillID id = static_cast<SkillID>(conv_num(st, &(st->stack->stack_data[st->start + 2])));
level = conv_num(st, &(st->stack->stack_data[st->start + 3]));
sd = script_rid2sd(st);
- sd->status.skill[id].id = level ? id : SkillID();
sd->status.skill[id].lv = level;
clif_skillinfoblock(sd);
}
@@ -3809,16 +3808,16 @@ void builtin_getactivatedpoolskilllist(ScriptState *st)
{
SkillID skill_id = pool_skills[i];
- if (sd->status.skill[skill_id].id == skill_id)
+ if (sd->status.skill[skill_id].lv)
{
pc_setreg(sd, add_str("@skilllist_id") + (count << 24),
- uint16_t(sd->status.skill[skill_id].id));
+ static_cast<uint16_t>(skill_id));
pc_setreg(sd, add_str("@skilllist_lv") + (count << 24),
- sd->status.skill[skill_id].lv);
+ sd->status.skill[skill_id].lv);
pc_setreg(sd, add_str("@skilllist_flag") + (count << 24),
- uint16_t(sd->status.skill[skill_id].flags));
+ static_cast<uint16_t>(sd->status.skill[skill_id].flags));
pc_setregstr(sd, add_str("@skilllist_name$") + (count << 24),
- skill_name(skill_id));
+ skill_name(skill_id));
++count;
}
}
@@ -3839,22 +3838,21 @@ void builtin_getunactivatedpoolskilllist(ScriptState *st)
{
SkillID skill_id = skill_pool_skills[i];
- if (sd->status.skill[skill_id].id == skill_id
+ if (sd->status.skill[skill_id].lv
&& !bool(sd->status.skill[skill_id].flags & SkillFlags::POOL_ACTIVATED))
{
pc_setreg(sd, add_str("@skilllist_id") + (count << 24),
- uint16_t(sd->status.skill[skill_id].id));
+ static_cast<uint16_t>(skill_id));
pc_setreg(sd, add_str("@skilllist_lv") + (count << 24),
- sd->status.skill[skill_id].lv);
+ sd->status.skill[skill_id].lv);
pc_setreg(sd, add_str("@skilllist_flag") + (count << 24),
- uint16_t(sd->status.skill[skill_id].flags));
+ static_cast<uint16_t>(sd->status.skill[skill_id].flags));
pc_setregstr(sd, add_str("@skilllist_name$") + (count << 24),
- skill_name(skill_id));
+ skill_name(skill_id));
++count;
}
}
pc_setreg(sd, add_str("@skilllist_count"), count);
-
}
static