From a6430189f59663734538a66c54159ee52d0dd9b6 Mon Sep 17 00:00:00 2001 From: auria Date: Fri, 26 Feb 2010 19:30:53 +0000 Subject: [PATCH] Draw plunger-in-face first and not last, so messages are not hidden under the plunger git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4862 178a84e3-b1eb-0310-8ba1-8eac791a3b58 --- src/states_screens/race_gui.cpp | 39 ++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/src/states_screens/race_gui.cpp b/src/states_screens/race_gui.cpp index 64782279e..94817675b 100644 --- a/src/states_screens/race_gui.cpp +++ b/src/states_screens/race_gui.cpp @@ -224,6 +224,27 @@ void RaceGUI::renderPlayerView(const Kart *kart) { const core::recti &viewport = kart->getCamera()->getViewport(); const core::vector2df &scaling = kart->getCamera()->getScaling(); + + if (kart->hasViewBlockedByPlunger()) + { + int offset_y = viewport.UpperLeftCorner.Y; + + const int screen_width = viewport.LowerRightCorner.X - viewport.UpperLeftCorner.X; + const int plunger_size = viewport.LowerRightCorner.Y - viewport.UpperLeftCorner.Y; + int plunger_x = viewport.UpperLeftCorner.X + screen_width/2 - plunger_size/2; + + video::ITexture *t=m_plunger_face->getTexture(); + core::rect dest(plunger_x, offset_y, + plunger_x+plunger_size, offset_y+plunger_size); + const core::rect source(core::position2d(0,0), t->getOriginalSize()); + + //static const video::SColor white = video::SColor(255, 255, 255, 255); + + irr_driver->getVideoDriver()->draw2DImage(t, dest, source, NULL /* clip */, + NULL /* color */, true /* alpha */); + } + + drawAllMessages (kart, viewport, scaling); if(!World::getWorld()->isRacePhase()) return; @@ -234,24 +255,6 @@ void RaceGUI::renderPlayerView(const Kart *kart) drawSpeed (kart, viewport, scaling); drawLap (info, kart, viewport, scaling); - if (kart->hasViewBlockedByPlunger()) - { - int offset_y = viewport.UpperLeftCorner.Y; - - const int screen_width = viewport.LowerRightCorner.X - viewport.UpperLeftCorner.X; - const int plunger_size = viewport.LowerRightCorner.Y - viewport.UpperLeftCorner.Y; - int plunger_x = viewport.UpperLeftCorner.X + screen_width/2 - plunger_size/2; - - video::ITexture *t=m_plunger_face->getTexture(); - core::rect dest(plunger_x, offset_y, - plunger_x+plunger_size, offset_y+plunger_size); - const core::rect source(core::position2d(0,0), t->getOriginalSize()); - - //static const video::SColor white = video::SColor(255, 255, 255, 255); - - irr_driver->getVideoDriver()->draw2DImage(t, dest, source, NULL /* clip */, - NULL /* color */, true /* alpha */); - } } // renderPlayerView //-----------------------------------------------------------------------------