summaryrefslogtreecommitdiff
path: root/src/map/skill.h
diff options
context:
space:
mode:
authorFate <fate-tmw@googlemail.com>2009-09-26 18:08:42 +0000
committerFate <fate-tmw@googlemail.com>2009-09-26 18:08:42 +0000
commit3ef2cb492970da40f82df9643c4cfc570bc3aa62 (patch)
tree16e071b00b764db07d60f7872756bf79c6044dfe /src/map/skill.h
parentf9f63203fb461e69a9a422d160986daa78eecc51 (diff)
downloadtmwa-3ef2cb492970da40f82df9643c4cfc570bc3aa62.tar.gz
tmwa-3ef2cb492970da40f82df9643c4cfc570bc3aa62.tar.bz2
tmwa-3ef2cb492970da40f82df9643c4cfc570bc3aa62.tar.xz
tmwa-3ef2cb492970da40f82df9643c4cfc570bc3aa62.zip
Initial support for skill pools (available via at commands and
untested scripting commands.) These changes also affect the format of the skill_db.txt file.
Diffstat (limited to 'src/map/skill.h')
-rw-r--r--src/map/skill.h31
1 files changed, 22 insertions, 9 deletions
diff --git a/src/map/skill.h b/src/map/skill.h
index faff9a9..0f7b369 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -50,6 +50,7 @@ int skill_get_inf( int id );
int skill_get_pl( int id );
int skill_get_nk( int id );
int skill_get_max( int id );
+int skill_get_max_raise( int id );
int skill_get_range( int id , int lv );
int skill_get_hp( int id ,int lv );
int skill_get_mhp( int id ,int lv );
@@ -373,7 +374,7 @@ enum {
MC_VENDING,
MC_MAMMONITE,
- AC_OWL,
+ AC_OWL = 45,
AC_VULTURE,
AC_CONCENTRATION,
AC_DOUBLE,
@@ -383,7 +384,7 @@ enum {
TF_MISS,
TF_STEAL,
TF_HIDING,
- TF_POISON, // 52
+ TF_POISON,
TF_DETOXIFY,
ALL_RESURRECTION,
@@ -691,12 +692,19 @@ enum {
TMW_SKILLPOOL = 339, // skill pool size
TMW_MAGIC = 340,
- TMW_MAGIC_LIFE,
- TMW_MAGIC_WAR,
- TMW_MAGIC_TRANSMUTE,
- TMW_MAGIC_NATURE,
- TMW_MAGIC_ETHER,
- TMW_MAGIC_END,
+ TMW_MAGIC_LIFE = 341,
+ TMW_MAGIC_WAR = 342,
+ TMW_MAGIC_TRANSMUTE = 343,
+ TMW_MAGIC_NATURE = 344,
+ TMW_MAGIC_ETHER = 345,
+ TMW_MAGIC_DARK = 346,
+ TMW_MAGIC_LIGHT = 347,
+
+ TMW_BRAWLING = 350,
+ TMW_LUCKY_COUNTER = 351,
+ TMW_SPEED = 352,
+ TMW_RESIST_POISON = 353,
+ TMW_ASTRAL_SOUL = 354,
LK_AURABLADE = 355,
LK_PARRYING,
@@ -832,17 +840,22 @@ enum {
// Max. # of skills that may be classified as pool skills in db/skill_db.txt
#define MAX_POOL_SKILLS 128
+extern int skill_pool_skills[MAX_POOL_SKILLS]; // All pool skills
+extern int skill_pool_skills_size; // Number of entries in skill_pool_skills
+
int skill_pool(struct map_session_data *sd, int *skills); // Yields all active skills in the skill pool; no more than MAX_SKILL_POOL. Return is number of skills.
int skill_pool_size(struct map_session_data *sd);
int skill_pool_max(struct map_session_data *sd); // Max. number of pool skills
void skill_pool_empty(struct map_session_data *sd); // Deactivate all pool skills
int skill_pool_activate(struct map_session_data *sd, int skill); // Skill into skill pool. Return is zero iff okay.
-int skill_pool_is_activated(struct map_session_data *sd, int skill); // Skill into skill pool. Return is nonzero when activated.
+int skill_pool_is_activated(struct map_session_data *sd, int skill); // Skill into skill pool. Return is zero when activated.
int skill_pool_deactivate(struct map_session_data *sd, int skill); // Skill out of skill pool. Return is zero iff okay.
char *skill_name(int skill); // Yield configurable skill name
int skill_stat(int skill); // Yields the stat associated with a skill. Returns zero if none, or SP_STR, SP_VIT, ... otherwise
int skill_power(struct map_session_data *sd, int skill); // Yields the power of a skill. This is zero if the skill is unknown or if it's a pool skill that is outside of the skill pool,
// otherwise a value from 0 to 255 (with 200 being the `normal maximum')
+int skill_power_bl(struct block_list *bl, int skill); // Yields the power of a skill. This is zero if the skill is unknown or if it's a pool skill that is outside of the skill pool,
+ // otherwise a value from 0 to 255 (with 200 being the `normal maximum')
#endif