From bac08d580258b69b365db32ab1705df232851c5b Mon Sep 17 00:00:00 2001 From: rud0lp20 Date: Thu, 10 Jan 2013 05:54:28 +0000 Subject: Fixed bugreport:7151 where NJ_ISSEN don't consume HP on plant type monsters. Fixed bugreport:7154 where RC_BOSS type monsters are not immune with SC_DEEPSLEEP. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17090 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/battle.c | 2 -- src/map/skill.c | 9 ++++++++- src/map/status.c | 4 +++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/map/battle.c b/src/map/battle.c index 8fb9512f8..6f9595108 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2067,7 +2067,6 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo case NJ_ISSEN: wd.damage = 40*sstatus->str +skill_lv*(sstatus->hp/10 + 35); wd.damage2 = 0; - status_set_hp(src, 1, 0); break; case LK_SPIRALPIERCE: case ML_SPIRALPIERCE: @@ -2972,7 +2971,6 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo // Damage = (current HP + atk * skill_lv) - (sdef+edef) ATK_ADD(sstatus->hp); wd.damage2 = 0;// needs more info if this really 0 for dual weilding KG/OB. [malufett] - status_set_hp(src, max(sstatus->hp/100, 1), 0); if( sc && sc->data[SC_BUNSINJYUTSU] && (i=sc->data[SC_BUNSINJYUTSU]->val2) > 0){ wd.div_ = -( i + 2 ); // mirror image number of hits + 2 ATK_ADDRATE(20 + i*20); // (20 + 20 * mirror image) % diff --git a/src/map/skill.c b/src/map/skill.c index 03e4c4baf..757165107 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -3714,7 +3714,14 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint #ifdef RENEWAL sc_start(src,SC_EXTREMITYFIST2,100,skill_lv,skill_get_time(skill_id,skill_lv)); #endif - } + }else + status_set_hp(src, +#ifdef RENEWAL + max(status_get_max_hp(src)/100, 1) +#else + 1 +#endif + , 0); dir = map_calc_dir(src,bl->x,bl->y); if( dir > 0 && dir < 4) x = -i; diff --git a/src/map/status.c b/src/map/status.c index 1a8bc247d..357683c95 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6821,10 +6821,12 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val case SC_ROKISWEIL: case SC_FOGWALL: case SC_FREEZING: - case SC_BURNING: // Place here until we have info about its behavior on Boss-monsters. [pakpil] + case SC_BURNING: case SC_MARSHOFABYSS: case SC_ADORAMUS: case SC_PARALYSIS: + case SC_DEEPSLEEP: + case SC_CRYSTALIZE: // Exploit prevention - kRO Fix case SC_PYREXIA: -- cgit v1.2.3-60-g2f50