diff options
author | gumi <git@gumi.ca> | 2019-04-15 22:10:27 -0400 |
---|---|---|
committer | gumi <git@gumi.ca> | 2019-04-15 22:10:27 -0400 |
commit | 12fb620bcb8e77df43938b5c9b183f2bc3aa7e3b (patch) | |
tree | e210bfd8359b542ed515ee8bf74ad53021f8b3af /src/map | |
parent | b7e61454ed287ed27027fa0eb88502f8dabc234a (diff) | |
download | tmwa-12fb620bcb8e77df43938b5c9b183f2bc3aa7e3b.tar.gz tmwa-12fb620bcb8e77df43938b5c9b183f2bc3aa7e3b.tar.bz2 tmwa-12fb620bcb8e77df43938b5c9b183f2bc3aa7e3b.tar.xz tmwa-12fb620bcb8e77df43938b5c9b183f2bc3aa7e3b.zip |
warp the player on autoblock (since manaplus doesn't allow us to block nicely)
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/pc.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/map/pc.cpp b/src/map/pc.cpp index 8cd19d9..7cfbff9 100644 --- a/src/map/pc.cpp +++ b/src/map/pc.cpp @@ -2424,13 +2424,15 @@ void pc_walk(TimerData *, tick_t tick, BlockId id, unsigned char data) { dumb_ptr<map_session_data> d_sd = d_bl->is_player(); - if (pc_issit(d_sd)) + if (pc_issit(d_sd) && d_sd != sd) { switch (d_sd->automod) { case AutoMod::autoblock: clif_update_collision(sd, x + dx, y + dy, x + dx, y + dy, sd->bl_m->name_, 5); // BlockType::PLAYERWALL pc_stop_walking(sd, 1); + // clif_changemap(sd, sd->mapname_, x, y); <= FIXME: crashes manaplus! + pc_setpos(sd, sd->mapname_, x, y, BeingRemoveWhy::WARPED); return; } } |