diff options
author | Bertram <bertram@cegetel.net> | 2010-02-09 01:42:50 +0100 |
---|---|---|
committer | Bertram <bertram@cegetel.net> | 2010-02-09 01:42:50 +0100 |
commit | 56f501c8148b1061a02547d37b20eeeeb64029db (patch) | |
tree | 718e48289066706bc3851830f3c6b03150e66b97 /src/net/ea | |
parent | 8b4d9f9b5eaf175baf0c4209c312133bb457742c (diff) | |
download | mana-56f501c8148b1061a02547d37b20eeeeb64029db.tar.gz mana-56f501c8148b1061a02547d37b20eeeeb64029db.tar.bz2 mana-56f501c8148b1061a02547d37b20eeeeb64029db.tar.xz mana-56f501c8148b1061a02547d37b20eeeeb64029db.zip |
Made the Beings' logic be able to handle any tile height/width.
This is the First step to get rid of most hardcoded 32 values.
Diffstat (limited to 'src/net/ea')
-rw-r--r-- | src/net/ea/beinghandler.cpp | 4 | ||||
-rw-r--r-- | src/net/ea/playerhandler.cpp | 10 | ||||
-rw-r--r-- | src/net/ea/playerhandler.h | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/src/net/ea/beinghandler.cpp b/src/net/ea/beinghandler.cpp index 86bfe929..b63e9e8a 100644 --- a/src/net/ea/beinghandler.cpp +++ b/src/net/ea/beinghandler.cpp @@ -161,7 +161,7 @@ void BeingHandler::handleMessage(Net::MessageIn &msg) // Prevent division by 0 when calculating frame if (speed == 0) { speed = 150; } - dstBeing->setWalkSpeed(speed); + dstBeing->setWalkSpeed(Vector(speed, speed, 0)); dstBeing->setJob(job); hairStyle = msg.readInt16(); weapon = msg.readInt16(); @@ -521,7 +521,7 @@ void BeingHandler::handleMessage(Net::MessageIn &msg) } } - dstBeing->setWalkSpeed(speed); + dstBeing->setWalkSpeed(Vector(speed, speed, 0)); dstBeing->setJob(job); hairStyle = msg.readInt16(); weapon = msg.readInt16(); diff --git a/src/net/ea/playerhandler.cpp b/src/net/ea/playerhandler.cpp index 1d7a2fb6..f6f54d59 100644 --- a/src/net/ea/playerhandler.cpp +++ b/src/net/ea/playerhandler.cpp @@ -229,7 +229,9 @@ void PlayerHandler::handleMessage(Net::MessageIn &msg) switch (type) { - case 0x0000: player_node->setWalkSpeed(value); break; + case 0x0000: + player_node->setWalkSpeed(Vector(value, value, 0)); + break; case 0x0004: break; // manner case 0x0005: player_node->setHp(value); break; case 0x0006: player_node->setMaxHp(value); break; @@ -639,9 +641,11 @@ int PlayerHandler::getJobLocation() return JOB; } -float PlayerHandler::getDefaultWalkSpeed() +Vector PlayerHandler::getDefaultWalkSpeed() { - return 150; + // Return an normalized speed for any side + // as the offset is calculated elsewhere. + return Vector(150, 150, 0); } } // namespace EAthena diff --git a/src/net/ea/playerhandler.h b/src/net/ea/playerhandler.h index b60daef3..9e7e9ac3 100644 --- a/src/net/ea/playerhandler.h +++ b/src/net/ea/playerhandler.h @@ -66,7 +66,7 @@ class PlayerHandler : public MessageHandler, public Net::PlayerHandler int getJobLocation(); - float getDefaultWalkSpeed(); + Vector getDefaultWalkSpeed(); }; } // namespace EAthena |