summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhemagx <hemagx2@gmail.com>2015-12-14 01:43:10 +0200
committerhemagx <hemagx2@gmail.com>2015-12-14 01:43:10 +0200
commitf975f0a55ca930fd0f95a6209bea479ac9bc3a5d (patch)
treef4cf275e47eb6dc18ca67fdf6f104ff1fc3e27dd
parentfcca4939f35b5018d3569450f8a97e475c3e324e (diff)
downloadhercules-f975f0a55ca930fd0f95a6209bea479ac9bc3a5d.tar.gz
hercules-f975f0a55ca930fd0f95a6209bea479ac9bc3a5d.tar.bz2
hercules-f975f0a55ca930fd0f95a6209bea479ac9bc3a5d.tar.xz
hercules-f975f0a55ca930fd0f95a6209bea479ac9bc3a5d.zip
Players now will auto warped to random spot in the map upon login in-case they're stuck in dead cell.
Closes #802
-rw-r--r--src/map/pc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index 0313428ab..a0af3a04b 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -1167,6 +1167,9 @@ bool pc_authok(struct map_session_data *sd, int login_id2, time_t expiration_tim
clif->authfail_fd(sd->fd, 0);
return false;
}
+ } else if (map->getcell(sd->status.last_point.map, &sd->bl, sd->status.last_point.x, sd->status.last_point.y, CELL_CHKNOPASS)) {
+ //warp player stuck in invaild cell
+ pc->setpos(sd,sd->status.last_point.map,0,0,CLR_OUTSIGHT);
}
clif->authok(sd);