From 914d3de7c324cb1ec456892702689718352a7842 Mon Sep 17 00:00:00 2001 From: Yohann Ferreira Date: Fri, 17 Jun 2011 16:46:06 +0200 Subject: First pass on removing tile hard coded values. Every files has been checked against the hard coded 32 values except the map.cpp file. I also added convenience functions in the Game class, centralized the default item icon size, and removed two unused defines in being.cpp. --- src/gui/minimap.cpp | 24 +++++++++++++++++------- src/gui/minimap.h | 1 + src/gui/outfitwindow.cpp | 8 ++++++-- src/gui/viewport.cpp | 3 ++- src/gui/widgets/shoplistbox.cpp | 2 -- 5 files changed, 26 insertions(+), 12 deletions(-) (limited to 'src/gui') diff --git a/src/gui/minimap.cpp b/src/gui/minimap.cpp index 993814ea..7ad034e4 100644 --- a/src/gui/minimap.cpp +++ b/src/gui/minimap.cpp @@ -43,6 +43,7 @@ bool Minimap::mShow = true; Minimap::Minimap(): Window(_("Map")), + mMap(0), mMapImage(0), mWidthProportion(0.5), mHeightProportion(0.5) @@ -96,6 +97,7 @@ void Minimap::setMap(Map *map) if (map) { + mMap = map; std::string tempname = "graphics/minimaps/" + map->getFilename() + ".png"; ResourceManager *resman = ResourceManager::getInstance(); @@ -159,14 +161,17 @@ void Minimap::draw(gcn::Graphics *graphics) int mapOriginX = 0; int mapOriginY = 0; - if (mMapImage) + if (mMapImage && mMap) { if (mMapImage->getWidth() > a.width || mMapImage->getHeight() > a.height) { const Vector &p = player_node->getPosition(); - mapOriginX = (int) (((a.width) / 2) - (int) (p.x * mWidthProportion) / 32); - mapOriginY = (int) (((a.height) / 2) - (int) (p.y * mHeightProportion) / 32); + mapOriginX = (int) (((a.width) / 2) - (int) (p.x * mWidthProportion) + / mMap->getTileWidth()); + mapOriginY = (int) (((a.height) / 2) + - (int) (p.y * mHeightProportion) + / mMap->getTileHeight()); const int minOriginX = a.width - mMapImage->getWidth(); const int minOriginY = a.height - mMapImage->getHeight(); @@ -230,10 +235,15 @@ void Minimap::draw(gcn::Graphics *graphics) const int offsetWidth = (int) ((dotSize - 1) * mWidthProportion); const Vector &pos = being->getPosition(); - graphics->fillRectangle(gcn::Rectangle( - (int) (pos.x * mWidthProportion) / 32 + mapOriginX - offsetWidth, - (int) (pos.y * mHeightProportion) / 32 + mapOriginY - offsetHeight, - dotSize, dotSize)); + if (mMap) + { + graphics->fillRectangle(gcn::Rectangle( + (int) (pos.x * mWidthProportion) / mMap->getTileWidth() + + mapOriginX - offsetWidth, + (int) (pos.y * mHeightProportion) / mMap->getTileHeight() + + mapOriginY - offsetHeight, + dotSize, dotSize)); + } } graphics->popClipArea(); diff --git a/src/gui/minimap.h b/src/gui/minimap.h index a376a15c..0916a1da 100644 --- a/src/gui/minimap.h +++ b/src/gui/minimap.h @@ -58,6 +58,7 @@ class Minimap : public Window void draw(gcn::Graphics *graphics); private: + Map *mMap; Image *mMapImage; float mWidthProportion; float mHeightProportion; diff --git a/src/gui/outfitwindow.cpp b/src/gui/outfitwindow.cpp index efa0e08b..053c6659 100644 --- a/src/gui/outfitwindow.cpp +++ b/src/gui/outfitwindow.cpp @@ -196,9 +196,13 @@ void OutfitWindow::draw(gcn::Graphics *graphics) const int itemY = 25 + (i / mGridWidth) * mBoxHeight; graphics->setColor(gcn::Color(0, 0, 0, 64)); - graphics->drawRectangle(gcn::Rectangle(itemX, itemY, 32, 32)); + graphics->drawRectangle(gcn::Rectangle(itemX, itemY, + ITEM_ICON_SIZE, + ITEM_ICON_SIZE)); graphics->setColor(gcn::Color(255, 255, 255, 32)); - graphics->fillRectangle(gcn::Rectangle(itemX, itemY, 32, 32)); + graphics->fillRectangle(gcn::Rectangle(itemX, itemY, + ITEM_ICON_SIZE, + ITEM_ICON_SIZE)); if (mItems[mCurrentOutfit][i] < 0) { diff --git a/src/gui/viewport.cpp b/src/gui/viewport.cpp index e10a1a60..0353fd44 100644 --- a/src/gui/viewport.cpp +++ b/src/gui/viewport.cpp @@ -402,7 +402,8 @@ void Viewport::_drawPath(Graphics *graphics, const Path &path, graphics->fillRectangle(gcn::Rectangle(squareX - 4, squareY - 4, 8, 8)); graphics->drawText( - toString(mMap->getMetaTile(i->x / 32, i->y / 32)->Gcost), + toString(mMap->getMetaTile(i->x / mMap->getTileWidth(), + i->y / mMap->getTileHeight())->Gcost), squareX + 4, squareY + 12, gcn::Graphics::CENTER); } } diff --git a/src/gui/widgets/shoplistbox.cpp b/src/gui/widgets/shoplistbox.cpp index ae7d4d9b..2d25185a 100644 --- a/src/gui/widgets/shoplistbox.cpp +++ b/src/gui/widgets/shoplistbox.cpp @@ -36,8 +36,6 @@ #include #include -const int ITEM_ICON_SIZE = 32; - float ShopListBox::mAlpha = 1.0; ShopListBox::ShopListBox(gcn::ListModel *listModel): -- cgit v1.2.3-70-g09d2