diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/skill.c | 2 | ||||
-rw-r--r-- | src/map/status.c | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 33113f9ac..66b923a62 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4853,7 +4853,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in case NPC_DARKBLESSING: clif_skill_nodamage(src,bl,skillid,skilllv, - sc_start(bl,type,(50+skilllv*5),skilllv,skill_get_time2(skillid,skilllv))); + sc_start2(bl,type,(50+skilllv*5),skilllv,skilllv,skill_get_time2(skillid,skilllv))); break; case NPC_LICK: diff --git a/src/map/status.c b/src/map/status.c index 04cc07144..a2a0ad8f7 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -4434,6 +4434,10 @@ int status_get_sc_def(struct block_list *bl, int type) else sc_def = 300 +100*status->luk; break; + case SC_COMA: + //TODO: Need actual data on rate reductions. + sc_def = 100*status->luk; + break; case SC_BLIND: //TODO: These 50/50 factors are guessed. Need to find actual value. sc_def = 300 +50*status->vit +50*status->int_; break; @@ -5505,8 +5509,8 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val break; } - case SC_COMA: //Coma. Sends a char to 1HP - status_zap(bl, status_get_hp(bl)-1, 0); + case SC_COMA: //Coma. Sends a char to 1HP. If val2, do not zap sp + status_zap(bl, status->hp-1, val2?0:status->sp); return 1; case SC_CLOSECONFINE2: |