From befd082d67e8b36402accdfdb2d47a8c287165ac Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 9 Nov 2015 18:14:04 +0300 Subject: Impliment packet SMSG_BEING_SLIDE. --- src/net/eathena/beingrecv.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'src/net/eathena/beingrecv.cpp') diff --git a/src/net/eathena/beingrecv.cpp b/src/net/eathena/beingrecv.cpp index a17a58e75..5a3ba81f6 100644 --- a/src/net/eathena/beingrecv.cpp +++ b/src/net/eathena/beingrecv.cpp @@ -1460,11 +1460,21 @@ void BeingRecv::processWddingEffect(Net::MessageIn &msg) void BeingRecv::processBeingSlide(Net::MessageIn &msg) { - UNIMPLIMENTEDPACKET; + Being *const dstBeing = actorManager->findBeing( + msg.readBeingId("being id")); + const int x = msg.readInt16("x"); + const int y = msg.readInt16("y"); + if (!dstBeing) + return; + if (localPlayer == dstBeing) + { + localPlayer->stopAttack(); + localPlayer->navigateClean(); + } - msg.readBeingId("being id"); - msg.readInt16("x"); - msg.readInt16("y"); + dstBeing->setAction(BeingAction::STAND, 0); + dstBeing->setTileCoords(x, y); + dstBeing->updatePets(); } void BeingRecv::processStarsKill(Net::MessageIn &msg) -- cgit v1.2.3-60-g2f50