summaryrefslogtreecommitdiff
path: root/src/gui/itemcontainer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/itemcontainer.cpp')
-rw-r--r--src/gui/itemcontainer.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/gui/itemcontainer.cpp b/src/gui/itemcontainer.cpp
index bb10c5a9..5bb3eb35 100644
--- a/src/gui/itemcontainer.cpp
+++ b/src/gui/itemcontainer.cpp
@@ -59,20 +59,25 @@ void ItemContainer::draw(gcn::Graphics* graphics)
w = getWidth();
h = getHeight();
+ int itemWidth = getWidth() / 24;
+
if (items[selectedItem].quantity <= 0) {
selectedItem = -1;
}
if (selectedItem >= 0) {
- int itemX = (((selectedItem - 2) * 24) % (getWidth() - 24));
- int itemY = (((selectedItem - 2) * 24) / (getWidth() - 24)) * 24;
+ int itemX = ((selectedItem - 2) % itemWidth) * 24;
+ int itemY = ((selectedItem - 2) / itemWidth) * 24;
+
itemX -= itemX % 24;
selImg->draw(screen, x + itemX, y+itemY);
}
for (int i = 0; i < INVENTORY_SIZE; i++) {
- int itemX = (((i - 2) * 24) % (getWidth() - 24));
- int itemY = (((i - 2) * 24) / (getWidth() - 24)) * 24;
+ int itemX = ((i - 2) % itemWidth) * 24;
+ int itemY = ((i - 2) / itemWidth) * 24;
+
+
itemX -= itemX % 24;
if (items[i].quantity > 0) {
if (itemDb.getItemInfo(items[i].id)->getImage() > 0) {