summaryrefslogtreecommitdiff
path: root/src/map/map.c
diff options
context:
space:
mode:
authorcelest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-22 10:01:13 +0000
committercelest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec>2004-12-22 10:01:13 +0000
commit6a2a8a7d451f394b132383b20e499985d026aaae (patch)
treeb7ba6c56985fee723f214dc68a30c12473204acb /src/map/map.c
parente18d01b53500c4d4744cfe31cacaed56f414f0da (diff)
downloadhercules-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.c18
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);