diff options
author | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2013-01-13 12:48:44 +0000 |
---|---|---|
committer | rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2013-01-13 12:48:44 +0000 |
commit | f6593616b3f8edfe0402051decc9071d3e9dadfa (patch) | |
tree | fef4fce51aeaebedb83b2168d5efd67fb5b6e5aa /src/map/status.c | |
parent | 112b7b6871749c06f7f53dceeeaf4ccadbfa87d5 (diff) | |
download | hercules-f6593616b3f8edfe0402051decc9071d3e9dadfa.tar.gz hercules-f6593616b3f8edfe0402051decc9071d3e9dadfa.tar.bz2 hercules-f6593616b3f8edfe0402051decc9071d3e9dadfa.tar.xz hercules-f6593616b3f8edfe0402051decc9071d3e9dadfa.zip |
Fixed bugreport:7170 where AL_INCAGI where it double DEF.
Fixed bugreport:6961 WL_COMET AOE range is now 15x15.
Fixed bugreport:5811 where SC_BLEEDING is not attach to caster to give exp.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17097 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/map/status.c b/src/map/status.c index d4d230d36..22094af4a 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -3700,7 +3700,7 @@ void status_calc_bl_main(struct block_list *bl, /*enum scb_flag*/int flag) else status->def2 = status_calc_def2(bl, sc, b_status->def2 #ifdef RENEWAL - + (int)( ((float)status->vit/2 + (float)b_status->vit/2) + ((float)status->agi/5 + (float)b_status->agi/5) ) + + (int)( ((float)status->vit/2 - (float)b_status->vit/2) + ((float)status->agi/5 - (float)b_status->agi/5) ) #else + (status->vit - b_status->vit) #endif @@ -3725,7 +3725,7 @@ void status_calc_bl_main(struct block_list *bl, /*enum scb_flag*/int flag) else status->mdef2 = status_calc_mdef2(bl, sc, b_status->mdef2 +(status->int_ - b_status->int_) #ifdef RENEWAL - + (int)( ((float)status->dex/5 - (float)b_status->dex/5) + ((float)status->vit/5 + (float)b_status->vit/5) ) + + (int)( ((float)status->dex/5 - (float)b_status->dex/5) + ((float)status->vit/5 - (float)b_status->vit/5) ) #else + ((status->vit - b_status->vit)>>1) #endif @@ -7583,7 +7583,7 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val case SC_JOINTBEAT: if( val2&BREAK_NECK ) - sc_start(bl,SC_BLEEDING,100,val1,skill_get_time2(status_sc2skill(type),val1)); + sc_start2(bl,SC_BLEEDING,100,val1,val3,skill_get_time2(status_sc2skill(type),val1)); break; case SC_BERSERK: @@ -9944,8 +9944,9 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data) case SC_BLEEDING: if (--(sce->val4) >= 0) { int hp = rnd()%600 + 200; + struct block_list* src = map_id2bl(sce->val2); map_freeblock_lock(); - status_fix_damage(NULL, bl, sd||hp<status->hp?hp:status->hp-1, 1); + status_fix_damage(src, bl, sd||hp<status->hp?hp:status->hp-1, 1); if( sc->data[type] ) { if( status->hp == 1 ) { map_freeblock_unlock(); |