From 1713f33dbd71b6378c8a4e58452fb16147f320d7 Mon Sep 17 00:00:00 2001
From: Majin Sniper <majinsniper@gmx.de>
Date: Fri, 20 Feb 2009 00:19:52 +0100
Subject: Added a pickup notification as particle effect. Also make a ui option
 to enable/disable this effect (default is off) and another option to disable
 the pickup notification in the chat log (default is on).

---
 src/textparticle.cpp | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

(limited to 'src/textparticle.cpp')

diff --git a/src/textparticle.cpp b/src/textparticle.cpp
index f38c32ce..3494b97f 100644
--- a/src/textparticle.cpp
+++ b/src/textparticle.cpp
@@ -23,16 +23,18 @@
 
 #include "graphics.h"
 #include "textparticle.h"
+#include <SDL/SDL_ttf.h>
 
 TextParticle::TextParticle(Map *map, const std::string &text,
                            int colorR, int colorG, int colorB,
-                           gcn::Font *font):
+                           gcn::Font *font, bool outline):
     Particle(map),
     mText(text),
     mTextFont(font),
     mColorR(colorR),
     mColorG(colorG),
-    mColorB(colorB)
+    mColorB(colorB),
+    mOutline(outline)
 {
 }
 
@@ -59,6 +61,23 @@ void TextParticle::draw(Graphics *graphics, int offsetX, int offsetY) const
     }
 
     graphics->setFont(mTextFont);
+    if (mOutline)
+    {
+        graphics->setColor(gcn::Color(0, 0, 0, (int)(alpha/4)));
+        // Text outline
+        graphics->setColor(gcn::Color(0, 0, 0, (int)alpha));
+        graphics->drawText(mText, screenX + 1, screenY,
+                gcn::Graphics::CENTER);
+
+        graphics->drawText(mText, screenX - 1, screenY,
+                gcn::Graphics::CENTER);
+
+        graphics->drawText(mText, screenX, screenY + 1,
+                gcn::Graphics::CENTER);
+
+        graphics->drawText(mText, screenX, screenY - 1,
+                gcn::Graphics::CENTER);
+    }
     graphics->setColor(gcn::Color(mColorR, mColorG, mColorB, (int)alpha));
     graphics->drawText(mText, screenX, screenY, gcn::Graphics::CENTER);
 }
-- 
cgit v1.2.3-70-g09d2