From 6d695639b4e40a5739f5d8fa45b48a54a8523431 Mon Sep 17 00:00:00 2001 From: celest Date: Thu, 2 Dec 2004 17:06:40 +0000 Subject: - Modified Weapon Refine - should only +1 every time. - Updated Berserk, Chase Walk, Slim Pitcher - Added skill_range_leniency * Added check for clif.c in case the server didn't realise we've died git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@433 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/skill.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src/map/skill.c') diff --git a/src/map/skill.c b/src/map/skill.c index 4830ba6c7..5be308425 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1,4 +1,4 @@ -// $Id: skill.c,v 1.8 2004/12/1 11:59:43 PM Celestia Exp $ +// $Id: skill.c,v 1.8 2004/12/2 12:58:19 AM Celestia Exp $ /* スキル?係 */ #include @@ -4522,7 +4522,7 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int case CR_SLIMPITCHER: { if (sd && flag&1) { - int hp = sd->potion_hp * (100 + pc_checkskill(sd,CR_SLIMPITCHER)*5 + pc_checkskill(sd,AM_POTIONPITCHER)*10 + pc_checkskill(sd,AM_LEARNINGPOTION)*5)/100; + int hp = sd->potion_hp * (100 + pc_checkskill(sd,CR_SLIMPITCHER)*10 + pc_checkskill(sd,AM_POTIONPITCHER)*10 + pc_checkskill(sd,AM_LEARNINGPOTION)*5)/100; hp = hp * (100 + (battle_get_vit(bl)<<1))/100; if (dstsd) hp = hp * (100 + pc_checkskill(dstsd,SM_RECOVERY)*10)/100; @@ -7816,7 +7816,7 @@ int skill_castcancel(struct block_list *bl,int type) } sd->skilltimer=-1; clif_skillcastcancel(bl); - } + } return 0; }else if(bl->type==BL_MOB){ @@ -8775,11 +8775,17 @@ int skill_status_change_timer(int tid, unsigned int tick, int id, int data) case SC_CHASEWALK: if(sd){ - if( sd->status.sp > 19+sc_data[SC_CHASEWALK].val1*3){ - sd->status.sp-=(19+(sc_data[SC_CHASEWALK].val1*3)); // update sp cost [Celest] + int sp = 10+sc_data[SC_CHASEWALK].val1*2; + if (map[sd->bl.m].flag.gvg) sp *= 5; + if( sd->status.sp > sp){ + sd->status.sp -= sp; // update sp cost [Celest] clif_updatestatus(sd,SP_SP); sc_data[type].timer=add_timer( /* タイマ?再設定 */ - sc_data[type].val2+tick, skill_status_change_timer, bl->id, data); + sc_data[type].val2+tick, skill_status_change_timer, bl->id, data); + sc_data[SC_CHASEWALK].val4++; + if (sc_data[SC_CHASEWALK].val4 > 3) + sc_data[SC_CHASEWALK].val4 = 0; + pc_calcstatus (sd, 0); return 0; } } -- cgit v1.2.3-70-g09d2