summaryrefslogtreecommitdiff
path: root/src/map/skill.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/skill.h')
-rw-r--r--src/map/skill.h3268
1 files changed, 1636 insertions, 1632 deletions
diff --git a/src/map/skill.h b/src/map/skill.h
index 90ebfc8be..265f2c7aa 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -12,210 +12,214 @@ struct skill_unit;
struct skill_unit_group;
struct status_change_entry;
-#define MAX_SKILL_DB MAX_SKILL
-#define MAX_SKILL_PRODUCE_DB 270
-#define MAX_PRODUCE_RESOURCE 12
-#define MAX_SKILL_ARROW_DB 150
-#define MAX_ARROW_RESOURCE 5
-#define MAX_SKILL_ABRA_DB 350
+#define MAX_SKILL_DB MAX_SKILL
+#define MAX_SKILL_PRODUCE_DB 270
+#define MAX_PRODUCE_RESOURCE 12
+#define MAX_SKILL_ARROW_DB 150
+#define MAX_ARROW_RESOURCE 5
+#define MAX_SKILL_ABRA_DB 350
#define MAX_SKILL_IMPROVISE_DB 50
#define MAX_SKILL_LEVEL 100
//Constants to identify the skill's inf value:
-enum e_skill_inf {
- INF_ATTACK_SKILL = 0x01,
- INF_GROUND_SKILL = 0x02,
- INF_SELF_SKILL = 0x04, // Skills casted on self where target is automatically chosen
- // 0x08 not assigned
- INF_SUPPORT_SKILL = 0x10,
- INF_TARGET_TRAP = 0x20,
+enum e_skill_inf
+{
+ INF_ATTACK_SKILL = 0x01,
+ INF_GROUND_SKILL = 0x02,
+ INF_SELF_SKILL = 0x04, // Skills casted on self where target is automatically chosen
+ // 0x08 not assigned
+ INF_SUPPORT_SKILL = 0x10,
+ INF_TARGET_TRAP = 0x20,
};
//Constants to identify a skill's nk value (damage properties)
//The NK value applies only to non INF_GROUND_SKILL skills
//when determining skill castend function to invoke.
-enum e_skill_nk {
- NK_NO_DAMAGE = 0x01,
- NK_SPLASH = 0x02|0x04, // 0x4 = splash & split
- NK_SPLASHSPLIT = 0x04,
- NK_NO_CARDFIX_ATK = 0x08,
- NK_NO_ELEFIX = 0x10,
- NK_IGNORE_DEF = 0x20,
- NK_IGNORE_FLEE = 0x40,
- NK_NO_CARDFIX_DEF = 0x80,
+enum e_skill_nk
+{
+ NK_NO_DAMAGE = 0x01,
+ NK_SPLASH = 0x02|0x04, // 0x4 = splash & split
+ NK_SPLASHSPLIT = 0x04,
+ NK_NO_CARDFIX_ATK = 0x08,
+ NK_NO_ELEFIX = 0x10,
+ NK_IGNORE_DEF = 0x20,
+ NK_IGNORE_FLEE = 0x40,
+ NK_NO_CARDFIX_DEF = 0x80,
};
//A skill with 3 would be no damage + splash: area of effect.
//Constants to identify a skill's inf2 value.
-enum e_skill_inf2 {
- INF2_QUEST_SKILL = 0x0001,
- INF2_NPC_SKILL = 0x0002, //NPC skills are those that players can't have in their skill tree.
- INF2_WEDDING_SKILL = 0x0004,
- INF2_SPIRIT_SKILL = 0x0008,
- INF2_GUILD_SKILL = 0x0010,
- INF2_SONG_DANCE = 0x0020,
- INF2_ENSEMBLE_SKILL = 0x0040,
- INF2_TRAP = 0x0080,
- INF2_TARGET_SELF = 0x0100, //Refers to ground placed skills that will target the caster as well (like Grandcross)
- INF2_NO_TARGET_SELF = 0x0200,
- INF2_PARTY_ONLY = 0x0400,
- INF2_GUILD_ONLY = 0x0800,
- INF2_NO_ENEMY = 0x1000,
- INF2_NOLP = 0x2000, // Spells that can ignore Land Protector
- INF2_CHORUS_SKILL = 0x4000, // Chorus skill
+enum e_skill_inf2
+{
+ INF2_QUEST_SKILL = 0x0001,
+ INF2_NPC_SKILL = 0x0002, //NPC skills are those that players can't have in their skill tree.
+ INF2_WEDDING_SKILL = 0x0004,
+ INF2_SPIRIT_SKILL = 0x0008,
+ INF2_GUILD_SKILL = 0x0010,
+ INF2_SONG_DANCE = 0x0020,
+ INF2_ENSEMBLE_SKILL = 0x0040,
+ INF2_TRAP = 0x0080,
+ INF2_TARGET_SELF = 0x0100, //Refers to ground placed skills that will target the caster as well (like Grandcross)
+ INF2_NO_TARGET_SELF = 0x0200,
+ INF2_PARTY_ONLY = 0x0400,
+ INF2_GUILD_ONLY = 0x0800,
+ INF2_NO_ENEMY = 0x1000,
+ INF2_NOLP = 0x2000, // Spells that can ignore Land Protector
+ INF2_CHORUS_SKILL = 0x4000, // Chorus skill
};
//Walk intervals at which chase-skills are attempted to be triggered.
#define WALK_SKILL_INTERVAL 5
// Flags passed to skill_attack/skill_area_sub
-enum e_skill_display {
- SD_LEVEL = 0x1000, // skill_attack will send -1 instead of skill level (affects display of some skills)
- SD_ANIMATION = 0x2000, // skill_attack will use '5' instead of the skill's 'type' (this makes skills show an animation)
- SD_SPLASH = 0x4000, // skill_area_sub will count targets in skill_area_temp[2]
- SD_PREAMBLE = 0x8000, // skill_area_sub will transmit a 'magic' damage packet (-30000 dmg) for the first target selected
+enum e_skill_display
+{
+ SD_LEVEL = 0x1000, // skill_attack will send -1 instead of skill level (affects display of some skills)
+ SD_ANIMATION = 0x2000, // skill_attack will use '5' instead of the skill's 'type' (this makes skills show an animation)
+ SD_SPLASH = 0x4000, // skill_area_sub will count targets in skill_area_temp[2]
+ SD_PREAMBLE = 0x8000, // skill_area_sub will transmit a 'magic' damage packet (-30000 dmg) for the first target selected
};
-#define MAX_SKILL_ITEM_REQUIRE 10
+#define MAX_SKILL_ITEM_REQUIRE 10
struct skill_condition {
- int weapon,ammo,ammo_qty,hp,sp,zeny,spiritball,mhp,state;
- int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
+ int weapon,ammo,ammo_qty,hp,sp,zeny,spiritball,mhp,state;
+ int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
};
// Database skills
struct s_skill_db {
- char name[NAME_LENGTH];
- char desc[40];
- int range[MAX_SKILL_LEVEL],hit,inf,element[MAX_SKILL_LEVEL],nk,splash[MAX_SKILL_LEVEL],max;
- int num[MAX_SKILL_LEVEL];
- int cast[MAX_SKILL_LEVEL],walkdelay[MAX_SKILL_LEVEL],delay[MAX_SKILL_LEVEL];
+ char name[NAME_LENGTH];
+ char desc[40];
+ int range[MAX_SKILL_LEVEL],hit,inf,element[MAX_SKILL_LEVEL],nk,splash[MAX_SKILL_LEVEL],max;
+ int num[MAX_SKILL_LEVEL];
+ int cast[MAX_SKILL_LEVEL],walkdelay[MAX_SKILL_LEVEL],delay[MAX_SKILL_LEVEL];
#ifdef RENEWAL_CAST
- int fixed_cast[MAX_SKILL_LEVEL];
+ int fixed_cast[MAX_SKILL_LEVEL];
#endif
- int upkeep_time[MAX_SKILL_LEVEL],upkeep_time2[MAX_SKILL_LEVEL],cooldown[MAX_SKILL_LEVEL];
- int castcancel,cast_def_rate;
- int inf2,maxcount[MAX_SKILL_LEVEL],skill_type;
- int blewcount[MAX_SKILL_LEVEL];
- int hp[MAX_SKILL_LEVEL],sp[MAX_SKILL_LEVEL],mhp[MAX_SKILL_LEVEL],hp_rate[MAX_SKILL_LEVEL],sp_rate[MAX_SKILL_LEVEL],zeny[MAX_SKILL_LEVEL];
- int weapon,ammo,ammo_qty[MAX_SKILL_LEVEL],state,spiritball[MAX_SKILL_LEVEL];
- int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
- int castnodex[MAX_SKILL_LEVEL], delaynodex[MAX_SKILL_LEVEL];
- int nocast;
- int unit_id[2];
- int unit_layout_type[MAX_SKILL_LEVEL];
- int unit_range[MAX_SKILL_LEVEL];
- int unit_interval;
- int unit_target;
- int unit_flag;
+ int upkeep_time[MAX_SKILL_LEVEL],upkeep_time2[MAX_SKILL_LEVEL],cooldown[MAX_SKILL_LEVEL];
+ int castcancel,cast_def_rate;
+ int inf2,maxcount[MAX_SKILL_LEVEL],skill_type;
+ int blewcount[MAX_SKILL_LEVEL];
+ int hp[MAX_SKILL_LEVEL],sp[MAX_SKILL_LEVEL],mhp[MAX_SKILL_LEVEL],hp_rate[MAX_SKILL_LEVEL],sp_rate[MAX_SKILL_LEVEL],zeny[MAX_SKILL_LEVEL];
+ int weapon,ammo,ammo_qty[MAX_SKILL_LEVEL],state,spiritball[MAX_SKILL_LEVEL];
+ int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
+ int castnodex[MAX_SKILL_LEVEL], delaynodex[MAX_SKILL_LEVEL];
+ int nocast;
+ int unit_id[2];
+ int unit_layout_type[MAX_SKILL_LEVEL];
+ int unit_range[MAX_SKILL_LEVEL];
+ int unit_interval;
+ int unit_target;
+ int unit_flag;
};
extern struct s_skill_db skill_db[MAX_SKILL_DB];
-#define MAX_SKILL_UNIT_LAYOUT 50
-#define MAX_SQUARE_LAYOUT 5 // 11*11 Placement of a maximum unit
+#define MAX_SKILL_UNIT_LAYOUT 50
+#define MAX_SQUARE_LAYOUT 5 // 11*11 Placement of a maximum unit
#define MAX_SKILL_UNIT_COUNT ((MAX_SQUARE_LAYOUT*2+1)*(MAX_SQUARE_LAYOUT*2+1))
struct s_skill_unit_layout {
- int count;
- int dx[MAX_SKILL_UNIT_COUNT];
- int dy[MAX_SKILL_UNIT_COUNT];
+ int count;
+ int dx[MAX_SKILL_UNIT_COUNT];
+ int dy[MAX_SKILL_UNIT_COUNT];
};
#define MAX_SKILLTIMERSKILL 15
struct skill_timerskill {
- int timer;
- int src_id;
- int target_id;
- int map;
- short x,y;
- short skill_id,skill_lv;
- int type; // a BF_ type (NOTE: some places use this as general-purpose storage...)
- int flag;
+ int timer;
+ int src_id;
+ int target_id;
+ int map;
+ short x,y;
+ short skill_id,skill_lv;
+ int type; // a BF_ type (NOTE: some places use this as general-purpose storage...)
+ int flag;
};
#define MAX_SKILLUNITGROUP 25
struct skill_unit_group {
- int src_id;
- int party_id;
- int guild_id;
- int bg_id;
- int map;
- int target_flag; //Holds BCT_* flag for battle_check_target
- int bl_flag; //Holds BL_* flag for map_foreachin* functions
- unsigned int tick;
- int limit,interval;
-
- short skill_id,skill_lv;
- int val1,val2,val3;
- char *valstr;
- int unit_id;
- int group_id;
- int unit_count,alive_count;
- int item_id; //store item used.
- struct skill_unit *unit;
- struct {
- unsigned ammo_consume : 1;
- unsigned song_dance : 2; //0x1 Song/Dance, 0x2 Ensemble
- unsigned guildaura : 1;
- } state;
+ int src_id;
+ int party_id;
+ int guild_id;
+ int bg_id;
+ int map;
+ int target_flag; //Holds BCT_* flag for battle_check_target
+ int bl_flag; //Holds BL_* flag for map_foreachin* functions
+ unsigned int tick;
+ int limit,interval;
+
+ short skill_id,skill_lv;
+ int val1,val2,val3;
+ char *valstr;
+ int unit_id;
+ int group_id;
+ int unit_count,alive_count;
+ int item_id; //store item used.
+ struct skill_unit *unit;
+ struct {
+ unsigned ammo_consume : 1;
+ unsigned song_dance : 2; //0x1 Song/Dance, 0x2 Ensemble
+ unsigned guildaura : 1;
+ } state;
};
struct skill_unit {
- struct block_list bl;
+ struct block_list bl;
- struct skill_unit_group *group;
+ struct skill_unit_group *group;
- int limit;
- int val1,val2;
- short alive,range;
+ int limit;
+ int val1,val2;
+ short alive,range;
};
#define MAX_SKILLUNITGROUPTICKSET 25
struct skill_unit_group_tickset {
- unsigned int tick;
- int id;
+ unsigned int tick;
+ int id;
};
enum {
- UF_DEFNOTENEMY = 0x0001, // If 'defunit_not_enemy' is set, the target is changed to 'friend'
- UF_NOREITERATION = 0x0002, // Spell cannot be stacked
- UF_NOFOOTSET = 0x0004, // Spell cannot be cast near/on targets
- UF_NOOVERLAP = 0x0008, // Spell effects do not overlap
- UF_PATHCHECK = 0x0010, // Only cells with a shootable path will be placed
- UF_NOPC = 0x0020, // May not target players
- UF_NOMOB = 0x0040, // May not target mobs
- UF_SKILL = 0x0080, // May target skills
- UF_DANCE = 0x0100, // Dance
- UF_ENSEMBLE = 0x0200, // Duet
- UF_SONG = 0x0400, // Song
- UF_DUALMODE = 0x0800, // Spells should trigger both ontimer and onplace/onout/onleft effects.
+ UF_DEFNOTENEMY = 0x0001, // If 'defunit_not_enemy' is set, the target is changed to 'friend'
+ UF_NOREITERATION = 0x0002, // Spell cannot be stacked
+ UF_NOFOOTSET = 0x0004, // Spell cannot be cast near/on targets
+ UF_NOOVERLAP = 0x0008, // Spell effects do not overlap
+ UF_PATHCHECK = 0x0010, // Only cells with a shootable path will be placed
+ UF_NOPC = 0x0020, // May not target players
+ UF_NOMOB = 0x0040, // May not target mobs
+ UF_SKILL = 0x0080, // May target skills
+ UF_DANCE = 0x0100, // Dance
+ UF_ENSEMBLE = 0x0200, // Duet
+ UF_SONG = 0x0400, // Song
+ UF_DUALMODE = 0x0800, // Spells should trigger both ontimer and onplace/onout/onleft effects.
UF_RANGEDSINGLEUNIT = 0x2000 // hack for ranged layout, only display center
};
// Create Database item
struct s_skill_produce_db {
- int nameid, trigger;
- int req_skill,req_skill_lv,itemlv;
- int mat_id[MAX_PRODUCE_RESOURCE],mat_amount[MAX_PRODUCE_RESOURCE];
+ int nameid, trigger;
+ int req_skill,req_skill_lv,itemlv;
+ int mat_id[MAX_PRODUCE_RESOURCE],mat_amount[MAX_PRODUCE_RESOURCE];
};
extern struct s_skill_produce_db skill_produce_db[MAX_SKILL_PRODUCE_DB];
// Creating database arrow
struct s_skill_arrow_db {
- int nameid, trigger;
- int cre_id[MAX_ARROW_RESOURCE],cre_amount[MAX_ARROW_RESOURCE];
+ int nameid, trigger;
+ int cre_id[MAX_ARROW_RESOURCE],cre_amount[MAX_ARROW_RESOURCE];
};
extern struct s_skill_arrow_db skill_arrow_db[MAX_SKILL_ARROW_DB];
// Abracadabra database
struct s_skill_abra_db {
- int skillid;
- int req_lv;
- int per;
+ int skillid;
+ int req_lv;
+ int per;
};
extern struct s_skill_abra_db skill_abra_db[MAX_SKILL_ABRA_DB];
@@ -231,67 +235,67 @@ int skill_get_casttype(int id); //[Skotlex]
// Accessor to the skills database
//
-int skill_get_index(int id);
-int skill_get_type(int id);
-int skill_get_hit(int id);
-int skill_get_inf(int id);
-int skill_get_ele(int id , int lv);
-int skill_get_nk(int id);
-int skill_get_max(int id);
-int skill_get_range(int id , int lv);
-int skill_get_range2(struct block_list *bl, int id, int lv);
-int skill_get_splash(int id , int lv);
-int skill_get_hp(int id ,int lv);
-int skill_get_mhp(int id ,int lv);
-int skill_get_sp(int id ,int lv);
-int skill_get_state(int id);
-int skill_get_zeny(int id ,int lv);
-int skill_get_num(int id ,int lv);
-int skill_get_cast(int id ,int lv);
-int skill_get_delay(int id ,int lv);
-int skill_get_walkdelay(int id ,int lv);
-int skill_get_time(int id ,int lv);
-int skill_get_time2(int id ,int lv);
-int skill_get_castnodex(int id ,int lv);
-int skill_get_castdef(int id);
-int skill_get_weapontype(int id);
-int skill_get_ammotype(int id);
-int skill_get_ammo_qty(int id, int lv);
-int skill_get_nocast(int id);
-int skill_get_unit_id(int id,int flag);
-int skill_get_inf2(int id);
-int skill_get_castcancel(int id);
-int skill_get_maxcount(int id ,int lv);
-int skill_get_blewcount(int id ,int lv);
-int skill_get_unit_flag(int id);
-int skill_get_unit_target(int id);
-int skill_tree_get_max(int id, int b_class); // Celest
-const char *skill_get_name(int id); // [Skotlex]
-const char *skill_get_desc(int id); // [Skotlex]
-
-int skill_name2id(const char *name);
+int skill_get_index( int id );
+int skill_get_type( int id );
+int skill_get_hit( int id );
+int skill_get_inf( int id );
+int skill_get_ele( int id , int lv );
+int skill_get_nk( int id );
+int skill_get_max( int id );
+int skill_get_range( int id , int lv );
+int skill_get_range2(struct block_list *bl, int id, int lv);
+int skill_get_splash( int id , int lv );
+int skill_get_hp( int id ,int lv );
+int skill_get_mhp( int id ,int lv );
+int skill_get_sp( int id ,int lv );
+int skill_get_state(int id);
+int skill_get_zeny( int id ,int lv );
+int skill_get_num( int id ,int lv );
+int skill_get_cast( int id ,int lv );
+int skill_get_delay( int id ,int lv );
+int skill_get_walkdelay( int id ,int lv );
+int skill_get_time( int id ,int lv );
+int skill_get_time2( int id ,int lv );
+int skill_get_castnodex( int id ,int lv );
+int skill_get_castdef( int id );
+int skill_get_weapontype( int id );
+int skill_get_ammotype( int id );
+int skill_get_ammo_qty( int id, int lv );
+int skill_get_nocast( int id );
+int skill_get_unit_id(int id,int flag);
+int skill_get_inf2( int id );
+int skill_get_castcancel( int id );
+int skill_get_maxcount( int id ,int lv );
+int skill_get_blewcount( int id ,int lv );
+int skill_get_unit_flag( int id );
+int skill_get_unit_target( int id );
+int skill_tree_get_max( int id, int b_class ); // Celest
+const char* skill_get_name( int id ); // [Skotlex]
+const char* skill_get_desc( int id ); // [Skotlex]
+
+int skill_name2id(const char* name);
int skill_isammotype(struct map_session_data *sd, int skill);
int skill_castend_id(int tid, unsigned int tick, int id, intptr_t data);
int skill_castend_pos(int tid, unsigned int tick, int id, intptr_t data);
-int skill_castend_map(struct map_session_data *sd,short skill_num, const char *map);
+int skill_castend_map( struct map_session_data *sd,short skill_num, const char *map);
int skill_cleartimerskill(struct block_list *src);
int skill_addtimerskill(struct block_list *src,unsigned int tick,int target,int x,int y,int skill_id,int skill_lv,int type,int flag);
// Results? Added
-int skill_additional_effect(struct block_list *src, struct block_list *bl,int skillid,int skilllv,int attack_type,int dmg_lv,unsigned int tick);
-int skill_counter_additional_effect(struct block_list *src, struct block_list *bl,int skillid,int skilllv,int attack_type,unsigned int tick);
-int skill_blown(struct block_list *src, struct block_list *target, int count, int direction, int flag);
+int skill_additional_effect( struct block_list* src, struct block_list *bl,int skillid,int skilllv,int attack_type,int dmg_lv,unsigned int tick);
+int skill_counter_additional_effect( struct block_list* src, struct block_list *bl,int skillid,int skilllv,int attack_type,unsigned int tick);
+int skill_blown(struct block_list* src, struct block_list* target, int count, int direction, int flag);
int skill_break_equip(struct block_list *bl, unsigned short where, int rate, int flag);
int skill_strip_equip(struct block_list *bl, unsigned short where, int rate, int lv, int time);
// Skills unit
-struct skill_unit_group *skill_id2group(int group_id);
-struct skill_unit_group *skill_unitsetting(struct block_list *src, short skillid, short skilllv, short x, short y, int flag);
-struct skill_unit *skill_initunit(struct skill_unit_group *group, int idx, int x, int y, int val1, int val2);
+struct skill_unit_group* skill_id2group(int group_id);
+struct skill_unit_group *skill_unitsetting(struct block_list* src, short skillid, short skilllv, short x, short y, int flag);
+struct skill_unit *skill_initunit (struct skill_unit_group *group, int idx, int x, int y, int val1, int val2);
int skill_delunit(struct skill_unit *unit);
-struct skill_unit_group *skill_initunitgroup(struct block_list *src, int count, short skillid, short skilllv, int unit_id, int limit, int interval);
-int skill_delunitgroup_(struct skill_unit_group *group, const char *file, int line, const char *func);
+struct skill_unit_group *skill_initunitgroup(struct block_list* src, int count, short skillid, short skilllv, int unit_id, int limit, int interval);
+int skill_delunitgroup_(struct skill_unit_group *group, const char* file, int line, const char* func);
#define skill_delunitgroup(group) skill_delunitgroup_(group,__FILE__,__LINE__,__func__)
int skill_clear_unitgroup(struct block_list *src);
int skill_clear_group(struct block_list *bl, int flag);
@@ -299,12 +303,12 @@ void ext_skill_unit_onplace(struct skill_unit *src, struct block_list *bl, unsig
int skill_unit_ondamaged(struct skill_unit *src,struct block_list *bl,int damage,unsigned int tick);
-int skill_castfix(struct block_list *bl, int skill_id, int skill_lv);
-int skill_castfix_sc(struct block_list *bl, int time);
+int skill_castfix( struct block_list *bl, int skill_id, int skill_lv);
+int skill_castfix_sc( struct block_list *bl, int time);
#ifdef RENEWAL_CAST
-int skill_vfcastfix(struct block_list *bl, double time, int skill_id, int skill_lv);
+int skill_vfcastfix( struct block_list *bl, double time, int skill_id, int skill_lv);
#endif
-int skill_delayfix(struct block_list *bl, int skill_id, int skill_lv);
+int skill_delayfix( struct block_list *bl, int skill_id, int skill_lv);
// Skill conditions check and remove [Inkfish]
int skill_check_condition_castbegin(struct map_session_data *sd, short skill, short lv);
@@ -312,23 +316,23 @@ int skill_check_condition_castend(struct map_session_data *sd, short skill, shor
int skill_consume_requirement(struct map_session_data *sd, short skill, short lv, short type);
struct skill_condition skill_get_requirement(struct map_session_data *sd, short skill, short lv);
-int skill_check_pc_partner(struct map_session_data *sd, short skill_id, short *skill_lv, int range, int cast_flag);
-// -- moonsoul (added skill_check_unit_cell)
+int skill_check_pc_partner(struct map_session_data *sd, short skill_id, short* skill_lv, int range, int cast_flag);
+// -- moonsoul (added skill_check_unit_cell)
int skill_check_unit_cell(int skillid,int m,int x,int y,int unit_id);
-int skill_unit_out_all(struct block_list *bl,unsigned int tick,int range);
+int skill_unit_out_all( struct block_list *bl,unsigned int tick,int range);
int skill_unit_move(struct block_list *bl,unsigned int tick,int flag);
-int skill_unit_move_unit_group(struct skill_unit_group *group, int m,int dx,int dy);
+int skill_unit_move_unit_group( struct skill_unit_group *group, int m,int dx,int dy);
-struct skill_unit_group *skill_check_dancing(struct block_list *src);
+struct skill_unit_group *skill_check_dancing( struct block_list *src );
// Guild skills [celest]
-int skill_guildaura_sub(struct map_session_data *sd, int id, int strvit, int agidex);
+int skill_guildaura_sub (struct map_session_data* sd, int id, int strvit, int agidex);
// Chant canceled
int skill_castcancel(struct block_list *bl,int type);
-int skill_sit(struct map_session_data *sd, int type);
-void skill_brandishspear(struct block_list *src, struct block_list *bl, int skillid, int skilllv, unsigned int tick, int flag);
+int skill_sit (struct map_session_data *sd, int type);
+void skill_brandishspear(struct block_list* src, struct block_list* bl, int skillid, int skilllv, unsigned int tick, int flag);
void skill_repairweapon(struct map_session_data *sd, int idx);
void skill_identify(struct map_session_data *sd,int idx);
void skill_weaponrefine(struct map_session_data *sd,int idx); // [Celest]
@@ -347,1479 +351,1479 @@ int skillnotok_mercenary(int skillid, struct mercenary_data *md);
int skill_chastle_mob_changetarget(struct block_list *bl,va_list ap);
// Item creation
-int skill_can_produce_mix(struct map_session_data *sd, int nameid, int trigger, int qty);
-int skill_produce_mix(struct map_session_data *sd, int skill_id, int nameid, int slot1, int slot2, int slot3, int qty);
+int skill_can_produce_mix( struct map_session_data *sd, int nameid, int trigger, int qty);
+int skill_produce_mix( struct map_session_data *sd, int skill_id, int nameid, int slot1, int slot2, int slot3, int qty );
-int skill_arrow_create(struct map_session_data *sd,int nameid);
+int skill_arrow_create( struct map_session_data *sd,int nameid);
// skills for the mob
-int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag);
-int skill_castend_damage_id(struct block_list *src, struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag);
-int skill_castend_pos2(struct block_list *src, int x,int y,int skillid,int skilllv,unsigned int tick,int flag);
+int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag );
+int skill_castend_damage_id( struct block_list* src, struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag );
+int skill_castend_pos2( struct block_list *src, int x,int y,int skillid,int skilllv,unsigned int tick,int flag);
-int skill_blockpc_start_(struct map_session_data *, int, int, bool);
-int skill_blockhomun_start(struct homun_data *,int,int);
-int skill_blockmerc_start(struct mercenary_data *,int,int);
+int skill_blockpc_start_(struct map_session_data*, int, int, bool);
+int skill_blockhomun_start (struct homun_data*,int,int);
+int skill_blockmerc_start (struct mercenary_data*,int,int);
#define skill_blockpc_start(sd, skillid, tick) skill_blockpc_start_( sd, skillid, tick, false )
// (Epoque:) To-do: replace this macro with some sort of skill tree check (rather than hard-coded skill names)
#define skill_ischangesex(id) ( \
- ((id) >= BD_ADAPTATION && (id) <= DC_SERVICEFORYOU) || ((id) >= CG_ARROWVULCAN && (id) <= CG_MARIONETTE) || \
- ((id) >= CG_LONGINGFREEDOM && (id) <= CG_TAROTCARD) || ((id) >= WA_SWING_DANCE && (id) <= WM_UNLIMITED_HUMMING_VOICE))
+ ((id) >= BD_ADAPTATION && (id) <= DC_SERVICEFORYOU) || ((id) >= CG_ARROWVULCAN && (id) <= CG_MARIONETTE) || \
+ ((id) >= CG_LONGINGFREEDOM && (id) <= CG_TAROTCARD) || ((id) >= WA_SWING_DANCE && (id) <= WM_UNLIMITED_HUMMING_VOICE))
// Skill action, (return dmg,heal)
-int skill_attack(int attack_type, struct block_list *src, struct block_list *dsrc,struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag);
+int skill_attack( int attack_type, struct block_list* src, struct block_list *dsrc,struct block_list *bl,int skillid,int skilllv,unsigned int tick,int flag );
void skill_reload(void);
enum {
- ST_NONE,
- ST_HIDING,
- ST_CLOAKING,
- ST_HIDDEN,
- ST_RIDING,
- ST_FALCON,
- ST_CART,
- ST_SHIELD,
- ST_SIGHT,
- ST_EXPLOSIONSPIRITS,
- ST_CARTBOOST,
- ST_RECOV_WEIGHT_RATE,
- ST_MOVE_ENABLE,
- ST_WATER,
- /**
- * 3rd States
- **/
- ST_RIDINGDRAGON,
- ST_WUG,
- ST_RIDINGWUG,
- ST_MADO,
- ST_ELEMENTALSPIRIT,
- ST_POISONINGWEAPON,
- ST_ROLLINGCUTTER,
+ ST_NONE,
+ ST_HIDING,
+ ST_CLOAKING,
+ ST_HIDDEN,
+ ST_RIDING,
+ ST_FALCON,
+ ST_CART,
+ ST_SHIELD,
+ ST_SIGHT,
+ ST_EXPLOSIONSPIRITS,
+ ST_CARTBOOST,
+ ST_RECOV_WEIGHT_RATE,
+ ST_MOVE_ENABLE,
+ ST_WATER,
+ /**
+ * 3rd States
+ **/
+ ST_RIDINGDRAGON,
+ ST_WUG,
+ ST_RIDINGWUG,
+ ST_MADO,
+ ST_ELEMENTALSPIRIT,
+ ST_POISONINGWEAPON,
+ ST_ROLLINGCUTTER,
};
enum e_skill {
- NV_BASIC = 1,
-
- SM_SWORD,
- SM_TWOHAND,
- SM_RECOVERY,
- SM_BASH,
- SM_PROVOKE,
- SM_MAGNUM,
- SM_ENDURE,
-
- MG_SRECOVERY,
- MG_SIGHT,
- MG_NAPALMBEAT,
- MG_SAFETYWALL,
- MG_SOULSTRIKE,
- MG_COLDBOLT,
- MG_FROSTDIVER,
- MG_STONECURSE,
- MG_FIREBALL,
- MG_FIREWALL,
- MG_FIREBOLT,
- MG_LIGHTNINGBOLT,
- MG_THUNDERSTORM,
-
- AL_DP,
- AL_DEMONBANE,
- AL_RUWACH,
- AL_PNEUMA,
- AL_TELEPORT,
- AL_WARP,
- AL_HEAL,
- AL_INCAGI,
- AL_DECAGI,
- AL_HOLYWATER,
- AL_CRUCIS,
- AL_ANGELUS,
- AL_BLESSING,
- AL_CURE,
-
- MC_INCCARRY,
- MC_DISCOUNT,
- MC_OVERCHARGE,
- MC_PUSHCART,
- MC_IDENTIFY,
- MC_VENDING,
- MC_MAMMONITE,
-
- AC_OWL,
- AC_VULTURE,
- AC_CONCENTRATION,
- AC_DOUBLE,
- AC_SHOWER,
-
- TF_DOUBLE,
- TF_MISS,
- TF_STEAL,
- TF_HIDING,
- TF_POISON,
- TF_DETOXIFY,
-
- ALL_RESURRECTION,
-
- KN_SPEARMASTERY,
- KN_PIERCE,
- KN_BRANDISHSPEAR,
- KN_SPEARSTAB,
- KN_SPEARBOOMERANG,
- KN_TWOHANDQUICKEN,
- KN_AUTOCOUNTER,
- KN_BOWLINGBASH,
- KN_RIDING,
- KN_CAVALIERMASTERY,
-
- PR_MACEMASTERY,
- PR_IMPOSITIO,
- PR_SUFFRAGIUM,
- PR_ASPERSIO,
- PR_BENEDICTIO,
- PR_SANCTUARY,
- PR_SLOWPOISON,
- PR_STRECOVERY,
- PR_KYRIE,
- PR_MAGNIFICAT,
- PR_GLORIA,
- PR_LEXDIVINA,
- PR_TURNUNDEAD,
- PR_LEXAETERNA,
- PR_MAGNUS,
-
- WZ_FIREPILLAR,
- WZ_SIGHTRASHER,
- WZ_FIREIVY,
- WZ_METEOR,
- WZ_JUPITEL,
- WZ_VERMILION,
- WZ_WATERBALL,
- WZ_ICEWALL,
- WZ_FROSTNOVA,
- WZ_STORMGUST,
- WZ_EARTHSPIKE,
- WZ_HEAVENDRIVE,
- WZ_QUAGMIRE,
- WZ_ESTIMATION,
-
- BS_IRON,
- BS_STEEL,
- BS_ENCHANTEDSTONE,
- BS_ORIDEOCON,
- BS_DAGGER,
- BS_SWORD,
- BS_TWOHANDSWORD,
- BS_AXE,
- BS_MACE,
- BS_KNUCKLE,
- BS_SPEAR,
- BS_HILTBINDING,
- BS_FINDINGORE,
- BS_WEAPONRESEARCH,
- BS_REPAIRWEAPON,
- BS_SKINTEMPER,
- BS_HAMMERFALL,
- BS_ADRENALINE,
- BS_WEAPONPERFECT,
- BS_OVERTHRUST,
- BS_MAXIMIZE,
-
- HT_SKIDTRAP,
- HT_LANDMINE,
- HT_ANKLESNARE,
- HT_SHOCKWAVE,
- HT_SANDMAN,
- HT_FLASHER,
- HT_FREEZINGTRAP,
- HT_BLASTMINE,
- HT_CLAYMORETRAP,
- HT_REMOVETRAP,
- HT_TALKIEBOX,
- HT_BEASTBANE,
- HT_FALCON,
- HT_STEELCROW,
- HT_BLITZBEAT,
- HT_DETECTING,
- HT_SPRINGTRAP,
-
- AS_RIGHT,
- AS_LEFT,
- AS_KATAR,
- AS_CLOAKING,
- AS_SONICBLOW,
- AS_GRIMTOOTH,
- AS_ENCHANTPOISON,
- AS_POISONREACT,
- AS_VENOMDUST,
- AS_SPLASHER,
-
- NV_FIRSTAID,
- NV_TRICKDEAD,
- SM_MOVINGRECOVERY,
- SM_FATALBLOW,
- SM_AUTOBERSERK,
- AC_MAKINGARROW,
- AC_CHARGEARROW,
- TF_SPRINKLESAND,
- TF_BACKSLIDING,
- TF_PICKSTONE,
- TF_THROWSTONE,
- MC_CARTREVOLUTION,
- MC_CHANGECART,
- MC_LOUD,
- AL_HOLYLIGHT,
- MG_ENERGYCOAT,
-
- NPC_PIERCINGATT,
- NPC_MENTALBREAKER,
- NPC_RANGEATTACK,
- NPC_ATTRICHANGE,
- NPC_CHANGEWATER,
- NPC_CHANGEGROUND,
- NPC_CHANGEFIRE,
- NPC_CHANGEWIND,
- NPC_CHANGEPOISON,
- NPC_CHANGEHOLY,
- NPC_CHANGEDARKNESS,
- NPC_CHANGETELEKINESIS,
- NPC_CRITICALSLASH,
- NPC_COMBOATTACK,
- NPC_GUIDEDATTACK,
- NPC_SELFDESTRUCTION,
- NPC_SPLASHATTACK,
- NPC_SUICIDE,
- NPC_POISON,
- NPC_BLINDATTACK,
- NPC_SILENCEATTACK,
- NPC_STUNATTACK,
- NPC_PETRIFYATTACK,
- NPC_CURSEATTACK,
- NPC_SLEEPATTACK,
- NPC_RANDOMATTACK,
- NPC_WATERATTACK,
- NPC_GROUNDATTACK,
- NPC_FIREATTACK,
- NPC_WINDATTACK,
- NPC_POISONATTACK,
- NPC_HOLYATTACK,
- NPC_DARKNESSATTACK,
- NPC_TELEKINESISATTACK,
- NPC_MAGICALATTACK,
- NPC_METAMORPHOSIS,
- NPC_PROVOCATION,
- NPC_SMOKING,
- NPC_SUMMONSLAVE,
- NPC_EMOTION,
- NPC_TRANSFORMATION,
- NPC_BLOODDRAIN,
- NPC_ENERGYDRAIN,
- NPC_KEEPING,
- NPC_DARKBREATH,
- NPC_DARKBLESSING,
- NPC_BARRIER,
- NPC_DEFENDER,
- NPC_LICK,
- NPC_HALLUCINATION,
- NPC_REBIRTH,
- NPC_SUMMONMONSTER,
-
- RG_SNATCHER,
- RG_STEALCOIN,
- RG_BACKSTAP,
- RG_TUNNELDRIVE,
- RG_RAID,
- RG_STRIPWEAPON,
- RG_STRIPSHIELD,
- RG_STRIPARMOR,
- RG_STRIPHELM,
- RG_INTIMIDATE,
- RG_GRAFFITI,
- RG_FLAGGRAFFITI,
- RG_CLEANER,
- RG_GANGSTER,
- RG_COMPULSION,
- RG_PLAGIARISM,
-
- AM_AXEMASTERY,
- AM_LEARNINGPOTION,
- AM_PHARMACY,
- AM_DEMONSTRATION,
- AM_ACIDTERROR,
- AM_POTIONPITCHER,
- AM_CANNIBALIZE,
- AM_SPHEREMINE,
- AM_CP_WEAPON,
- AM_CP_SHIELD,
- AM_CP_ARMOR,
- AM_CP_HELM,
- AM_BIOETHICS,
- AM_BIOTECHNOLOGY,
- AM_CREATECREATURE,
- AM_CULTIVATION,
- AM_FLAMECONTROL,
- AM_CALLHOMUN,
- AM_REST,
- AM_DRILLMASTER,
- AM_HEALHOMUN,
- AM_RESURRECTHOMUN,
-
- CR_TRUST,
- CR_AUTOGUARD,
- CR_SHIELDCHARGE,
- CR_SHIELDBOOMERANG,
- CR_REFLECTSHIELD,
- CR_HOLYCROSS,
- CR_GRANDCROSS,
- CR_DEVOTION,
- CR_PROVIDENCE,
- CR_DEFENDER,
- CR_SPEARQUICKEN,
-
- MO_IRONHAND,
- MO_SPIRITSRECOVERY,
- MO_CALLSPIRITS,
- MO_ABSORBSPIRITS,
- MO_TRIPLEATTACK,
- MO_BODYRELOCATION,
- MO_DODGE,
- MO_INVESTIGATE,
- MO_FINGEROFFENSIVE,
- MO_STEELBODY,
- MO_BLADESTOP,
- MO_EXPLOSIONSPIRITS,
- MO_EXTREMITYFIST,
- MO_CHAINCOMBO,
- MO_COMBOFINISH,
-
- SA_ADVANCEDBOOK,
- SA_CASTCANCEL,
- SA_MAGICROD,
- SA_SPELLBREAKER,
- SA_FREECAST,
- SA_AUTOSPELL,
- SA_FLAMELAUNCHER,
- SA_FROSTWEAPON,
- SA_LIGHTNINGLOADER,
- SA_SEISMICWEAPON,
- SA_DRAGONOLOGY,
- SA_VOLCANO,
- SA_DELUGE,
- SA_VIOLENTGALE,
- SA_LANDPROTECTOR,
- SA_DISPELL,
- SA_ABRACADABRA,
- SA_MONOCELL,
- SA_CLASSCHANGE,
- SA_SUMMONMONSTER,
- SA_REVERSEORCISH,
- SA_DEATH,
- SA_FORTUNE,
- SA_TAMINGMONSTER,
- SA_QUESTION,
- SA_GRAVITY,
- SA_LEVELUP,
- SA_INSTANTDEATH,
- SA_FULLRECOVERY,
- SA_COMA,
-
- BD_ADAPTATION,
- BD_ENCORE,
- BD_LULLABY,
- BD_RICHMANKIM,
- BD_ETERNALCHAOS,
- BD_DRUMBATTLEFIELD,
- BD_RINGNIBELUNGEN,
- BD_ROKISWEIL,
- BD_INTOABYSS,
- BD_SIEGFRIED,
- BD_RAGNAROK,
-
- BA_MUSICALLESSON,
- BA_MUSICALSTRIKE,
- BA_DISSONANCE,
- BA_FROSTJOKER,
- BA_WHISTLE,
- BA_ASSASSINCROSS,
- BA_POEMBRAGI,
- BA_APPLEIDUN,
-
- DC_DANCINGLESSON,
- DC_THROWARROW,
- DC_UGLYDANCE,
- DC_SCREAM,
- DC_HUMMING,
- DC_DONTFORGETME,
- DC_FORTUNEKISS,
- DC_SERVICEFORYOU,
-
- NPC_RANDOMMOVE,
- NPC_SPEEDUP,
- NPC_REVENGE,
-
- WE_MALE,
- WE_FEMALE,
- WE_CALLPARTNER,
-
- ITM_TOMAHAWK,
-
- NPC_DARKCROSS,
- NPC_GRANDDARKNESS,
- NPC_DARKSTRIKE,
- NPC_DARKTHUNDER,
- NPC_STOP,
- NPC_WEAPONBRAKER,
- NPC_ARMORBRAKE,
- NPC_HELMBRAKE,
- NPC_SHIELDBRAKE,
- NPC_UNDEADATTACK,
- NPC_CHANGEUNDEAD,
- NPC_POWERUP,
- NPC_AGIUP,
- NPC_SIEGEMODE,
- NPC_CALLSLAVE,
- NPC_INVISIBLE,
- NPC_RUN,
-
- LK_AURABLADE,
- LK_PARRYING,
- LK_CONCENTRATION,
- LK_TENSIONRELAX,
- LK_BERSERK,
- LK_FURY,
- HP_ASSUMPTIO,
- HP_BASILICA,
- HP_MEDITATIO,
- HW_SOULDRAIN,
- HW_MAGICCRASHER,
- HW_MAGICPOWER,
- PA_PRESSURE,
- PA_SACRIFICE,
- PA_GOSPEL,
- CH_PALMSTRIKE,
- CH_TIGERFIST,
- CH_CHAINCRUSH,
- PF_HPCONVERSION,
- PF_SOULCHANGE,
- PF_SOULBURN,
- ASC_KATAR,
- ASC_HALLUCINATION,
- ASC_EDP,
- ASC_BREAKER,
- SN_SIGHT,
- SN_FALCONASSAULT,
- SN_SHARPSHOOTING,
- SN_WINDWALK,
- WS_MELTDOWN,
- WS_CREATECOIN,
- WS_CREATENUGGET,
- WS_CARTBOOST,
- WS_SYSTEMCREATE,
- ST_CHASEWALK,
- ST_REJECTSWORD,
- ST_STEALBACKPACK,
- CR_ALCHEMY,
- CR_SYNTHESISPOTION,
- CG_ARROWVULCAN,
- CG_MOONLIT,
- CG_MARIONETTE,
- LK_SPIRALPIERCE,
- LK_HEADCRUSH,
- LK_JOINTBEAT,
- HW_NAPALMVULCAN,
- CH_SOULCOLLECT,
- PF_MINDBREAKER,
- PF_MEMORIZE,
- PF_FOGWALL,
- PF_SPIDERWEB,
- ASC_METEORASSAULT,
- ASC_CDP,
- WE_BABY,
- WE_CALLPARENT,
- WE_CALLBABY,
-
- TK_RUN,
- TK_READYSTORM,
- TK_STORMKICK,
- TK_READYDOWN,
- TK_DOWNKICK,
- TK_READYTURN,
- TK_TURNKICK,
- TK_READYCOUNTER,
- TK_COUNTER,
- TK_DODGE,
- TK_JUMPKICK,
- TK_HPTIME,
- TK_SPTIME,
- TK_POWER,
- TK_SEVENWIND,
- TK_HIGHJUMP,
-
- SG_FEEL,
- SG_SUN_WARM,
- SG_MOON_WARM,
- SG_STAR_WARM,
- SG_SUN_COMFORT,
- SG_MOON_COMFORT,
- SG_STAR_COMFORT,
- SG_HATE,
- SG_SUN_ANGER,
- SG_MOON_ANGER,
- SG_STAR_ANGER,
- SG_SUN_BLESS,
- SG_MOON_BLESS,
- SG_STAR_BLESS,
- SG_DEVIL,
- SG_FRIEND,
- SG_KNOWLEDGE,
- SG_FUSION,
-
- SL_ALCHEMIST,
- AM_BERSERKPITCHER,
- SL_MONK,
- SL_STAR,
- SL_SAGE,
- SL_CRUSADER,
- SL_SUPERNOVICE,
- SL_KNIGHT,
- SL_WIZARD,
- SL_PRIEST,
- SL_BARDDANCER,
- SL_ROGUE,
- SL_ASSASIN,
- SL_BLACKSMITH,
- BS_ADRENALINE2,
- SL_HUNTER,
- SL_SOULLINKER,
- SL_KAIZEL,
- SL_KAAHI,
- SL_KAUPE,
- SL_KAITE,
- SL_KAINA,
- SL_STIN,
- SL_STUN,
- SL_SMA,
- SL_SWOO,
- SL_SKE,
- SL_SKA,
-
- SM_SELFPROVOKE,
- NPC_EMOTION_ON,
- ST_PRESERVE,
- ST_FULLSTRIP,
- WS_WEAPONREFINE,
- CR_SLIMPITCHER,
- CR_FULLPROTECTION,
- PA_SHIELDCHAIN,
- HP_MANARECHARGE,
- PF_DOUBLECASTING,
- HW_GANBANTEIN,
- HW_GRAVITATION,
- WS_CARTTERMINATION,
- WS_OVERTHRUSTMAX,
- CG_LONGINGFREEDOM,
- CG_HERMODE,
- CG_TAROTCARD,
- CR_ACIDDEMONSTRATION,
- CR_CULTIVATION,
- ITEM_ENCHANTARMS,
- TK_MISSION,
- SL_HIGH,
- KN_ONEHAND,
- AM_TWILIGHT1,
- AM_TWILIGHT2,
- AM_TWILIGHT3,
- HT_POWER,
-
- GS_GLITTERING,
- GS_FLING,
- GS_TRIPLEACTION,
- GS_BULLSEYE,
- GS_MADNESSCANCEL,
- GS_ADJUSTMENT,
- GS_INCREASING,
- GS_MAGICALBULLET,
- GS_CRACKER,
- GS_SINGLEACTION,
- GS_SNAKEEYE,
- GS_CHAINACTION,
- GS_TRACKING,
- GS_DISARM,
- GS_PIERCINGSHOT,
- GS_RAPIDSHOWER,
- GS_DESPERADO,
- GS_GATLINGFEVER,
- GS_DUST,
- GS_FULLBUSTER,
- GS_SPREADATTACK,
- GS_GROUNDDRIFT,
-
- NJ_TOBIDOUGU,
- NJ_SYURIKEN,
- NJ_KUNAI,
- NJ_HUUMA,
- NJ_ZENYNAGE,
- NJ_TATAMIGAESHI,
- NJ_KASUMIKIRI,
- NJ_SHADOWJUMP,
- NJ_KIRIKAGE,
- NJ_UTSUSEMI,
- NJ_BUNSINJYUTSU,
- NJ_NINPOU,
- NJ_KOUENKA,
- NJ_KAENSIN,
- NJ_BAKUENRYU,
- NJ_HYOUSENSOU,
- NJ_SUITON,
- NJ_HYOUSYOURAKU,
- NJ_HUUJIN,
- NJ_RAIGEKISAI,
- NJ_KAMAITACHI,
- NJ_NEN,
- NJ_ISSEN,
-
- MB_FIGHTING,
- MB_NEUTRAL,
- MB_TAIMING_PUTI,
- MB_WHITEPOTION,
- MB_MENTAL,
- MB_CARDPITCHER,
- MB_PETPITCHER,
- MB_BODYSTUDY,
- MB_BODYALTER,
- MB_PETMEMORY,
- MB_M_TELEPORT,
- MB_B_GAIN,
- MB_M_GAIN,
- MB_MISSION,
- MB_MUNAKKNOWLEDGE,
- MB_MUNAKBALL,
- MB_SCROLL,
- MB_B_GATHERING,
- MB_M_GATHERING,
- MB_B_EXCLUDE,
- MB_B_DRIFT,
- MB_B_WALLRUSH,
- MB_M_WALLRUSH,
- MB_B_WALLSHIFT,
- MB_M_WALLCRASH,
- MB_M_REINCARNATION,
- MB_B_EQUIP,
-
- SL_DEATHKNIGHT,
- SL_COLLECTOR,
- SL_NINJA,
- SL_GUNNER,
- AM_TWILIGHT4,
- DA_RESET,
- DE_BERSERKAIZER,
- DA_DARKPOWER,
-
- DE_PASSIVE,
- DE_PATTACK,
- DE_PSPEED,
- DE_PDEFENSE,
- DE_PCRITICAL,
- DE_PHP,
- DE_PSP,
- DE_RESET,
- DE_RANKING,
- DE_PTRIPLE,
- DE_ENERGY,
- DE_NIGHTMARE,
- DE_SLASH,
- DE_COIL,
- DE_WAVE,
- DE_REBIRTH,
- DE_AURA,
- DE_FREEZER,
- DE_CHANGEATTACK,
- DE_PUNISH,
- DE_POISON,
- DE_INSTANT,
- DE_WARNING,
- DE_RANKEDKNIFE,
- DE_RANKEDGRADIUS,
- DE_GAUGE,
- DE_GTIME,
- DE_GPAIN,
- DE_GSKILL,
- DE_GKILL,
- DE_ACCEL,
- DE_BLOCKDOUBLE,
- DE_BLOCKMELEE,
- DE_BLOCKFAR,
- DE_FRONTATTACK,
- DE_DANGERATTACK,
- DE_TWINATTACK,
- DE_WINDATTACK,
- DE_WATERATTACK,
-
- DA_ENERGY,
- DA_CLOUD,
- DA_FIRSTSLOT,
- DA_HEADDEF,
- DA_SPACE,
- DA_TRANSFORM,
- DA_EXPLOSION,
- DA_REWARD,
- DA_CRUSH,
- DA_ITEMREBUILD,
- DA_ILLUSION,
- DA_NUETRALIZE,
- DA_RUNNER,
- DA_TRANSFER,
- DA_WALL,
- DA_ZENY,
- DA_REVENGE,
- DA_EARPLUG,
- DA_CONTRACT,
- DA_BLACK,
- DA_DREAM,
- DA_MAGICCART,
- DA_COPY,
- DA_CRYSTAL,
- DA_EXP,
- DA_CARTSWING,
- DA_REBUILD,
- DA_JOBCHANGE,
- DA_EDARKNESS,
- DA_EGUARDIAN,
- DA_TIMEOUT,
- ALL_TIMEIN,
- DA_ZENYRANK,
- DA_ACCESSORYMIX,
-
- NPC_EARTHQUAKE,
- NPC_FIREBREATH,
- NPC_ICEBREATH,
- NPC_THUNDERBREATH,
- NPC_ACIDBREATH,
- NPC_DARKNESSBREATH,
- NPC_DRAGONFEAR,
- NPC_BLEEDING,
- NPC_PULSESTRIKE,
- NPC_HELLJUDGEMENT,
- NPC_WIDESILENCE,
- NPC_WIDEFREEZE,
- NPC_WIDEBLEEDING,
- NPC_WIDESTONE,
- NPC_WIDECONFUSE,
- NPC_WIDESLEEP,
- NPC_WIDESIGHT,
- NPC_EVILLAND,
- NPC_MAGICMIRROR,
- NPC_SLOWCAST,
- NPC_CRITICALWOUND,
- NPC_EXPULSION,
- NPC_STONESKIN,
- NPC_ANTIMAGIC,
- NPC_WIDECURSE,
- NPC_WIDESTUN,
- NPC_VAMPIRE_GIFT,
- NPC_WIDESOULDRAIN,
-
- ALL_INCCARRY,
- NPC_TALK,
- NPC_HELLPOWER,
- NPC_WIDEHELLDIGNITY,
- NPC_INVINCIBLE,
- NPC_INVINCIBLEOFF,
- NPC_ALLHEAL,
- GM_SANDMAN,
- CASH_BLESSING,
- CASH_INCAGI,
- CASH_ASSUMPTIO,
- ALL_CATCRY,
- ALL_PARTYFLEE,
- ALL_ANGEL_PROTECT,
- ALL_DREAM_SUMMERNIGHT,
- NPC_CHANGEUNDEAD2,
- ALL_REVERSEORCISH,
- ALL_WEWISH,
- ALL_SONKRAN,
- NPC_WIDEHEALTHFEAR,
- NPC_WIDEBODYBURNNING,
- NPC_WIDEFROSTMISTY,
- NPC_WIDECOLD,
- NPC_WIDE_DEEP_SLEEP,
- NPC_WIDESIREN,
- NPC_VENOMFOG,
- NPC_MILLENNIUMSHIELD,
- NPC_COMET,
-
- KN_CHARGEATK = 1001,
- CR_SHRINK,
- AS_SONICACCEL,
- AS_VENOMKNIFE,
- RG_CLOSECONFINE,
- WZ_SIGHTBLASTER,
- SA_CREATECON,
- SA_ELEMENTWATER,
- HT_PHANTASMIC,
- BA_PANGVOICE,
- DC_WINKCHARM,
- BS_UNFAIRLYTRICK,
- BS_GREED,
- PR_REDEMPTIO,
- MO_KITRANSLATION,
- MO_BALKYOUNG,
- SA_ELEMENTGROUND,
- SA_ELEMENTFIRE,
- SA_ELEMENTWIND,
-
- RK_ENCHANTBLADE = 2001,
- RK_SONICWAVE,
- RK_DEATHBOUND,
- RK_HUNDREDSPEAR,
- RK_WINDCUTTER,
- RK_IGNITIONBREAK,
- RK_DRAGONTRAINING,
- RK_DRAGONBREATH,
- RK_DRAGONHOWLING,
- RK_RUNEMASTERY,
- RK_MILLENNIUMSHIELD,
- RK_CRUSHSTRIKE,
- RK_REFRESH,
- RK_GIANTGROWTH,
- RK_STONEHARDSKIN,
- RK_VITALITYACTIVATION,
- RK_STORMBLAST,
- RK_FIGHTINGSPIRIT,
- RK_ABUNDANCE,
- RK_PHANTOMTHRUST,
-
- GC_VENOMIMPRESS,
- GC_CROSSIMPACT,
- GC_DARKILLUSION,
- GC_RESEARCHNEWPOISON,
- GC_CREATENEWPOISON,
- GC_ANTIDOTE,
- GC_POISONINGWEAPON,
- GC_WEAPONBLOCKING,
- GC_COUNTERSLASH,
- GC_WEAPONCRUSH,
- GC_VENOMPRESSURE,
- GC_POISONSMOKE,
- GC_CLOAKINGEXCEED,
- GC_PHANTOMMENACE,
- GC_HALLUCINATIONWALK,
- GC_ROLLINGCUTTER,
- GC_CROSSRIPPERSLASHER,
-
- AB_JUDEX,
- AB_ANCILLA,
- AB_ADORAMUS,
- AB_CLEMENTIA,
- AB_CANTO,
- AB_CHEAL,
- AB_EPICLESIS,
- AB_PRAEFATIO,
- AB_ORATIO,
- AB_LAUDAAGNUS,
- AB_LAUDARAMUS,
- AB_EUCHARISTICA,
- AB_RENOVATIO,
- AB_HIGHNESSHEAL,
- AB_CLEARANCE,
- AB_EXPIATIO,
- AB_DUPLELIGHT,
- AB_DUPLELIGHT_MELEE,
- AB_DUPLELIGHT_MAGIC,
- AB_SILENTIUM,
-
- WL_WHITEIMPRISON = 2201,
- WL_SOULEXPANSION,
- WL_FROSTMISTY,
- WL_JACKFROST,
- WL_MARSHOFABYSS,
- WL_RECOGNIZEDSPELL,
- WL_SIENNAEXECRATE,
- WL_RADIUS,
- WL_STASIS,
- WL_DRAINLIFE,
- WL_CRIMSONROCK,
- WL_HELLINFERNO,
- WL_COMET,
- WL_CHAINLIGHTNING,
- WL_CHAINLIGHTNING_ATK,
- WL_EARTHSTRAIN,
- WL_TETRAVORTEX,
- WL_TETRAVORTEX_FIRE,
- WL_TETRAVORTEX_WATER,
- WL_TETRAVORTEX_WIND,
- WL_TETRAVORTEX_GROUND,
- WL_SUMMONFB,
- WL_SUMMONBL,
- WL_SUMMONWB,
- WL_SUMMON_ATK_FIRE,
- WL_SUMMON_ATK_WIND,
- WL_SUMMON_ATK_WATER,
- WL_SUMMON_ATK_GROUND,
- WL_SUMMONSTONE,
- WL_RELEASE,
- WL_READING_SB,
- WL_FREEZE_SP,
-
- RA_ARROWSTORM,
- RA_FEARBREEZE,
- RA_RANGERMAIN,
- RA_AIMEDBOLT,
- RA_DETONATOR,
- RA_ELECTRICSHOCKER,
- RA_CLUSTERBOMB,
- RA_WUGMASTERY,
- RA_WUGRIDER,
- RA_WUGDASH,
- RA_WUGSTRIKE,
- RA_WUGBITE,
- RA_TOOTHOFWUG,
- RA_SENSITIVEKEEN,
- RA_CAMOUFLAGE,
- RA_RESEARCHTRAP,
- RA_MAGENTATRAP,
- RA_COBALTTRAP,
- RA_MAIZETRAP,
- RA_VERDURETRAP,
- RA_FIRINGTRAP,
- RA_ICEBOUNDTRAP,
-
- NC_MADOLICENCE,
- NC_BOOSTKNUCKLE,
- NC_PILEBUNKER,
- NC_VULCANARM,
- NC_FLAMELAUNCHER,
- NC_COLDSLOWER,
- NC_ARMSCANNON,
- NC_ACCELERATION,
- NC_HOVERING,
- NC_F_SIDESLIDE,
- NC_B_SIDESLIDE,
- NC_MAINFRAME,
- NC_SELFDESTRUCTION,
- NC_SHAPESHIFT,
- NC_EMERGENCYCOOL,
- NC_INFRAREDSCAN,
- NC_ANALYZE,
- NC_MAGNETICFIELD,
- NC_NEUTRALBARRIER,
- NC_STEALTHFIELD,
- NC_REPAIR,
- NC_TRAININGAXE,
- NC_RESEARCHFE,
- NC_AXEBOOMERANG,
- NC_POWERSWING,
- NC_AXETORNADO,
- NC_SILVERSNIPER,
- NC_MAGICDECOY,
- NC_DISJOINT,
-
- SC_FATALMENACE,
- SC_REPRODUCE,
- SC_AUTOSHADOWSPELL,
- SC_SHADOWFORM,
- SC_TRIANGLESHOT,
- SC_BODYPAINT,
- SC_INVISIBILITY,
- SC_DEADLYINFECT,
- SC_ENERVATION,
- SC_GROOMY,
- SC_IGNORANCE,
- SC_LAZINESS,
- SC_UNLUCKY,
- SC_WEAKNESS,
- SC_STRIPACCESSARY,
- SC_MANHOLE,
- SC_DIMENSIONDOOR,
- SC_CHAOSPANIC,
- SC_MAELSTROM,
- SC_BLOODYLUST,
- SC_FEINTBOMB,
-
- LG_CANNONSPEAR = 2307,
- LG_BANISHINGPOINT,
- LG_TRAMPLE,
- LG_SHIELDPRESS,
- LG_REFLECTDAMAGE,
- LG_PINPOINTATTACK,
- LG_FORCEOFVANGUARD,
- LG_RAGEBURST,
- LG_SHIELDSPELL,
- LG_EXEEDBREAK,
- LG_OVERBRAND,
- LG_PRESTIGE,
- LG_BANDING,
- LG_MOONSLASHER,
- LG_RAYOFGENESIS,
- LG_PIETY,
- LG_EARTHDRIVE,
- LG_HESPERUSLIT,
- LG_INSPIRATION,
-
- SR_DRAGONCOMBO,
- SR_SKYNETBLOW,
- SR_EARTHSHAKER,
- SR_FALLENEMPIRE,
- SR_TIGERCANNON,
- SR_HELLGATE,
- SR_RAMPAGEBLASTER,
- SR_CRESCENTELBOW,
- SR_CURSEDCIRCLE,
- SR_LIGHTNINGWALK,
- SR_KNUCKLEARROW,
- SR_WINDMILL,
- SR_RAISINGDRAGON,
- SR_GENTLETOUCH,
- SR_ASSIMILATEPOWER,
- SR_POWERVELOCITY,
- SR_CRESCENTELBOW_AUTOSPELL,
- SR_GATEOFHELL,
- SR_GENTLETOUCH_QUIET,
- SR_GENTLETOUCH_CURE,
- SR_GENTLETOUCH_ENERGYGAIN,
- SR_GENTLETOUCH_CHANGE,
- SR_GENTLETOUCH_REVITALIZE,
-
- WA_SWING_DANCE = 2350,
- WA_SYMPHONY_OF_LOVER,
- WA_MOONLIT_SERENADE,
-
- MI_RUSH_WINDMILL = 2381,
- MI_ECHOSONG,
- MI_HARMONIZE,
-
- WM_LESSON = 2412,
- WM_METALICSOUND,
- WM_REVERBERATION,
- WM_REVERBERATION_MELEE,
- WM_REVERBERATION_MAGIC,
- WM_DOMINION_IMPULSE,
- WM_SEVERE_RAINSTORM,
- WM_POEMOFNETHERWORLD,
- WM_VOICEOFSIREN,
- WM_DEADHILLHERE,
- WM_LULLABY_DEEPSLEEP,
- WM_SIRCLEOFNATURE,
- WM_RANDOMIZESPELL,
- WM_GLOOMYDAY,
- WM_GREAT_ECHO,
- WM_SONG_OF_MANA,
- WM_DANCE_WITH_WUG,
- WM_SOUND_OF_DESTRUCTION,
- WM_SATURDAY_NIGHT_FEVER,
- WM_LERADS_DEW,
- WM_MELODYOFSINK,
- WM_BEYOND_OF_WARCRY,
- WM_UNLIMITED_HUMMING_VOICE,
-
- SO_FIREWALK = 2443,
- SO_ELECTRICWALK,
- SO_SPELLFIST,
- SO_EARTHGRAVE,
- SO_DIAMONDDUST,
- SO_POISON_BUSTER,
- SO_PSYCHIC_WAVE,
- SO_CLOUD_KILL,
- SO_STRIKING,
- SO_WARMER,
- SO_VACUUM_EXTREME,
- SO_VARETYR_SPEAR,
- SO_ARRULLO,
- SO_EL_CONTROL,
- SO_SUMMON_AGNI,
- SO_SUMMON_AQUA,
- SO_SUMMON_VENTUS,
- SO_SUMMON_TERA,
- SO_EL_ACTION,
- SO_EL_ANALYSIS,
- SO_EL_SYMPATHY,
- SO_EL_CURE,
- SO_FIRE_INSIGNIA,
- SO_WATER_INSIGNIA,
- SO_WIND_INSIGNIA,
- SO_EARTH_INSIGNIA,
-
- GN_TRAINING_SWORD = 2474,
- GN_REMODELING_CART,
- GN_CART_TORNADO,
- GN_CARTCANNON,
- GN_CARTBOOST,
- GN_THORNS_TRAP,
- GN_BLOOD_SUCKER,
- GN_SPORE_EXPLOSION,
- GN_WALLOFTHORN,
- GN_CRAZYWEED,
- GN_CRAZYWEED_ATK,
- GN_DEMONIC_FIRE,
- GN_FIRE_EXPANSION,
- GN_FIRE_EXPANSION_SMOKE_POWDER,
- GN_FIRE_EXPANSION_TEAR_GAS,
- GN_FIRE_EXPANSION_ACID,
- GN_HELLS_PLANT,
- GN_HELLS_PLANT_ATK,
- GN_MANDRAGORA,
- GN_SLINGITEM,
- GN_CHANGEMATERIAL,
- GN_MIX_COOKING,
- GN_MAKEBOMB,
- GN_S_PHARMACY,
- GN_SLINGITEM_RANGEMELEEATK,
-
- AB_SECRAMENT = 2515,
- WM_SEVERE_RAINSTORM_MELEE,
- SR_HOWLINGOFLION,
- SR_RIDEINLIGHTNING,
- LG_OVERBRAND_BRANDISH,
- LG_OVERBRAND_PLUSATK,
-
- ALL_ODINS_RECALL = 2533,
- RETURN_TO_ELDICASTES,
- ALL_BUYING_STORE,
- ALL_GUARDIAN_RECALL,
- ALL_ODINS_POWER,
- BEER_BOTTLE_CAP,
- NPC_ASSASSINCROSS,
- NPC_DISSONANCE,
- NPC_UGLYDANCE,
- ALL_TETANY,
- ALL_RAY_OF_PROTECTION,
- MC_CARTDECORATE,
-
- KO_YAMIKUMO = 3001,
- KO_RIGHT,
- KO_LEFT,
- KO_JYUMONJIKIRI,
- KO_SETSUDAN,
- KO_BAKURETSU,
- KO_HAPPOKUNAI,
- KO_MUCHANAGE,
- KO_HUUMARANKA,
- KO_MAKIBISHI,
- KO_MEIKYOUSISUI,
- KO_ZANZOU,
- KO_KYOUGAKU,
- KO_JYUSATSU,
- KO_KAHU_ENTEN,
- KO_HYOUHU_HUBUKI,
- KO_KAZEHU_SEIRAN,
- KO_DOHU_KOUKAI,
- KO_KAIHOU,
- KO_ZENKAI,
- KO_GENWAKU,
- KO_IZAYOI,
- KG_KAGEHUMI,
- KG_KYOMU,
- KG_KAGEMUSYA,
- OB_ZANGETSU,
- OB_OBOROGENSOU,
- OB_OBOROGENSOU_TRANSITION_ATK,
- OB_AKAITSUKI,
-
- ECL_SNOWFLIP = 3031,
- ECL_PEONYMAMY,
- ECL_SADAGUI,
- ECL_SEQUOIADUST,
- ECLAGE_RECALL,
-
- HLIF_HEAL = 8001,
- HLIF_AVOID,
- HLIF_BRAIN,
- HLIF_CHANGE,
- HAMI_CASTLE,
- HAMI_DEFENCE,
- HAMI_SKIN,
- HAMI_BLOODLUST,
- HFLI_MOON,
- HFLI_FLEET,
- HFLI_SPEED,
- HFLI_SBR44,
- HVAN_CAPRICE,
- HVAN_CHAOTIC,
- HVAN_INSTRUCT,
- HVAN_EXPLOSION,
- MUTATION_BASEJOB,
- MH_SUMMON_LEGION,
- MH_NEEDLE_OF_PARALYZE,
- MH_POISON_MIST,
- MH_PAIN_KILLER,
- MH_LIGHT_OF_REGENE,
- MH_OVERED_BOOST,
- MH_ERASER_CUTTER,
- MH_XENO_SLASHER,
- MH_SILENT_BREEZE,
- MH_STYLE_CHANGE,
- MH_SONIC_CRAW,
- MH_SILVERVEIN_RUSH,
- MH_MIDNIGHT_FRENZY,
- MH_STAHL_HORN,
- MH_GOLDENE_FERSE,
- MH_STEINWAND,
- MH_HEILIGE_STANGE,
- MH_ANGRIFFS_MODUS,
- MH_TINDER_BREAKER,
- MH_CBC,
- MH_EQC,
- MH_MAGMA_FLOW,
- MH_GRANITIC_ARMOR,
- MH_LAVA_SLIDE,
- MH_PYROCLASTIC,
- MH_VOLCANIC_ASH,
-
- MS_BASH = 8201,
- MS_MAGNUM,
- MS_BOWLINGBASH,
- MS_PARRYING,
- MS_REFLECTSHIELD,
- MS_BERSERK,
- MA_DOUBLE,
- MA_SHOWER,
- MA_SKIDTRAP,
- MA_LANDMINE,
- MA_SANDMAN,
- MA_FREEZINGTRAP,
- MA_REMOVETRAP,
- MA_CHARGEARROW,
- MA_SHARPSHOOTING,
- ML_PIERCE,
- ML_BRANDISH,
- ML_SPIRALPIERCE,
- ML_DEFENDER,
- ML_AUTOGUARD,
- ML_DEVOTION,
- MER_MAGNIFICAT,
- MER_QUICKEN,
- MER_SIGHT,
- MER_CRASH,
- MER_REGAIN,
- MER_TENDER,
- MER_BENEDICTION,
- MER_RECUPERATE,
- MER_MENTALCURE,
- MER_COMPRESS,
- MER_PROVOKE,
- MER_AUTOBERSERK,
- MER_DECAGI,
- MER_SCAPEGOAT,
- MER_LEXDIVINA,
- MER_ESTIMATION,
- MER_KYRIE,
- MER_BLESSING,
- MER_INCAGI,
-
- EL_CIRCLE_OF_FIRE = 8401,
- EL_FIRE_CLOAK,
- EL_FIRE_MANTLE,
- EL_WATER_SCREEN,
- EL_WATER_DROP,
- EL_WATER_BARRIER,
- EL_WIND_STEP,
- EL_WIND_CURTAIN,
- EL_ZEPHYR,
- EL_SOLID_SKIN,
- EL_STONE_SHIELD,
- EL_POWER_OF_GAIA,
- EL_PYROTECHNIC,
- EL_HEATER,
- EL_TROPIC,
- EL_AQUAPLAY,
- EL_COOLER,
- EL_CHILLY_AIR,
- EL_GUST,
- EL_BLAST,
- EL_WILD_STORM,
- EL_PETROLOGY,
- EL_CURSED_SOIL,
- EL_UPHEAVAL,
- EL_FIRE_ARROW,
- EL_FIRE_BOMB,
- EL_FIRE_BOMB_ATK,
- EL_FIRE_WAVE,
- EL_FIRE_WAVE_ATK,
- EL_ICE_NEEDLE,
- EL_WATER_SCREW,
- EL_WATER_SCREW_ATK,
- EL_TIDAL_WEAPON,
- EL_WIND_SLASH,
- EL_HURRICANE,
- EL_HURRICANE_ATK,
- EL_TYPOON_MIS,
- EL_TYPOON_MIS_ATK,
- EL_STONE_HAMMER,
- EL_ROCK_CRUSHER,
- EL_ROCK_CRUSHER_ATK,
- EL_STONE_RAIN,
+ NV_BASIC = 1,
+
+ SM_SWORD,
+ SM_TWOHAND,
+ SM_RECOVERY,
+ SM_BASH,
+ SM_PROVOKE,
+ SM_MAGNUM,
+ SM_ENDURE,
+
+ MG_SRECOVERY,
+ MG_SIGHT,
+ MG_NAPALMBEAT,
+ MG_SAFETYWALL,
+ MG_SOULSTRIKE,
+ MG_COLDBOLT,
+ MG_FROSTDIVER,
+ MG_STONECURSE,
+ MG_FIREBALL,
+ MG_FIREWALL,
+ MG_FIREBOLT,
+ MG_LIGHTNINGBOLT,
+ MG_THUNDERSTORM,
+
+ AL_DP,
+ AL_DEMONBANE,
+ AL_RUWACH,
+ AL_PNEUMA,
+ AL_TELEPORT,
+ AL_WARP,
+ AL_HEAL,
+ AL_INCAGI,
+ AL_DECAGI,
+ AL_HOLYWATER,
+ AL_CRUCIS,
+ AL_ANGELUS,
+ AL_BLESSING,
+ AL_CURE,
+
+ MC_INCCARRY,
+ MC_DISCOUNT,
+ MC_OVERCHARGE,
+ MC_PUSHCART,
+ MC_IDENTIFY,
+ MC_VENDING,
+ MC_MAMMONITE,
+
+ AC_OWL,
+ AC_VULTURE,
+ AC_CONCENTRATION,
+ AC_DOUBLE,
+ AC_SHOWER,
+
+ TF_DOUBLE,
+ TF_MISS,
+ TF_STEAL,
+ TF_HIDING,
+ TF_POISON,
+ TF_DETOXIFY,
+
+ ALL_RESURRECTION,
+
+ KN_SPEARMASTERY,
+ KN_PIERCE,
+ KN_BRANDISHSPEAR,
+ KN_SPEARSTAB,
+ KN_SPEARBOOMERANG,
+ KN_TWOHANDQUICKEN,
+ KN_AUTOCOUNTER,
+ KN_BOWLINGBASH,
+ KN_RIDING,
+ KN_CAVALIERMASTERY,
+
+ PR_MACEMASTERY,
+ PR_IMPOSITIO,
+ PR_SUFFRAGIUM,
+ PR_ASPERSIO,
+ PR_BENEDICTIO,
+ PR_SANCTUARY,
+ PR_SLOWPOISON,
+ PR_STRECOVERY,
+ PR_KYRIE,
+ PR_MAGNIFICAT,
+ PR_GLORIA,
+ PR_LEXDIVINA,
+ PR_TURNUNDEAD,
+ PR_LEXAETERNA,
+ PR_MAGNUS,
+
+ WZ_FIREPILLAR,
+ WZ_SIGHTRASHER,
+ WZ_FIREIVY,
+ WZ_METEOR,
+ WZ_JUPITEL,
+ WZ_VERMILION,
+ WZ_WATERBALL,
+ WZ_ICEWALL,
+ WZ_FROSTNOVA,
+ WZ_STORMGUST,
+ WZ_EARTHSPIKE,
+ WZ_HEAVENDRIVE,
+ WZ_QUAGMIRE,
+ WZ_ESTIMATION,
+
+ BS_IRON,
+ BS_STEEL,
+ BS_ENCHANTEDSTONE,
+ BS_ORIDEOCON,
+ BS_DAGGER,
+ BS_SWORD,
+ BS_TWOHANDSWORD,
+ BS_AXE,
+ BS_MACE,
+ BS_KNUCKLE,
+ BS_SPEAR,
+ BS_HILTBINDING,
+ BS_FINDINGORE,
+ BS_WEAPONRESEARCH,
+ BS_REPAIRWEAPON,
+ BS_SKINTEMPER,
+ BS_HAMMERFALL,
+ BS_ADRENALINE,
+ BS_WEAPONPERFECT,
+ BS_OVERTHRUST,
+ BS_MAXIMIZE,
+
+ HT_SKIDTRAP,
+ HT_LANDMINE,
+ HT_ANKLESNARE,
+ HT_SHOCKWAVE,
+ HT_SANDMAN,
+ HT_FLASHER,
+ HT_FREEZINGTRAP,
+ HT_BLASTMINE,
+ HT_CLAYMORETRAP,
+ HT_REMOVETRAP,
+ HT_TALKIEBOX,
+ HT_BEASTBANE,
+ HT_FALCON,
+ HT_STEELCROW,
+ HT_BLITZBEAT,
+ HT_DETECTING,
+ HT_SPRINGTRAP,
+
+ AS_RIGHT,
+ AS_LEFT,
+ AS_KATAR,
+ AS_CLOAKING,
+ AS_SONICBLOW,
+ AS_GRIMTOOTH,
+ AS_ENCHANTPOISON,
+ AS_POISONREACT,
+ AS_VENOMDUST,
+ AS_SPLASHER,
+
+ NV_FIRSTAID,
+ NV_TRICKDEAD,
+ SM_MOVINGRECOVERY,
+ SM_FATALBLOW,
+ SM_AUTOBERSERK,
+ AC_MAKINGARROW,
+ AC_CHARGEARROW,
+ TF_SPRINKLESAND,
+ TF_BACKSLIDING,
+ TF_PICKSTONE,
+ TF_THROWSTONE,
+ MC_CARTREVOLUTION,
+ MC_CHANGECART,
+ MC_LOUD,
+ AL_HOLYLIGHT,
+ MG_ENERGYCOAT,
+
+ NPC_PIERCINGATT,
+ NPC_MENTALBREAKER,
+ NPC_RANGEATTACK,
+ NPC_ATTRICHANGE,
+ NPC_CHANGEWATER,
+ NPC_CHANGEGROUND,
+ NPC_CHANGEFIRE,
+ NPC_CHANGEWIND,
+ NPC_CHANGEPOISON,
+ NPC_CHANGEHOLY,
+ NPC_CHANGEDARKNESS,
+ NPC_CHANGETELEKINESIS,
+ NPC_CRITICALSLASH,
+ NPC_COMBOATTACK,
+ NPC_GUIDEDATTACK,
+ NPC_SELFDESTRUCTION,
+ NPC_SPLASHATTACK,
+ NPC_SUICIDE,
+ NPC_POISON,
+ NPC_BLINDATTACK,
+ NPC_SILENCEATTACK,
+ NPC_STUNATTACK,
+ NPC_PETRIFYATTACK,
+ NPC_CURSEATTACK,
+ NPC_SLEEPATTACK,
+ NPC_RANDOMATTACK,
+ NPC_WATERATTACK,
+ NPC_GROUNDATTACK,
+ NPC_FIREATTACK,
+ NPC_WINDATTACK,
+ NPC_POISONATTACK,
+ NPC_HOLYATTACK,
+ NPC_DARKNESSATTACK,
+ NPC_TELEKINESISATTACK,
+ NPC_MAGICALATTACK,
+ NPC_METAMORPHOSIS,
+ NPC_PROVOCATION,
+ NPC_SMOKING,
+ NPC_SUMMONSLAVE,
+ NPC_EMOTION,
+ NPC_TRANSFORMATION,
+ NPC_BLOODDRAIN,
+ NPC_ENERGYDRAIN,
+ NPC_KEEPING,
+ NPC_DARKBREATH,
+ NPC_DARKBLESSING,
+ NPC_BARRIER,
+ NPC_DEFENDER,
+ NPC_LICK,
+ NPC_HALLUCINATION,
+ NPC_REBIRTH,
+ NPC_SUMMONMONSTER,
+
+ RG_SNATCHER,
+ RG_STEALCOIN,
+ RG_BACKSTAP,
+ RG_TUNNELDRIVE,
+ RG_RAID,
+ RG_STRIPWEAPON,
+ RG_STRIPSHIELD,
+ RG_STRIPARMOR,
+ RG_STRIPHELM,
+ RG_INTIMIDATE,
+ RG_GRAFFITI,
+ RG_FLAGGRAFFITI,
+ RG_CLEANER,
+ RG_GANGSTER,
+ RG_COMPULSION,
+ RG_PLAGIARISM,
+
+ AM_AXEMASTERY,
+ AM_LEARNINGPOTION,
+ AM_PHARMACY,
+ AM_DEMONSTRATION,
+ AM_ACIDTERROR,
+ AM_POTIONPITCHER,
+ AM_CANNIBALIZE,
+ AM_SPHEREMINE,
+ AM_CP_WEAPON,
+ AM_CP_SHIELD,
+ AM_CP_ARMOR,
+ AM_CP_HELM,
+ AM_BIOETHICS,
+ AM_BIOTECHNOLOGY,
+ AM_CREATECREATURE,
+ AM_CULTIVATION,
+ AM_FLAMECONTROL,
+ AM_CALLHOMUN,
+ AM_REST,
+ AM_DRILLMASTER,
+ AM_HEALHOMUN,
+ AM_RESURRECTHOMUN,
+
+ CR_TRUST,
+ CR_AUTOGUARD,
+ CR_SHIELDCHARGE,
+ CR_SHIELDBOOMERANG,
+ CR_REFLECTSHIELD,
+ CR_HOLYCROSS,
+ CR_GRANDCROSS,
+ CR_DEVOTION,
+ CR_PROVIDENCE,
+ CR_DEFENDER,
+ CR_SPEARQUICKEN,
+
+ MO_IRONHAND,
+ MO_SPIRITSRECOVERY,
+ MO_CALLSPIRITS,
+ MO_ABSORBSPIRITS,
+ MO_TRIPLEATTACK,
+ MO_BODYRELOCATION,
+ MO_DODGE,
+ MO_INVESTIGATE,
+ MO_FINGEROFFENSIVE,
+ MO_STEELBODY,
+ MO_BLADESTOP,
+ MO_EXPLOSIONSPIRITS,
+ MO_EXTREMITYFIST,
+ MO_CHAINCOMBO,
+ MO_COMBOFINISH,
+
+ SA_ADVANCEDBOOK,
+ SA_CASTCANCEL,
+ SA_MAGICROD,
+ SA_SPELLBREAKER,
+ SA_FREECAST,
+ SA_AUTOSPELL,
+ SA_FLAMELAUNCHER,
+ SA_FROSTWEAPON,
+ SA_LIGHTNINGLOADER,
+ SA_SEISMICWEAPON,
+ SA_DRAGONOLOGY,
+ SA_VOLCANO,
+ SA_DELUGE,
+ SA_VIOLENTGALE,
+ SA_LANDPROTECTOR,
+ SA_DISPELL,
+ SA_ABRACADABRA,
+ SA_MONOCELL,
+ SA_CLASSCHANGE,
+ SA_SUMMONMONSTER,
+ SA_REVERSEORCISH,
+ SA_DEATH,
+ SA_FORTUNE,
+ SA_TAMINGMONSTER,
+ SA_QUESTION,
+ SA_GRAVITY,
+ SA_LEVELUP,
+ SA_INSTANTDEATH,
+ SA_FULLRECOVERY,
+ SA_COMA,
+
+ BD_ADAPTATION,
+ BD_ENCORE,
+ BD_LULLABY,
+ BD_RICHMANKIM,
+ BD_ETERNALCHAOS,
+ BD_DRUMBATTLEFIELD,
+ BD_RINGNIBELUNGEN,
+ BD_ROKISWEIL,
+ BD_INTOABYSS,
+ BD_SIEGFRIED,
+ BD_RAGNAROK,
+
+ BA_MUSICALLESSON,
+ BA_MUSICALSTRIKE,
+ BA_DISSONANCE,
+ BA_FROSTJOKER,
+ BA_WHISTLE,
+ BA_ASSASSINCROSS,
+ BA_POEMBRAGI,
+ BA_APPLEIDUN,
+
+ DC_DANCINGLESSON,
+ DC_THROWARROW,
+ DC_UGLYDANCE,
+ DC_SCREAM,
+ DC_HUMMING,
+ DC_DONTFORGETME,
+ DC_FORTUNEKISS,
+ DC_SERVICEFORYOU,
+
+ NPC_RANDOMMOVE,
+ NPC_SPEEDUP,
+ NPC_REVENGE,
+
+ WE_MALE,
+ WE_FEMALE,
+ WE_CALLPARTNER,
+
+ ITM_TOMAHAWK,
+
+ NPC_DARKCROSS,
+ NPC_GRANDDARKNESS,
+ NPC_DARKSTRIKE,
+ NPC_DARKTHUNDER,
+ NPC_STOP,
+ NPC_WEAPONBRAKER,
+ NPC_ARMORBRAKE,
+ NPC_HELMBRAKE,
+ NPC_SHIELDBRAKE,
+ NPC_UNDEADATTACK,
+ NPC_CHANGEUNDEAD,
+ NPC_POWERUP,
+ NPC_AGIUP,
+ NPC_SIEGEMODE,
+ NPC_CALLSLAVE,
+ NPC_INVISIBLE,
+ NPC_RUN,
+
+ LK_AURABLADE,
+ LK_PARRYING,
+ LK_CONCENTRATION,
+ LK_TENSIONRELAX,
+ LK_BERSERK,
+ LK_FURY,
+ HP_ASSUMPTIO,
+ HP_BASILICA,
+ HP_MEDITATIO,
+ HW_SOULDRAIN,
+ HW_MAGICCRASHER,
+ HW_MAGICPOWER,
+ PA_PRESSURE,
+ PA_SACRIFICE,
+ PA_GOSPEL,
+ CH_PALMSTRIKE,
+ CH_TIGERFIST,
+ CH_CHAINCRUSH,
+ PF_HPCONVERSION,
+ PF_SOULCHANGE,
+ PF_SOULBURN,
+ ASC_KATAR,
+ ASC_HALLUCINATION,
+ ASC_EDP,
+ ASC_BREAKER,
+ SN_SIGHT,
+ SN_FALCONASSAULT,
+ SN_SHARPSHOOTING,
+ SN_WINDWALK,
+ WS_MELTDOWN,
+ WS_CREATECOIN,
+ WS_CREATENUGGET,
+ WS_CARTBOOST,
+ WS_SYSTEMCREATE,
+ ST_CHASEWALK,
+ ST_REJECTSWORD,
+ ST_STEALBACKPACK,
+ CR_ALCHEMY,
+ CR_SYNTHESISPOTION,
+ CG_ARROWVULCAN,
+ CG_MOONLIT,
+ CG_MARIONETTE,
+ LK_SPIRALPIERCE,
+ LK_HEADCRUSH,
+ LK_JOINTBEAT,
+ HW_NAPALMVULCAN,
+ CH_SOULCOLLECT,
+ PF_MINDBREAKER,
+ PF_MEMORIZE,
+ PF_FOGWALL,
+ PF_SPIDERWEB,
+ ASC_METEORASSAULT,
+ ASC_CDP,
+ WE_BABY,
+ WE_CALLPARENT,
+ WE_CALLBABY,
+
+ TK_RUN,
+ TK_READYSTORM,
+ TK_STORMKICK,
+ TK_READYDOWN,
+ TK_DOWNKICK,
+ TK_READYTURN,
+ TK_TURNKICK,
+ TK_READYCOUNTER,
+ TK_COUNTER,
+ TK_DODGE,
+ TK_JUMPKICK,
+ TK_HPTIME,
+ TK_SPTIME,
+ TK_POWER,
+ TK_SEVENWIND,
+ TK_HIGHJUMP,
+
+ SG_FEEL,
+ SG_SUN_WARM,
+ SG_MOON_WARM,
+ SG_STAR_WARM,
+ SG_SUN_COMFORT,
+ SG_MOON_COMFORT,
+ SG_STAR_COMFORT,
+ SG_HATE,
+ SG_SUN_ANGER,
+ SG_MOON_ANGER,
+ SG_STAR_ANGER,
+ SG_SUN_BLESS,
+ SG_MOON_BLESS,
+ SG_STAR_BLESS,
+ SG_DEVIL,
+ SG_FRIEND,
+ SG_KNOWLEDGE,
+ SG_FUSION,
+
+ SL_ALCHEMIST,
+ AM_BERSERKPITCHER,
+ SL_MONK,
+ SL_STAR,
+ SL_SAGE,
+ SL_CRUSADER,
+ SL_SUPERNOVICE,
+ SL_KNIGHT,
+ SL_WIZARD,
+ SL_PRIEST,
+ SL_BARDDANCER,
+ SL_ROGUE,
+ SL_ASSASIN,
+ SL_BLACKSMITH,
+ BS_ADRENALINE2,
+ SL_HUNTER,
+ SL_SOULLINKER,
+ SL_KAIZEL,
+ SL_KAAHI,
+ SL_KAUPE,
+ SL_KAITE,
+ SL_KAINA,
+ SL_STIN,
+ SL_STUN,
+ SL_SMA,
+ SL_SWOO,
+ SL_SKE,
+ SL_SKA,
+
+ SM_SELFPROVOKE,
+ NPC_EMOTION_ON,
+ ST_PRESERVE,
+ ST_FULLSTRIP,
+ WS_WEAPONREFINE,
+ CR_SLIMPITCHER,
+ CR_FULLPROTECTION,
+ PA_SHIELDCHAIN,
+ HP_MANARECHARGE,
+ PF_DOUBLECASTING,
+ HW_GANBANTEIN,
+ HW_GRAVITATION,
+ WS_CARTTERMINATION,
+ WS_OVERTHRUSTMAX,
+ CG_LONGINGFREEDOM,
+ CG_HERMODE,
+ CG_TAROTCARD,
+ CR_ACIDDEMONSTRATION,
+ CR_CULTIVATION,
+ ITEM_ENCHANTARMS,
+ TK_MISSION,
+ SL_HIGH,
+ KN_ONEHAND,
+ AM_TWILIGHT1,
+ AM_TWILIGHT2,
+ AM_TWILIGHT3,
+ HT_POWER,
+
+ GS_GLITTERING,
+ GS_FLING,
+ GS_TRIPLEACTION,
+ GS_BULLSEYE,
+ GS_MADNESSCANCEL,
+ GS_ADJUSTMENT,
+ GS_INCREASING,
+ GS_MAGICALBULLET,
+ GS_CRACKER,
+ GS_SINGLEACTION,
+ GS_SNAKEEYE,
+ GS_CHAINACTION,
+ GS_TRACKING,
+ GS_DISARM,
+ GS_PIERCINGSHOT,
+ GS_RAPIDSHOWER,
+ GS_DESPERADO,
+ GS_GATLINGFEVER,
+ GS_DUST,
+ GS_FULLBUSTER,
+ GS_SPREADATTACK,
+ GS_GROUNDDRIFT,
+
+ NJ_TOBIDOUGU,
+ NJ_SYURIKEN,
+ NJ_KUNAI,
+ NJ_HUUMA,
+ NJ_ZENYNAGE,
+ NJ_TATAMIGAESHI,
+ NJ_KASUMIKIRI,
+ NJ_SHADOWJUMP,
+ NJ_KIRIKAGE,
+ NJ_UTSUSEMI,
+ NJ_BUNSINJYUTSU,
+ NJ_NINPOU,
+ NJ_KOUENKA,
+ NJ_KAENSIN,
+ NJ_BAKUENRYU,
+ NJ_HYOUSENSOU,
+ NJ_SUITON,
+ NJ_HYOUSYOURAKU,
+ NJ_HUUJIN,
+ NJ_RAIGEKISAI,
+ NJ_KAMAITACHI,
+ NJ_NEN,
+ NJ_ISSEN,
+
+ MB_FIGHTING,
+ MB_NEUTRAL,
+ MB_TAIMING_PUTI,
+ MB_WHITEPOTION,
+ MB_MENTAL,
+ MB_CARDPITCHER,
+ MB_PETPITCHER,
+ MB_BODYSTUDY,
+ MB_BODYALTER,
+ MB_PETMEMORY,
+ MB_M_TELEPORT,
+ MB_B_GAIN,
+ MB_M_GAIN,
+ MB_MISSION,
+ MB_MUNAKKNOWLEDGE,
+ MB_MUNAKBALL,
+ MB_SCROLL,
+ MB_B_GATHERING,
+ MB_M_GATHERING,
+ MB_B_EXCLUDE,
+ MB_B_DRIFT,
+ MB_B_WALLRUSH,
+ MB_M_WALLRUSH,
+ MB_B_WALLSHIFT,
+ MB_M_WALLCRASH,
+ MB_M_REINCARNATION,
+ MB_B_EQUIP,
+
+ SL_DEATHKNIGHT,
+ SL_COLLECTOR,
+ SL_NINJA,
+ SL_GUNNER,
+ AM_TWILIGHT4,
+ DA_RESET,
+ DE_BERSERKAIZER,
+ DA_DARKPOWER,
+
+ DE_PASSIVE,
+ DE_PATTACK,
+ DE_PSPEED,
+ DE_PDEFENSE,
+ DE_PCRITICAL,
+ DE_PHP,
+ DE_PSP,
+ DE_RESET,
+ DE_RANKING,
+ DE_PTRIPLE,
+ DE_ENERGY,
+ DE_NIGHTMARE,
+ DE_SLASH,
+ DE_COIL,
+ DE_WAVE,
+ DE_REBIRTH,
+ DE_AURA,
+ DE_FREEZER,
+ DE_CHANGEATTACK,
+ DE_PUNISH,
+ DE_POISON,
+ DE_INSTANT,
+ DE_WARNING,
+ DE_RANKEDKNIFE,
+ DE_RANKEDGRADIUS,
+ DE_GAUGE,
+ DE_GTIME,
+ DE_GPAIN,
+ DE_GSKILL,
+ DE_GKILL,
+ DE_ACCEL,
+ DE_BLOCKDOUBLE,
+ DE_BLOCKMELEE,
+ DE_BLOCKFAR,
+ DE_FRONTATTACK,
+ DE_DANGERATTACK,
+ DE_TWINATTACK,
+ DE_WINDATTACK,
+ DE_WATERATTACK,
+
+ DA_ENERGY,
+ DA_CLOUD,
+ DA_FIRSTSLOT,
+ DA_HEADDEF,
+ DA_SPACE,
+ DA_TRANSFORM,
+ DA_EXPLOSION,
+ DA_REWARD,
+ DA_CRUSH,
+ DA_ITEMREBUILD,
+ DA_ILLUSION,
+ DA_NUETRALIZE,
+ DA_RUNNER,
+ DA_TRANSFER,
+ DA_WALL,
+ DA_ZENY,
+ DA_REVENGE,
+ DA_EARPLUG,
+ DA_CONTRACT,
+ DA_BLACK,
+ DA_DREAM,
+ DA_MAGICCART,
+ DA_COPY,
+ DA_CRYSTAL,
+ DA_EXP,
+ DA_CARTSWING,
+ DA_REBUILD,
+ DA_JOBCHANGE,
+ DA_EDARKNESS,
+ DA_EGUARDIAN,
+ DA_TIMEOUT,
+ ALL_TIMEIN,
+ DA_ZENYRANK,
+ DA_ACCESSORYMIX,
+
+ NPC_EARTHQUAKE,
+ NPC_FIREBREATH,
+ NPC_ICEBREATH,
+ NPC_THUNDERBREATH,
+ NPC_ACIDBREATH,
+ NPC_DARKNESSBREATH,
+ NPC_DRAGONFEAR,
+ NPC_BLEEDING,
+ NPC_PULSESTRIKE,
+ NPC_HELLJUDGEMENT,
+ NPC_WIDESILENCE,
+ NPC_WIDEFREEZE,
+ NPC_WIDEBLEEDING,
+ NPC_WIDESTONE,
+ NPC_WIDECONFUSE,
+ NPC_WIDESLEEP,
+ NPC_WIDESIGHT,
+ NPC_EVILLAND,
+ NPC_MAGICMIRROR,
+ NPC_SLOWCAST,
+ NPC_CRITICALWOUND,
+ NPC_EXPULSION,
+ NPC_STONESKIN,
+ NPC_ANTIMAGIC,
+ NPC_WIDECURSE,
+ NPC_WIDESTUN,
+ NPC_VAMPIRE_GIFT,
+ NPC_WIDESOULDRAIN,
+
+ ALL_INCCARRY,
+ NPC_TALK,
+ NPC_HELLPOWER,
+ NPC_WIDEHELLDIGNITY,
+ NPC_INVINCIBLE,
+ NPC_INVINCIBLEOFF,
+ NPC_ALLHEAL,
+ GM_SANDMAN,
+ CASH_BLESSING,
+ CASH_INCAGI,
+ CASH_ASSUMPTIO,
+ ALL_CATCRY,
+ ALL_PARTYFLEE,
+ ALL_ANGEL_PROTECT,
+ ALL_DREAM_SUMMERNIGHT,
+ NPC_CHANGEUNDEAD2,
+ ALL_REVERSEORCISH,
+ ALL_WEWISH,
+ ALL_SONKRAN,
+ NPC_WIDEHEALTHFEAR,
+ NPC_WIDEBODYBURNNING,
+ NPC_WIDEFROSTMISTY,
+ NPC_WIDECOLD,
+ NPC_WIDE_DEEP_SLEEP,
+ NPC_WIDESIREN,
+ NPC_VENOMFOG,
+ NPC_MILLENNIUMSHIELD,
+ NPC_COMET,
+
+ KN_CHARGEATK = 1001,
+ CR_SHRINK,
+ AS_SONICACCEL,
+ AS_VENOMKNIFE,
+ RG_CLOSECONFINE,
+ WZ_SIGHTBLASTER,
+ SA_CREATECON,
+ SA_ELEMENTWATER,
+ HT_PHANTASMIC,
+ BA_PANGVOICE,
+ DC_WINKCHARM,
+ BS_UNFAIRLYTRICK,
+ BS_GREED,
+ PR_REDEMPTIO,
+ MO_KITRANSLATION,
+ MO_BALKYOUNG,
+ SA_ELEMENTGROUND,
+ SA_ELEMENTFIRE,
+ SA_ELEMENTWIND,
+
+ RK_ENCHANTBLADE = 2001,
+ RK_SONICWAVE,
+ RK_DEATHBOUND,
+ RK_HUNDREDSPEAR,
+ RK_WINDCUTTER,
+ RK_IGNITIONBREAK,
+ RK_DRAGONTRAINING,
+ RK_DRAGONBREATH,
+ RK_DRAGONHOWLING,
+ RK_RUNEMASTERY,
+ RK_MILLENNIUMSHIELD,
+ RK_CRUSHSTRIKE,
+ RK_REFRESH,
+ RK_GIANTGROWTH,
+ RK_STONEHARDSKIN,
+ RK_VITALITYACTIVATION,
+ RK_STORMBLAST,
+ RK_FIGHTINGSPIRIT,
+ RK_ABUNDANCE,
+ RK_PHANTOMTHRUST,
+
+ GC_VENOMIMPRESS,
+ GC_CROSSIMPACT,
+ GC_DARKILLUSION,
+ GC_RESEARCHNEWPOISON,
+ GC_CREATENEWPOISON,
+ GC_ANTIDOTE,
+ GC_POISONINGWEAPON,
+ GC_WEAPONBLOCKING,
+ GC_COUNTERSLASH,
+ GC_WEAPONCRUSH,
+ GC_VENOMPRESSURE,
+ GC_POISONSMOKE,
+ GC_CLOAKINGEXCEED,
+ GC_PHANTOMMENACE,
+ GC_HALLUCINATIONWALK,
+ GC_ROLLINGCUTTER,
+ GC_CROSSRIPPERSLASHER,
+
+ AB_JUDEX,
+ AB_ANCILLA,
+ AB_ADORAMUS,
+ AB_CLEMENTIA,
+ AB_CANTO,
+ AB_CHEAL,
+ AB_EPICLESIS,
+ AB_PRAEFATIO,
+ AB_ORATIO,
+ AB_LAUDAAGNUS,
+ AB_LAUDARAMUS,
+ AB_EUCHARISTICA,
+ AB_RENOVATIO,
+ AB_HIGHNESSHEAL,
+ AB_CLEARANCE,
+ AB_EXPIATIO,
+ AB_DUPLELIGHT,
+ AB_DUPLELIGHT_MELEE,
+ AB_DUPLELIGHT_MAGIC,
+ AB_SILENTIUM,
+
+ WL_WHITEIMPRISON = 2201,
+ WL_SOULEXPANSION,
+ WL_FROSTMISTY,
+ WL_JACKFROST,
+ WL_MARSHOFABYSS,
+ WL_RECOGNIZEDSPELL,
+ WL_SIENNAEXECRATE,
+ WL_RADIUS,
+ WL_STASIS,
+ WL_DRAINLIFE,
+ WL_CRIMSONROCK,
+ WL_HELLINFERNO,
+ WL_COMET,
+ WL_CHAINLIGHTNING,
+ WL_CHAINLIGHTNING_ATK,
+ WL_EARTHSTRAIN,
+ WL_TETRAVORTEX,
+ WL_TETRAVORTEX_FIRE,
+ WL_TETRAVORTEX_WATER,
+ WL_TETRAVORTEX_WIND,
+ WL_TETRAVORTEX_GROUND,
+ WL_SUMMONFB,
+ WL_SUMMONBL,
+ WL_SUMMONWB,
+ WL_SUMMON_ATK_FIRE,
+ WL_SUMMON_ATK_WIND,
+ WL_SUMMON_ATK_WATER,
+ WL_SUMMON_ATK_GROUND,
+ WL_SUMMONSTONE,
+ WL_RELEASE,
+ WL_READING_SB,
+ WL_FREEZE_SP,
+
+ RA_ARROWSTORM,
+ RA_FEARBREEZE,
+ RA_RANGERMAIN,
+ RA_AIMEDBOLT,
+ RA_DETONATOR,
+ RA_ELECTRICSHOCKER,
+ RA_CLUSTERBOMB,
+ RA_WUGMASTERY,
+ RA_WUGRIDER,
+ RA_WUGDASH,
+ RA_WUGSTRIKE,
+ RA_WUGBITE,
+ RA_TOOTHOFWUG,
+ RA_SENSITIVEKEEN,
+ RA_CAMOUFLAGE,
+ RA_RESEARCHTRAP,
+ RA_MAGENTATRAP,
+ RA_COBALTTRAP,
+ RA_MAIZETRAP,
+ RA_VERDURETRAP,
+ RA_FIRINGTRAP,
+ RA_ICEBOUNDTRAP,
+
+ NC_MADOLICENCE,
+ NC_BOOSTKNUCKLE,
+ NC_PILEBUNKER,
+ NC_VULCANARM,
+ NC_FLAMELAUNCHER,
+ NC_COLDSLOWER,
+ NC_ARMSCANNON,
+ NC_ACCELERATION,
+ NC_HOVERING,
+ NC_F_SIDESLIDE,
+ NC_B_SIDESLIDE,
+ NC_MAINFRAME,
+ NC_SELFDESTRUCTION,
+ NC_SHAPESHIFT,
+ NC_EMERGENCYCOOL,
+ NC_INFRAREDSCAN,
+ NC_ANALYZE,
+ NC_MAGNETICFIELD,
+ NC_NEUTRALBARRIER,
+ NC_STEALTHFIELD,
+ NC_REPAIR,
+ NC_TRAININGAXE,
+ NC_RESEARCHFE,
+ NC_AXEBOOMERANG,
+ NC_POWERSWING,
+ NC_AXETORNADO,
+ NC_SILVERSNIPER,
+ NC_MAGICDECOY,
+ NC_DISJOINT,
+
+ SC_FATALMENACE,
+ SC_REPRODUCE,
+ SC_AUTOSHADOWSPELL,
+ SC_SHADOWFORM,
+ SC_TRIANGLESHOT,
+ SC_BODYPAINT,
+ SC_INVISIBILITY,
+ SC_DEADLYINFECT,
+ SC_ENERVATION,
+ SC_GROOMY,
+ SC_IGNORANCE,
+ SC_LAZINESS,
+ SC_UNLUCKY,
+ SC_WEAKNESS,
+ SC_STRIPACCESSARY,
+ SC_MANHOLE,
+ SC_DIMENSIONDOOR,
+ SC_CHAOSPANIC,
+ SC_MAELSTROM,
+ SC_BLOODYLUST,
+ SC_FEINTBOMB,
+
+ LG_CANNONSPEAR = 2307,
+ LG_BANISHINGPOINT,
+ LG_TRAMPLE,
+ LG_SHIELDPRESS,
+ LG_REFLECTDAMAGE,
+ LG_PINPOINTATTACK,
+ LG_FORCEOFVANGUARD,
+ LG_RAGEBURST,
+ LG_SHIELDSPELL,
+ LG_EXEEDBREAK,
+ LG_OVERBRAND,
+ LG_PRESTIGE,
+ LG_BANDING,
+ LG_MOONSLASHER,
+ LG_RAYOFGENESIS,
+ LG_PIETY,
+ LG_EARTHDRIVE,
+ LG_HESPERUSLIT,
+ LG_INSPIRATION,
+
+ SR_DRAGONCOMBO,
+ SR_SKYNETBLOW,
+ SR_EARTHSHAKER,
+ SR_FALLENEMPIRE,
+ SR_TIGERCANNON,
+ SR_HELLGATE,
+ SR_RAMPAGEBLASTER,
+ SR_CRESCENTELBOW,
+ SR_CURSEDCIRCLE,
+ SR_LIGHTNINGWALK,
+ SR_KNUCKLEARROW,
+ SR_WINDMILL,
+ SR_RAISINGDRAGON,
+ SR_GENTLETOUCH,
+ SR_ASSIMILATEPOWER,
+ SR_POWERVELOCITY,
+ SR_CRESCENTELBOW_AUTOSPELL,
+ SR_GATEOFHELL,
+ SR_GENTLETOUCH_QUIET,
+ SR_GENTLETOUCH_CURE,
+ SR_GENTLETOUCH_ENERGYGAIN,
+ SR_GENTLETOUCH_CHANGE,
+ SR_GENTLETOUCH_REVITALIZE,
+
+ WA_SWING_DANCE = 2350,
+ WA_SYMPHONY_OF_LOVER,
+ WA_MOONLIT_SERENADE,
+
+ MI_RUSH_WINDMILL = 2381,
+ MI_ECHOSONG,
+ MI_HARMONIZE,
+
+ WM_LESSON = 2412,
+ WM_METALICSOUND,
+ WM_REVERBERATION,
+ WM_REVERBERATION_MELEE,
+ WM_REVERBERATION_MAGIC,
+ WM_DOMINION_IMPULSE,
+ WM_SEVERE_RAINSTORM,
+ WM_POEMOFNETHERWORLD,
+ WM_VOICEOFSIREN,
+ WM_DEADHILLHERE,
+ WM_LULLABY_DEEPSLEEP,
+ WM_SIRCLEOFNATURE,
+ WM_RANDOMIZESPELL,
+ WM_GLOOMYDAY,
+ WM_GREAT_ECHO,
+ WM_SONG_OF_MANA,
+ WM_DANCE_WITH_WUG,
+ WM_SOUND_OF_DESTRUCTION,
+ WM_SATURDAY_NIGHT_FEVER,
+ WM_LERADS_DEW,
+ WM_MELODYOFSINK,
+ WM_BEYOND_OF_WARCRY,
+ WM_UNLIMITED_HUMMING_VOICE,
+
+ SO_FIREWALK = 2443,
+ SO_ELECTRICWALK,
+ SO_SPELLFIST,
+ SO_EARTHGRAVE,
+ SO_DIAMONDDUST,
+ SO_POISON_BUSTER,
+ SO_PSYCHIC_WAVE,
+ SO_CLOUD_KILL,
+ SO_STRIKING,
+ SO_WARMER,
+ SO_VACUUM_EXTREME,
+ SO_VARETYR_SPEAR,
+ SO_ARRULLO,
+ SO_EL_CONTROL,
+ SO_SUMMON_AGNI,
+ SO_SUMMON_AQUA,
+ SO_SUMMON_VENTUS,
+ SO_SUMMON_TERA,
+ SO_EL_ACTION,
+ SO_EL_ANALYSIS,
+ SO_EL_SYMPATHY,
+ SO_EL_CURE,
+ SO_FIRE_INSIGNIA,
+ SO_WATER_INSIGNIA,
+ SO_WIND_INSIGNIA,
+ SO_EARTH_INSIGNIA,
+
+ GN_TRAINING_SWORD = 2474,
+ GN_REMODELING_CART,
+ GN_CART_TORNADO,
+ GN_CARTCANNON,
+ GN_CARTBOOST,
+ GN_THORNS_TRAP,
+ GN_BLOOD_SUCKER,
+ GN_SPORE_EXPLOSION,
+ GN_WALLOFTHORN,
+ GN_CRAZYWEED,
+ GN_CRAZYWEED_ATK,
+ GN_DEMONIC_FIRE,
+ GN_FIRE_EXPANSION,
+ GN_FIRE_EXPANSION_SMOKE_POWDER,
+ GN_FIRE_EXPANSION_TEAR_GAS,
+ GN_FIRE_EXPANSION_ACID,
+ GN_HELLS_PLANT,
+ GN_HELLS_PLANT_ATK,
+ GN_MANDRAGORA,
+ GN_SLINGITEM,
+ GN_CHANGEMATERIAL,
+ GN_MIX_COOKING,
+ GN_MAKEBOMB,
+ GN_S_PHARMACY,
+ GN_SLINGITEM_RANGEMELEEATK,
+
+ AB_SECRAMENT = 2515,
+ WM_SEVERE_RAINSTORM_MELEE,
+ SR_HOWLINGOFLION,
+ SR_RIDEINLIGHTNING,
+ LG_OVERBRAND_BRANDISH,
+ LG_OVERBRAND_PLUSATK,
+
+ ALL_ODINS_RECALL = 2533,
+ RETURN_TO_ELDICASTES,
+ ALL_BUYING_STORE,
+ ALL_GUARDIAN_RECALL,
+ ALL_ODINS_POWER,
+ BEER_BOTTLE_CAP,
+ NPC_ASSASSINCROSS,
+ NPC_DISSONANCE,
+ NPC_UGLYDANCE,
+ ALL_TETANY,
+ ALL_RAY_OF_PROTECTION,
+ MC_CARTDECORATE,
+
+ KO_YAMIKUMO = 3001,
+ KO_RIGHT,
+ KO_LEFT,
+ KO_JYUMONJIKIRI,
+ KO_SETSUDAN,
+ KO_BAKURETSU,
+ KO_HAPPOKUNAI,
+ KO_MUCHANAGE,
+ KO_HUUMARANKA,
+ KO_MAKIBISHI,
+ KO_MEIKYOUSISUI,
+ KO_ZANZOU,
+ KO_KYOUGAKU,
+ KO_JYUSATSU,
+ KO_KAHU_ENTEN,
+ KO_HYOUHU_HUBUKI,
+ KO_KAZEHU_SEIRAN,
+ KO_DOHU_KOUKAI,
+ KO_KAIHOU,
+ KO_ZENKAI,
+ KO_GENWAKU,
+ KO_IZAYOI,
+ KG_KAGEHUMI,
+ KG_KYOMU,
+ KG_KAGEMUSYA,
+ OB_ZANGETSU,
+ OB_OBOROGENSOU,
+ OB_OBOROGENSOU_TRANSITION_ATK,
+ OB_AKAITSUKI,
+
+ ECL_SNOWFLIP = 3031,
+ ECL_PEONYMAMY,
+ ECL_SADAGUI,
+ ECL_SEQUOIADUST,
+ ECLAGE_RECALL,
+
+ HLIF_HEAL = 8001,
+ HLIF_AVOID,
+ HLIF_BRAIN,
+ HLIF_CHANGE,
+ HAMI_CASTLE,
+ HAMI_DEFENCE,
+ HAMI_SKIN,
+ HAMI_BLOODLUST,
+ HFLI_MOON,
+ HFLI_FLEET,
+ HFLI_SPEED,
+ HFLI_SBR44,
+ HVAN_CAPRICE,
+ HVAN_CHAOTIC,
+ HVAN_INSTRUCT,
+ HVAN_EXPLOSION,
+ MUTATION_BASEJOB,
+ MH_SUMMON_LEGION,
+ MH_NEEDLE_OF_PARALYZE,
+ MH_POISON_MIST,
+ MH_PAIN_KILLER,
+ MH_LIGHT_OF_REGENE,
+ MH_OVERED_BOOST,
+ MH_ERASER_CUTTER,
+ MH_XENO_SLASHER,
+ MH_SILENT_BREEZE,
+ MH_STYLE_CHANGE,
+ MH_SONIC_CRAW,
+ MH_SILVERVEIN_RUSH,
+ MH_MIDNIGHT_FRENZY,
+ MH_STAHL_HORN,
+ MH_GOLDENE_FERSE,
+ MH_STEINWAND,
+ MH_HEILIGE_STANGE,
+ MH_ANGRIFFS_MODUS,
+ MH_TINDER_BREAKER,
+ MH_CBC,
+ MH_EQC,
+ MH_MAGMA_FLOW,
+ MH_GRANITIC_ARMOR,
+ MH_LAVA_SLIDE,
+ MH_PYROCLASTIC,
+ MH_VOLCANIC_ASH,
+
+ MS_BASH = 8201,
+ MS_MAGNUM,
+ MS_BOWLINGBASH,
+ MS_PARRYING,
+ MS_REFLECTSHIELD,
+ MS_BERSERK,
+ MA_DOUBLE,
+ MA_SHOWER,
+ MA_SKIDTRAP,
+ MA_LANDMINE,
+ MA_SANDMAN,
+ MA_FREEZINGTRAP,
+ MA_REMOVETRAP,
+ MA_CHARGEARROW,
+ MA_SHARPSHOOTING,
+ ML_PIERCE,
+ ML_BRANDISH,
+ ML_SPIRALPIERCE,
+ ML_DEFENDER,
+ ML_AUTOGUARD,
+ ML_DEVOTION,
+ MER_MAGNIFICAT,
+ MER_QUICKEN,
+ MER_SIGHT,
+ MER_CRASH,
+ MER_REGAIN,
+ MER_TENDER,
+ MER_BENEDICTION,
+ MER_RECUPERATE,
+ MER_MENTALCURE,
+ MER_COMPRESS,
+ MER_PROVOKE,
+ MER_AUTOBERSERK,
+ MER_DECAGI,
+ MER_SCAPEGOAT,
+ MER_LEXDIVINA,
+ MER_ESTIMATION,
+ MER_KYRIE,
+ MER_BLESSING,
+ MER_INCAGI,
+
+ EL_CIRCLE_OF_FIRE = 8401,
+ EL_FIRE_CLOAK,
+ EL_FIRE_MANTLE,
+ EL_WATER_SCREEN,
+ EL_WATER_DROP,
+ EL_WATER_BARRIER,
+ EL_WIND_STEP,
+ EL_WIND_CURTAIN,
+ EL_ZEPHYR,
+ EL_SOLID_SKIN,
+ EL_STONE_SHIELD,
+ EL_POWER_OF_GAIA,
+ EL_PYROTECHNIC,
+ EL_HEATER,
+ EL_TROPIC,
+ EL_AQUAPLAY,
+ EL_COOLER,
+ EL_CHILLY_AIR,
+ EL_GUST,
+ EL_BLAST,
+ EL_WILD_STORM,
+ EL_PETROLOGY,
+ EL_CURSED_SOIL,
+ EL_UPHEAVAL,
+ EL_FIRE_ARROW,
+ EL_FIRE_BOMB,
+ EL_FIRE_BOMB_ATK,
+ EL_FIRE_WAVE,
+ EL_FIRE_WAVE_ATK,
+ EL_ICE_NEEDLE,
+ EL_WATER_SCREW,
+ EL_WATER_SCREW_ATK,
+ EL_TIDAL_WEAPON,
+ EL_WIND_SLASH,
+ EL_HURRICANE,
+ EL_HURRICANE_ATK,
+ EL_TYPOON_MIS,
+ EL_TYPOON_MIS_ATK,
+ EL_STONE_HAMMER,
+ EL_ROCK_CRUSHER,
+ EL_ROCK_CRUSHER_ATK,
+ EL_STONE_RAIN,
};
/// The client view ids for land skills.
enum {
- UNT_SAFETYWALL = 0x7e,
- UNT_FIREWALL,
- UNT_WARP_WAITING,
- UNT_WARP_ACTIVE,
- UNT_BENEDICTIO, //TODO
- UNT_SANCTUARY,
- UNT_MAGNUS,
- UNT_PNEUMA,
- UNT_DUMMYSKILL, //These show no effect on the client
- UNT_FIREPILLAR_WAITING,
- UNT_FIREPILLAR_ACTIVE,
- UNT_HIDDEN_TRAP, //TODO
- UNT_TRAP, //TODO
- UNT_HIDDEN_WARP_NPC, //TODO
- UNT_USED_TRAPS,
- UNT_ICEWALL,
- UNT_QUAGMIRE,
- UNT_BLASTMINE,
- UNT_SKIDTRAP,
- UNT_ANKLESNARE,
- UNT_VENOMDUST,
- UNT_LANDMINE,
- UNT_SHOCKWAVE,
- UNT_SANDMAN,
- UNT_FLASHER,
- UNT_FREEZINGTRAP,
- UNT_CLAYMORETRAP,
- UNT_TALKIEBOX,
- UNT_VOLCANO,
- UNT_DELUGE,
- UNT_VIOLENTGALE,
- UNT_LANDPROTECTOR,
- UNT_LULLABY,
- UNT_RICHMANKIM,
- UNT_ETERNALCHAOS,
- UNT_DRUMBATTLEFIELD,
- UNT_RINGNIBELUNGEN,
- UNT_ROKISWEIL,
- UNT_INTOABYSS,
- UNT_SIEGFRIED,
- UNT_DISSONANCE,
- UNT_WHISTLE,
- UNT_ASSASSINCROSS,
- UNT_POEMBRAGI,
- UNT_APPLEIDUN,
- UNT_UGLYDANCE,
- UNT_HUMMING,
- UNT_DONTFORGETME,
- UNT_FORTUNEKISS,
- UNT_SERVICEFORYOU,
- UNT_GRAFFITI,
- UNT_DEMONSTRATION,
- UNT_CALLFAMILY,
- UNT_GOSPEL,
- UNT_BASILICA,
- UNT_MOONLIT,
- UNT_FOGWALL,
- UNT_SPIDERWEB,
- UNT_GRAVITATION,
- UNT_HERMODE,
- UNT_KAENSIN, //TODO
- UNT_SUITON,
- UNT_TATAMIGAESHI,
- UNT_KAEN,
- UNT_GROUNDDRIFT_WIND,
- UNT_GROUNDDRIFT_DARK,
- UNT_GROUNDDRIFT_POISON,
- UNT_GROUNDDRIFT_WATER,
- UNT_GROUNDDRIFT_FIRE,
- UNT_DEATHWAVE, //TODO
- UNT_WATERATTACK, //TODO
- UNT_WINDATTACK, //TODO
- UNT_EARTHQUAKE, //TODO
- UNT_EVILLAND,
- UNT_DARK_RUNNER, //TODO
- UNT_DARK_TRANSFER, //TODO
- UNT_EPICLESIS,
- UNT_EARTHSTRAIN,
- UNT_MANHOLE,
- UNT_DIMENSIONDOOR,
- UNT_CHAOSPANIC,
- UNT_MAELSTROM,
- UNT_BLOODYLUST,
- UNT_FEINTBOMB,
- UNT_MAGENTATRAP,
- UNT_COBALTTRAP,
- UNT_MAIZETRAP,
- UNT_VERDURETRAP,
- UNT_FIRINGTRAP,
- UNT_ICEBOUNDTRAP,
- UNT_ELECTRICSHOCKER,
- UNT_CLUSTERBOMB,
- UNT_REVERBERATION,
- UNT_SEVERE_RAINSTORM,
- UNT_FIREWALK,
- UNT_ELECTRICWALK,
- UNT_NETHERWORLD,
- UNT_PSYCHIC_WAVE,
- UNT_CLOUD_KILL,
- UNT_POISONSMOKE,
- UNT_NEUTRALBARRIER,
- UNT_STEALTHFIELD,
- UNT_WARMER,
- UNT_THORNS_TRAP,
- UNT_WALLOFTHORN,
- UNT_DEMONIC_FIRE,
- UNT_FIRE_EXPANSION_SMOKE_POWDER,
- UNT_FIRE_EXPANSION_TEAR_GAS,
- UNT_HELLS_PLANT,
- UNT_VACUUM_EXTREME,
- UNT_BANDING,
- UNT_FIRE_MANTLE,
- UNT_WATER_BARRIER,
- UNT_ZEPHYR,
- UNT_POWER_OF_GAIA,
- UNT_FIRE_INSIGNIA,
- UNT_WATER_INSIGNIA,
- UNT_WIND_INSIGNIA,
- UNT_EARTH_INSIGNIA,
- UNT_POISON_MIST,
- UNT_LAVA_SLIDE,
- UNT_VOLCANIC_ASH,
- UNT_ZENKAI_WATER,
- UNT_ZENKAI_LAND,
- UNT_ZENKAI_FIRE,
- UNT_ZENKAI_WIND,
- UNT_MAKIBISHI,
- UNT_VENOMFOG,
-
- /**
- * Guild Auras
- **/
- UNT_GD_LEADERSHIP = 0xc1,
- UNT_GD_GLORYWOUNDS = 0xc2,
- UNT_GD_SOULCOLD = 0xc3,
- UNT_GD_HAWKEYES = 0xc4,
-
- UNT_MAX = 0x190
+ UNT_SAFETYWALL = 0x7e,
+ UNT_FIREWALL,
+ UNT_WARP_WAITING,
+ UNT_WARP_ACTIVE,
+ UNT_BENEDICTIO, //TODO
+ UNT_SANCTUARY,
+ UNT_MAGNUS,
+ UNT_PNEUMA,
+ UNT_DUMMYSKILL, //These show no effect on the client
+ UNT_FIREPILLAR_WAITING,
+ UNT_FIREPILLAR_ACTIVE,
+ UNT_HIDDEN_TRAP, //TODO
+ UNT_TRAP, //TODO
+ UNT_HIDDEN_WARP_NPC, //TODO
+ UNT_USED_TRAPS,
+ UNT_ICEWALL,
+ UNT_QUAGMIRE,
+ UNT_BLASTMINE,
+ UNT_SKIDTRAP,
+ UNT_ANKLESNARE,
+ UNT_VENOMDUST,
+ UNT_LANDMINE,
+ UNT_SHOCKWAVE,
+ UNT_SANDMAN,
+ UNT_FLASHER,
+ UNT_FREEZINGTRAP,
+ UNT_CLAYMORETRAP,
+ UNT_TALKIEBOX,
+ UNT_VOLCANO,
+ UNT_DELUGE,
+ UNT_VIOLENTGALE,
+ UNT_LANDPROTECTOR,
+ UNT_LULLABY,
+ UNT_RICHMANKIM,
+ UNT_ETERNALCHAOS,
+ UNT_DRUMBATTLEFIELD,
+ UNT_RINGNIBELUNGEN,
+ UNT_ROKISWEIL,
+ UNT_INTOABYSS,
+ UNT_SIEGFRIED,
+ UNT_DISSONANCE,
+ UNT_WHISTLE,
+ UNT_ASSASSINCROSS,
+ UNT_POEMBRAGI,
+ UNT_APPLEIDUN,
+ UNT_UGLYDANCE,
+ UNT_HUMMING,
+ UNT_DONTFORGETME,
+ UNT_FORTUNEKISS,
+ UNT_SERVICEFORYOU,
+ UNT_GRAFFITI,
+ UNT_DEMONSTRATION,
+ UNT_CALLFAMILY,
+ UNT_GOSPEL,
+ UNT_BASILICA,
+ UNT_MOONLIT,
+ UNT_FOGWALL,
+ UNT_SPIDERWEB,
+ UNT_GRAVITATION,
+ UNT_HERMODE,
+ UNT_KAENSIN, //TODO
+ UNT_SUITON,
+ UNT_TATAMIGAESHI,
+ UNT_KAEN,
+ UNT_GROUNDDRIFT_WIND,
+ UNT_GROUNDDRIFT_DARK,
+ UNT_GROUNDDRIFT_POISON,
+ UNT_GROUNDDRIFT_WATER,
+ UNT_GROUNDDRIFT_FIRE,
+ UNT_DEATHWAVE, //TODO
+ UNT_WATERATTACK, //TODO
+ UNT_WINDATTACK, //TODO
+ UNT_EARTHQUAKE, //TODO
+ UNT_EVILLAND,
+ UNT_DARK_RUNNER, //TODO
+ UNT_DARK_TRANSFER, //TODO
+ UNT_EPICLESIS,
+ UNT_EARTHSTRAIN,
+ UNT_MANHOLE,
+ UNT_DIMENSIONDOOR,
+ UNT_CHAOSPANIC,
+ UNT_MAELSTROM,
+ UNT_BLOODYLUST,
+ UNT_FEINTBOMB,
+ UNT_MAGENTATRAP,
+ UNT_COBALTTRAP,
+ UNT_MAIZETRAP,
+ UNT_VERDURETRAP,
+ UNT_FIRINGTRAP,
+ UNT_ICEBOUNDTRAP,
+ UNT_ELECTRICSHOCKER,
+ UNT_CLUSTERBOMB,
+ UNT_REVERBERATION,
+ UNT_SEVERE_RAINSTORM,
+ UNT_FIREWALK,
+ UNT_ELECTRICWALK,
+ UNT_NETHERWORLD,
+ UNT_PSYCHIC_WAVE,
+ UNT_CLOUD_KILL,
+ UNT_POISONSMOKE,
+ UNT_NEUTRALBARRIER,
+ UNT_STEALTHFIELD,
+ UNT_WARMER,
+ UNT_THORNS_TRAP,
+ UNT_WALLOFTHORN,
+ UNT_DEMONIC_FIRE,
+ UNT_FIRE_EXPANSION_SMOKE_POWDER,
+ UNT_FIRE_EXPANSION_TEAR_GAS,
+ UNT_HELLS_PLANT,
+ UNT_VACUUM_EXTREME,
+ UNT_BANDING,
+ UNT_FIRE_MANTLE,
+ UNT_WATER_BARRIER,
+ UNT_ZEPHYR,
+ UNT_POWER_OF_GAIA,
+ UNT_FIRE_INSIGNIA,
+ UNT_WATER_INSIGNIA,
+ UNT_WIND_INSIGNIA,
+ UNT_EARTH_INSIGNIA,
+ UNT_POISON_MIST,
+ UNT_LAVA_SLIDE,
+ UNT_VOLCANIC_ASH,
+ UNT_ZENKAI_WATER,
+ UNT_ZENKAI_LAND,
+ UNT_ZENKAI_FIRE,
+ UNT_ZENKAI_WIND,
+ UNT_MAKIBISHI,
+ UNT_VENOMFOG,
+
+ /**
+ * Guild Auras
+ **/
+ UNT_GD_LEADERSHIP = 0xc1,
+ UNT_GD_GLORYWOUNDS = 0xc2,
+ UNT_GD_SOULCOLD = 0xc3,
+ UNT_GD_HAWKEYES = 0xc4,
+
+ UNT_MAX = 0x190
};
/**
* Skill Unit Save
**/
-void skill_usave_add(struct map_session_data *sd, int skill_num, int skill_lv);
+void skill_usave_add(struct map_session_data * sd, int skill_num, int skill_lv);
void skill_usave_trigger(struct map_session_data *sd);
/**
* Skill Cool Downs - load from pc.c when the character logs in
**/
-void skill_cooldown_load(struct map_session_data *sd);
+void skill_cooldown_load(struct map_session_data * sd);
/**
* Warlock
**/
-#define MAX_SKILL_SPELLBOOK_DB 17
+#define MAX_SKILL_SPELLBOOK_DB 17
enum wl_spheres {
- WLS_FIRE = 0x44,
- WLS_WIND,
- WLS_WATER,
- WLS_STONE,
+ WLS_FIRE = 0x44,
+ WLS_WIND,
+ WLS_WATER,
+ WLS_STONE,
};
-int skill_spellbook(struct map_session_data *sd, int nameid);
+int skill_spellbook (struct map_session_data *sd, int nameid);
int skill_block_check(struct block_list *bl, enum sc_type type, int skillid);
/**
* Guilottine Cross
**/
#define MAX_SKILL_MAGICMUSHROOM_DB 23
struct s_skill_magicmushroom_db {
- int skillid;
+ int skillid;
};
extern struct s_skill_magicmushroom_db skill_magicmushroom_db[MAX_SKILL_MAGICMUSHROOM_DB];
/**
@@ -1834,16 +1838,16 @@ int skill_magicdecoy(struct map_session_data *sd, int nameid);
/**
* Guiltoine Cross
**/
-int skill_poisoningweapon(struct map_session_data *sd, int nameid);
+int skill_poisoningweapon( struct map_session_data *sd, int nameid);
enum gx_poison {
- PO_PARALYSE = 12717,
- PO_LEECHESEND,
- PO_OBLIVIONCURSE,
- PO_DEATHHURT,
- PO_TOXIN,
- PO_PYREXIA,
- PO_MAGICMUSHROOM,
- PO_VENOMBLEED
+ PO_PARALYSE = 12717,
+ PO_LEECHESEND,
+ PO_OBLIVIONCURSE,
+ PO_DEATHHURT,
+ PO_TOXIN,
+ PO_PYREXIA,
+ PO_MAGICMUSHROOM,
+ PO_VENOMBLEED
};
/**
* Auto Shadow Spell (Shadow Chaser)
@@ -1851,7 +1855,7 @@ enum gx_poison {
int skill_select_menu(struct map_session_data *sd,int skill_id);
int skill_elementalanalysis(struct map_session_data *sd, int n, int type, unsigned short *item_list); // Sorcerer Four Elemental Analisys.
-int skill_changematerial(struct map_session_data *sd, int n, unsigned short *item_list); // Genetic Change Material.
+int skill_changematerial(struct map_session_data *sd, int n, unsigned short *item_list); // Genetic Change Material.
int skill_get_elemental_type(int skill_id, int skill_lv);
#endif /* _SKILL_H_ */