diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-03-01 16:29:09 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-03-01 16:29:09 +0000 |
commit | 5cb60d195ab9ce1fe6edc9bc8d2d39f13fd129e5 (patch) | |
tree | 8b939dc7ae15919ef14fb666214fbfb5347de2ec /src/map/status.c | |
parent | 312f6f88f6ad557924669557bfc41383f4d22e3f (diff) | |
download | hercules-5cb60d195ab9ce1fe6edc9bc8d2d39f13fd129e5.tar.gz hercules-5cb60d195ab9ce1fe6edc9bc8d2d39f13fd129e5.tar.bz2 hercules-5cb60d195ab9ce1fe6edc9bc8d2d39f13fd129e5.tar.xz hercules-5cb60d195ab9ce1fe6edc9bc8d2d39f13fd129e5.zip |
- Updated the stun length to 5 secs of: Meteor Storm, Sonic Blow, Throw Stone, Sightless Raid, Smite, Cart Termination
- SG Union will consume now SP if you use it while not soul linked.
- Added variable "skip" to the mob spawn data, to know how many mobs to skip when spawning because they were not removed due to the "mob_remove_damaged" setting.
- Corrected the Hp/Sp regen formulas from Hp/Sp/Spirit Recovery and Happy/Peaceful break according to recent forums discussions (formula is changed from x*lv +max*lv/500 to lv*(x+max/500).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9944 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/map/status.c b/src/map/status.c index dfa0ab424..924a97407 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -2494,14 +2494,14 @@ void status_calc_regen(struct block_list *bl, struct status_data *status, struct val = 0; if((skill=pc_checkskill(sd,SM_RECOVERY)) > 0) - val += skill*5 + (status->max_hp*skill/500); + val += skill*(5 + status->max_hp/500); sregen->hp = cap_value(val, 0, SHRT_MAX); val = 0; if((skill=pc_checkskill(sd,MG_SRECOVERY)) > 0) - val += skill*3 + (status->max_sp*skill/500); + val += skill*(3 + status->max_sp/500); if((skill=pc_checkskill(sd,NJ_NINPOU)) > 0) - val += skill*3 + (status->max_sp*skill/500); + val += skill*(3 + status->max_sp/500); sregen->sp = cap_value(val, 0, SHRT_MAX); // Skill-related recovery (only when sit) @@ -2509,21 +2509,21 @@ void status_calc_regen(struct block_list *bl, struct status_data *status, struct val = 0; if((skill=pc_checkskill(sd,MO_SPIRITSRECOVERY)) > 0) - val += skill*4 + (status->max_hp*skill/500); + val += skill*(4 + status->max_hp/500); if((skill=pc_checkskill(sd,TK_HPTIME)) > 0 && sd->state.rest) - val += skill*30 + (status->max_hp*skill/500); + val += skill*(30 + status->max_hp/500); sregen->hp = cap_value(val, 0, SHRT_MAX); val = 0; if((skill=pc_checkskill(sd,TK_SPTIME)) > 0 && sd->state.rest) { - val += skill*3 + (status->max_sp*skill/500); + val += skill*(3 + status->max_sp/500); if ((skill=pc_checkskill(sd,SL_KAINA)) > 0) //Power up Enjoyable Rest val += (30+10*skill)*val/100; } if((skill=pc_checkskill(sd,MO_SPIRITSRECOVERY)) > 0) - val += skill*2 + (status->max_sp*skill/500); + val += skill*(2 + status->max_sp/500); sregen->sp = cap_value(val, 0, SHRT_MAX); } |