diff options
author | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-22 10:01:13 +0000 |
---|---|---|
committer | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-22 10:01:13 +0000 |
commit | 6a2a8a7d451f394b132383b20e499985d026aaae (patch) | |
tree | b7ba6c56985fee723f214dc68a30c12473204acb /src/map/map.c | |
parent | e18d01b53500c4d4744cfe31cacaed56f414f0da (diff) | |
download | hercules-6a2a8a7d451f394b132383b20e499985d026aaae.tar.gz hercules-6a2a8a7d451f394b132383b20e499985d026aaae.tar.bz2 hercules-6a2a8a7d451f394b132383b20e499985d026aaae.tar.xz hercules-6a2a8a7d451f394b132383b20e499985d026aaae.zip |
* Check if the player has been authentified by the char server before clearing any timers in map_quit
* Added eventtimercount and timerskill_count
* Added sc_count check in skill_stop_dancing
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@723 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/map.c')
-rw-r--r-- | src/map/map.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/map/map.c b/src/map/map.c index f909953c9..509504773 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -986,7 +986,10 @@ int map_quit(struct map_session_data *sd) { else storage_storage_quit(sd); // 倉庫を開いてるなら保存する - skill_castcancel(&sd->bl,0); // 詠唱を中?する + // check if we've been authenticated [celest] + if (sd->state.auth) + skill_castcancel(&sd->bl,0); // 詠唱を中?する + skill_stop_dancing(&sd->bl,1);// ダンス/演奏中? if(sd->sc_data && sd->sc_data[SC_BERSERK].timer!=-1) //バ?サ?ク中の終了はHPを100に @@ -995,13 +998,18 @@ int map_quit(struct map_session_data *sd) { skill_status_change_clear(&sd->bl,1); // ステ?タス異常を解除する skill_clear_unitgroup(&sd->bl); // スキルユニットグル?プの削除 skill_cleartimerskill(&sd->bl); - pc_stop_walking(sd,0); - pc_stopattack(sd); - pc_delinvincibletimer(sd); + + // check if we've been authenticated [celest] + if (sd->state.auth) { + pc_stop_walking(sd,0); + pc_stopattack(sd); + pc_delinvincibletimer(sd); + } pc_delspiritball(sd,sd->spiritball,1); skill_gangsterparadise(sd,0); - pc_calcstatus(sd,4); + if (sd->state.auth) + pc_calcstatus(sd,4); // skill_clear_unitgroup(&sd->bl); // [Sara-chan] clif_clearchar_area(&sd->bl,2); |