summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorL0ne_W0lf <L0ne_W0lf@54d463be-8e91-2dee-dedb-b68131a5f0ec>2010-12-06 00:15:16 +0000
committerL0ne_W0lf <L0ne_W0lf@54d463be-8e91-2dee-dedb-b68131a5f0ec>2010-12-06 00:15:16 +0000
commit6f91333809e1e19933c98cd66316bf62a17e2fbc (patch)
treec81bc2d18b22b2dd9ba8b943dad1ad73ad9bae32 /src/map
parent4f80f6346a5628d842f86cca2f2d7404b3d65530 (diff)
downloadhercules-6f91333809e1e19933c98cd66316bf62a17e2fbc.tar.gz
hercules-6f91333809e1e19933c98cd66316bf62a17e2fbc.tar.bz2
hercules-6f91333809e1e19933c98cd66316bf62a17e2fbc.tar.xz
hercules-6f91333809e1e19933c98cd66316bf62a17e2fbc.zip
Added support for bonus bAddItemHealRate, which works for all healing items care of Epoque.
Updated some items to use bonus bAddItemHealRate, and healpower2. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14559 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r--src/map/pc.c6
-rw-r--r--src/map/pc.h1
-rw-r--r--src/map/status.c1
3 files changed, 8 insertions, 0 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index 4759fa4cf..75097343d 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -2351,6 +2351,10 @@ int pc_bonus(struct map_session_data *sd,int type,int val)
if(sd->state.lr_flag != 2)
sd->add_heal2_rate += val;
break;
+ case SP_ADD_ITEM_HEAL_RATE:
+ if(sd->state.lr_flag != 2)
+ sd->itemhealrate2 += val;
+ break;
default:
ShowWarning("pc_bonus: unknown type %d %d !\n",type,val);
break;
@@ -6098,6 +6102,8 @@ int pc_itemheal(struct map_session_data *sd,int itemid, int hp,int sp)
// A potion produced by an Alchemist in the Fame Top 10 gets +50% effect [DracoRPG]
if (potion_flag > 1)
bonus += bonus*(potion_flag-1)*50/100;
+ //All item bonuses.
+ bonus += sd->itemhealrate2;
//Item Group bonuses
bonus += bonus*itemdb_group_bonus(sd, itemid)/100;
//Individual item bonuses.
diff --git a/src/map/pc.h b/src/map/pc.h
index c6c6f4801..9a28a30ee 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -292,6 +292,7 @@ struct map_session_data {
int crit_atk_rate;
int classchange; // [Valaris]
int speed_rate, speed_add_rate, aspd_add;
+ int itemhealrate2; // [Epoque] Increase heal rate of all healing items.
unsigned int setitem_hash, setitem_hash2; //Split in 2 because shift operations only work on int ranges. [Skotlex]
short splash_range, splash_add_range;
diff --git a/src/map/status.c b/src/map/status.c
index 35f72afea..6778bf5b1 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -1846,6 +1846,7 @@ int status_calc_pc_(struct map_session_data* sd, bool first)
+ sizeof(sd->aspd_add)
+ sizeof(sd->setitem_hash)
+ sizeof(sd->setitem_hash2)
+ + sizeof(sd->itemhealrate2)
// shorts
+ sizeof(sd->splash_range)
+ sizeof(sd->splash_add_range)