- Fixed TK_RUN having a cast-bar when attempting to stop-running and generating timer_delete errors when halting as well.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6135 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2006-04-17 15:51:38 +00:00
parent cedacb87be
commit 7beb5f23c3
3 changed files with 12 additions and 5 deletions

View File

@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/04/17 2006/04/17
* Fixed TK_RUN having a cast-bar when attempting to stop-running and
generating timer_delete errors when halting as well. [Skotlex]
* Clearing the dummy npc after fooling the client. [Lance] * Clearing the dummy npc after fooling the client. [Lance]
* Updated DLLS. Please DO NOT update the libs from now on * Updated DLLS. Please DO NOT update the libs from now on
(except if mySQL has newer builds which are not compatible (except if mySQL has newer builds which are not compatible

View File

@ -5747,6 +5747,7 @@ int skill_castend_id( int tid, unsigned int tick, int id,int data )
if(sd && !skill_check_condition(sd,ud->skillid, ud->skilllv,1)) /* 使用条件チェック */ if(sd && !skill_check_condition(sd,ud->skillid, ud->skilllv,1)) /* 使用条件チェック */
break; break;
if (ud->walktimer != -1 && ud->skillid != TK_RUN)
unit_stop_walking(src,0); unit_stop_walking(src,0);
if (ud->skillid == SA_MAGICROD) if (ud->skillid == SA_MAGICROD)

View File

@ -503,10 +503,6 @@ int unit_stop_walking(struct block_list *bl,int type)
if(!ud || ud->walktimer == -1) if(!ud || ud->walktimer == -1)
return 0; return 0;
sc = status_get_sc(bl);
if (sc && sc->count && sc->data[SC_RUN].timer != -1)
status_change_end(bl, SC_RUN, -1);
// if(md) { md->state.skillstate = MSS_IDLE; } // if(md) { md->state.skillstate = MSS_IDLE; }
if(type&0x01) // 位置補正送信が必要 if(type&0x01) // 位置補正送信が必要
clif_fixpos(bl); clif_fixpos(bl);
@ -531,6 +527,10 @@ int unit_stop_walking(struct block_list *bl,int type)
if(type&~0xff) if(type&~0xff)
ud->canmove_tick = gettick() + (type>>8); ud->canmove_tick = gettick() + (type>>8);
} }
sc = status_get_sc(bl);
if (sc && sc->count && sc->data[SC_RUN].timer != -1)
status_change_end(bl, SC_RUN, -1);
return 1; return 1;
} }
@ -816,6 +816,10 @@ int unit_skilluse_id2(struct block_list *src, int target_id, int skill_num, int
casttime = 0; casttime = 0;
temp = 1; temp = 1;
break; break;
case TK_RUN:
if (sc && sc->data[SC_RUN].timer != -1)
casttime = 0;
break;
case SA_MAGICROD: case SA_MAGICROD:
case SA_SPELLBREAKER: case SA_SPELLBREAKER:
temp =1; temp =1;