diff options
Diffstat (limited to 'src/game-server/player.cpp')
-rw-r--r-- | src/game-server/player.cpp | 38 |
1 files changed, 9 insertions, 29 deletions
diff --git a/src/game-server/player.cpp b/src/game-server/player.cpp index 1f6fc935..8d5cbae0 100644 --- a/src/game-server/player.cpp +++ b/src/game-server/player.cpp @@ -39,8 +39,15 @@ void Player::update() setStat(STAT_SPEED, getRawStat(STAT_DEXTERITY)); // Update persistent data. - setPos(getPosition()); - setMap(getMapId()); + int mapId = getMapId(); + if (getMap() != mapId) + { + /* Only update on map change. This is on purpose. It prevents players + from respawning/reconnecting at the location they died. They will + reappear where they entered the map. */ + setMap(mapId); + setPos(getPosition()); + } // attacking if (mIsAttacking) @@ -55,30 +62,3 @@ void Player::update() } } } - -/* -bool Player::insertItem(int itemId, int amount) -{ - return inventory.insertItem(itemId, amount); -} - -bool Player::removeItem(int itemId, int amount) -{ - return inventory.removeItemById(itemId, amount); -} - -bool Player::hasItem(int itemId) -{ - return inventory.hasItem(itemId); -} - -bool Player::equip(int slot) -{ - return false; // TODO -} - -bool Player::unequip(int slot) -{ - return false; // TODO -} -*/ |