diff options
author | Yohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer> | 2011-03-29 01:50:58 +0200 |
---|---|---|
committer | Yohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer> | 2011-03-29 01:50:58 +0200 |
commit | f90aa61947641f3db809e047f80fc7b8c865cb94 (patch) | |
tree | 0651f81765437772d0f20ee44acb75b76bd64c15 /src/net/tmwa | |
parent | 15c69030f987bd7d67fdbaf2158b2c3ae430143f (diff) | |
download | mana-f90aa61947641f3db809e047f80fc7b8c865cb94.tar.gz mana-f90aa61947641f3db809e047f80fc7b8c865cb94.tar.bz2 mana-f90aa61947641f3db809e047f80fc7b8c865cb94.tar.xz mana-f90aa61947641f3db809e047f80fc7b8c865cb94.zip |
Made the flooritems position set back in pixels.
The position is centered to the nearest tile center in tA.
Diffstat (limited to 'src/net/tmwa')
-rw-r--r-- | src/net/tmwa/itemhandler.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/net/tmwa/itemhandler.cpp b/src/net/tmwa/itemhandler.cpp index a8e98860..e452ccf2 100644 --- a/src/net/tmwa/itemhandler.cpp +++ b/src/net/tmwa/itemhandler.cpp @@ -21,12 +21,14 @@ #include "net/tmwa/itemhandler.h" -#include "actorspritemanager.h" - #include "net/messagein.h" #include "net/tmwa/protocol.h" +#include "actorspritemanager.h" +#include "game.h" +#include "map.h" + namespace TmwAthena { ItemHandler::ItemHandler() @@ -54,7 +56,13 @@ void ItemHandler::handleMessage(Net::MessageIn &msg) int y = msg.readInt16(); msg.skip(4); // amount,subX,subY / subX,subY,amount - actorSpriteManager->createItem(id, itemId, x, y); + Game *game = Game::instance(); + if (!game) + break; + + if (Map *map = game->getCurrentMap()) + actorSpriteManager->createItem(id, itemId, + map->getTileCenter(x, y)); } break; |