aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorRobert Špalek2009-11-08 21:44:30 +0000
committerRobert Špalek2009-11-08 21:44:30 +0000
commite9c6fd5e39d95cfb3c8a17a7cac3748f651ed930 (patch)
tree635e769fbac7815413c3e05b8b398cb02738ea5f /engines
parent99037380ee72166e360675cb18ac0671f59a6cfb (diff)
downloadscummvm-rg350-e9c6fd5e39d95cfb3c8a17a7cac3748f651ed930.tar.gz
scummvm-rg350-e9c6fd5e39d95cfb3c8a17a7cac3748f651ed930.tar.bz2
scummvm-rg350-e9c6fd5e39d95cfb3c8a17a7cac3748f651ed930.zip
Fixed aligning items in the inventory
svn-id: r45764
Diffstat (limited to 'engines')
-rw-r--r--engines/draci/game.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/engines/draci/game.cpp b/engines/draci/game.cpp
index efa7d8bf86..f9eb55fb0e 100644
--- a/engines/draci/game.cpp
+++ b/engines/draci/game.cpp
@@ -690,13 +690,15 @@ void Game::putItem(int itemID, int position) {
return;
if (position >= 0 &&
- position < kInventoryLines * kInventoryColumns &&
+ position < kInventorySlots &&
(_inventory[position] == kNoItem || _inventory[position] == itemID)) {
_inventory[position] = itemID;
} else {
- for (position = 0; position < kInventorySlots; ++position) {
- if (_inventory[position] == kNoItem) {
- _inventory[position] = itemID;
+ for (int i = 0; i < kInventorySlots; ++i) {
+ int pos = (position + i) % kInventorySlots;
+ if (_inventory[pos] == kNoItem) {
+ _inventory[pos] = itemID;
+ position = pos;
break;
}
}