diff options
author | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-03-23 10:55:01 +0000 |
---|---|---|
committer | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-03-23 10:55:01 +0000 |
commit | 3a783a8bdd6f2c3e59ce900ef36af7e8e79a2f5b (patch) | |
tree | c615fe4ba739c2879d590dfc6698e867fcb22360 | |
parent | d5c10b3c0b55a63c7bd89e43dc7a79c977bd259e (diff) | |
download | hercules-3a783a8bdd6f2c3e59ce900ef36af7e8e79a2f5b.tar.gz hercules-3a783a8bdd6f2c3e59ce900ef36af7e8e79a2f5b.tar.bz2 hercules-3a783a8bdd6f2c3e59ce900ef36af7e8e79a2f5b.tar.xz hercules-3a783a8bdd6f2c3e59ce900ef36af7e8e79a2f5b.zip |
Fixed bugreport:1551 causing coma on monsters now grants you your-fully-deserved exp.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15783 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/status.c | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index e47ee2b6d..b3830f9b7 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1076,7 +1076,7 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int break; case GS_BULLSEYE: //0.1% coma rate. if(tstatus->race == RC_BRUTE || tstatus->race == RC_DEMIHUMAN) - status_change_start(bl,SC_COMA,10,skilllv,0,0,0,0,0); + status_change_start(bl,SC_COMA,10,skilllv,0,src->id,0,0,0); break; case GS_PIERCINGSHOT: sc_start(bl,SC_BLEEDING,(skilllv*3),skilllv,skill_get_time2(skillid,skilllv)); @@ -1310,7 +1310,7 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int rate += sd->weapon_coma_race[tstatus->race]; rate += sd->weapon_coma_race[tstatus->mode&MD_BOSS?RC_BOSS:RC_NONBOSS]; if (rate) - status_change_start(bl, SC_COMA, rate, 0, 0, 0, 0, 0, 0); + status_change_start(bl, SC_COMA, rate, 0, 0, src->id, 0, 0, 0); } if( sd && battle_config.equip_self_break_rate ) { // Self weapon breaking diff --git a/src/map/status.c b/src/map/status.c index 37d4fe4f1..aa3ab0a29 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6885,6 +6885,11 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val } case SC_COMA: //Coma. Sends a char to 1HP. If val2, do not zap sp + if( val3 && bl->type == BL_MOB ) { + struct block_list* src = map_id2bl(val3); + if( src ) + mob_log_damage((TBL_MOB*)bl,src,status->hp - 1); + } status_zap(bl, status->hp-1, val2?0:status->sp); return 1; break; |