summaryrefslogtreecommitdiff
path: root/src/map/map.h
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-04 16:38:36 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-04 16:38:36 +0000
commitc3c4b55d56bc72a77df54990832029a3280a72d2 (patch)
treed14d4bb48a5ea0b6957838017d878e6da1e23e79 /src/map/map.h
parent869b3c9303a403b8c50f68202c61a96c6d9b9332 (diff)
downloadhercules-c3c4b55d56bc72a77df54990832029a3280a72d2.tar.gz
hercules-c3c4b55d56bc72a77df54990832029a3280a72d2.tar.bz2
hercules-c3c4b55d56bc72a77df54990832029a3280a72d2.tar.xz
hercules-c3c4b55d56bc72a77df54990832029a3280a72d2.zip
- Added structure s_addeffect to handle status change additions. Cleaned up relevant code. It is now possible to specify ANY status change, not just the basic ones.
- Added support for bonus3 bAddEff/bAddEffWhenHit as follows: bonus3 bAddEff/bAddEffWhenHit, <SC value>, <rate>, <target flag>. Target flag is 0: Self. 1: Enemy. 2: Both. - Added these descriptions to doc/item_bonus.txt git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7514 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/map.h')
-rw-r--r--src/map/map.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/map/map.h b/src/map/map.h
index 02e4d15fa..510c97f88 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -255,6 +255,13 @@ enum {
MAX_ITEMGROUP,
} item_group_list;
+enum {
+ ATF_SELF=0x01,
+ ATF_TARGET=0x02,
+ ATF_SHORT=0x04,
+ ATF_LONG=0x08
+} auto_trigger_flag;
+
struct block_list {
struct block_list *next,*prev;
int id;
@@ -610,8 +617,6 @@ struct map_session_data {
int subrace[RC_MAX];
int subrace2[RC_MAX];
int subsize[3];
- int addeff[SC_COMMON_MAX-SC_COMMON_MIN+1];
- int addeff2[SC_COMMON_MAX-SC_COMMON_MIN+1];
int reseff[SC_COMMON_MAX-SC_COMMON_MIN+1];
int weapon_coma_ele[ELE_MAX];
int weapon_coma_race[RC_MAX];
@@ -620,22 +625,22 @@ struct map_session_data {
int arrow_addele[ELE_MAX];
int arrow_addrace[RC_MAX];
int arrow_addsize[3];
- int arrow_addeff[SC_COMMON_MAX-SC_COMMON_MIN+1];
- int arrow_addeff2[SC_COMMON_MAX-SC_COMMON_MIN+1];
int magic_addele[ELE_MAX];
int magic_addrace[RC_MAX];
int magic_addsize[3];
int critaddrace[RC_MAX];
int expaddrace[RC_MAX];
int itemhealrate[MAX_ITEMGROUP];
- int addeff3[SC_COMMON_MAX-SC_COMMON_MIN+1];
- short addeff3_type[SC_COMMON_MAX-SC_COMMON_MIN+1];
short sp_gain_race[RC_MAX];
// zeroed arrays end here.
// zeroed structures start here
struct s_autospell{
short id, lv, rate, card_id;
} autospell[MAX_PC_BONUS], autospell2[MAX_PC_BONUS];
+ struct s_addeffect{
+ short id, rate, arrow_rate;
+ unsigned char flag;
+ } addeff[MAX_PC_BONUS], addeff2[MAX_PC_BONUS];
struct { //skillatk raises bonus dmg% of skills, skillblown increases bonus blewcount for some skills.
short id, val;
} skillatk[MAX_PC_BONUS], skillblown[MAX_PC_BONUS];