diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/pc.c | 6 | ||||
-rw-r--r-- | src/map/pc.h | 1 | ||||
-rw-r--r-- | src/map/status.c | 1 |
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) |