From 51b75feaefd132ee0b7992a10dbe79bfa92e6d91 Mon Sep 17 00:00:00 2001 From: Björn Steinbrink Date: Thu, 28 Jul 2005 12:32:12 +0000 Subject: Cleaned up the showPopup() code, moved "map"-related code into game.cpp, made the popup show up at mouse coordinates instead of being aligned to tiles. --- src/game.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 98be0bc6..f5bd366c 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -632,7 +632,19 @@ void do_input() // Mouse button right else if (event.button.button == SDL_BUTTON_RIGHT) { - popupMenu->showPopup(mx, my); + Being *being; + FloorItem *floorItem; + + if ((being = findNode(mx, my))) { + popupMenu->showPopup(event.button.x, event.button.y, + being); + } else if ((floorItem = find_floor_item_by_id( + find_floor_item_by_cor(mx, my)))) { + popupMenu->showPopup(event.button.x, event.button.y, + floorItem); + } else { + popupMenu->setVisible(false); + } } } -- cgit v1.2.3-70-g09d2