Index: code/trunk/data/levels/Fight in our Back.oxw
===================================================================
--- code/trunk/data/levels/Fight in our Back.oxw	(revision 7462)
+++ code/trunk/data/levels/Fight in our Back.oxw	(revision 7463)
@@ -69,5 +69,5 @@
     >
 
-        <Script code="showGUI NotificationLayer false true" />
+        <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
         <!--Light: noch zu aendern -->
Index: code/trunk/data/levels/Quest_PirateAttack.oxw
===================================================================
--- code/trunk/data/levels/Quest_PirateAttack.oxw	(revision 7462)
+++ code/trunk/data/levels/Quest_PirateAttack.oxw	(revision 7463)
@@ -35,5 +35,5 @@
     >
 
-        <Script code="showGUI NotificationLayer false true" />
+        <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
         <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
Index: code/trunk/data/levels/notifications.oxw
===================================================================
--- code/trunk/data/levels/notifications.oxw	(revision 7462)
+++ code/trunk/data/levels/notifications.oxw	(revision 7463)
@@ -19,5 +19,5 @@
     >
 
-    <Script code="showGUI NotificationLayer false true" />
+    <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
     <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
Index: code/trunk/data/levels/old/princessaeryn.oxw
===================================================================
--- code/trunk/data/levels/old/princessaeryn.oxw	(revision 7462)
+++ code/trunk/data/levels/old/princessaeryn.oxw	(revision 7463)
@@ -18,5 +18,5 @@
     >
 
-        <Script code="showGUI NotificationLayer false true" />
+        <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
       <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
Index: code/trunk/data/levels/old/questsystem.oxw
===================================================================
--- code/trunk/data/levels/old/questsystem.oxw	(revision 7462)
+++ code/trunk/data/levels/old/questsystem.oxw	(revision 7463)
@@ -14,5 +14,5 @@
     >
 
-        <Script code="showGUI NotificationLayer false true" />
+        <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
         <GlobalQuest id="b80c2c60-e62c-4637-80f8-5aa18dc93b34">
Index: code/trunk/data/levels/princessaeryn.oxw
===================================================================
--- code/trunk/data/levels/princessaeryn.oxw	(revision 7462)
+++ code/trunk/data/levels/princessaeryn.oxw	(revision 7463)
@@ -24,5 +24,5 @@
   >
 
-    <Script code="showGUI NotificationLayer false true" />
+    <Script code="showGUI NotificationLayer false true" needsGraphics="true" />
 
     <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0" />
Index: code/trunk/src/modules/notifications/Notification.cc
===================================================================
--- code/trunk/src/modules/notifications/Notification.cc	(revision 7462)
+++ code/trunk/src/modules/notifications/Notification.cc	(revision 7463)
@@ -114,4 +114,5 @@
     bool Notification::send(unsigned int clientId, const std::string & sender = NotificationManager::NONE)
     {
+        COUT(0) << "MUP: " << Host::getPlayerID() << "|" << clientId << std::endl;
         if(GameMode::isStandalone() || Host::getPlayerID() == clientId)
         {
Index: code/trunk/src/modules/objects/Script.cc
===================================================================
--- code/trunk/src/modules/objects/Script.cc	(revision 7462)
+++ code/trunk/src/modules/objects/Script.cc	(revision 7463)
@@ -32,4 +32,5 @@
 #include "core/CoreIncludes.h"
 #include "core/EventIncludes.h"
+#include "core/GameMode.h"
 #include "core/LuaState.h"
 #include "core/XMLPort.h"
@@ -57,4 +58,8 @@
         this->luaState_ = NULL;
         this->remainingExecutions_ = Script::INF;
+        this->mode_ = ScriptMode::normal;
+        this->onLoad_ = true;
+        this->times_ = Script::INF;
+        this->needsGraphics_ = false;
 
     }
@@ -86,4 +91,5 @@
         XMLPortParam(Script, "onLoad", setOnLoad, isOnLoad, xmlelement, mode).defaultValues(true);
         XMLPortParam(Script, "times", setTimes, getTimes, xmlelement, mode).defaultValues(Script::INF);
+        XMLPortParam(Script, "needsGraphics", setNeedsGraphics, getNeedsGraphics, xmlelement, mode).defaultValues(false);
 
         XMLPortEventSink(Script, BaseObject, "trigger", trigger, xmlelement, mode);
@@ -127,4 +133,8 @@
     {
         if(this->times_ != Script::INF && this->remainingExecutions_ == 0)
+            return;
+
+        // If the code needs graphics to be executed but the GameMode doesn't show graphics the code isn't executed.
+        if(this->needsGraphics_ && !GameMode::showsGraphics())
             return;
 
Index: code/trunk/src/modules/objects/Script.h
===================================================================
--- code/trunk/src/modules/objects/Script.h	(revision 7462)
+++ code/trunk/src/modules/objects/Script.h	(revision 7463)
@@ -55,13 +55,14 @@
         'mode': The mode, specifying whether the set code should be executed the normal way ('normal') or in lua ('lua'). Default is 'normal'.
         'onLoad': Whether the code is executed upon loading (creation) of this object. Default is true.
+        'needsGraphics': Whether the code needs graphics to be executed or not. Default is false.
 
         Here are two examples illustrating the usage:
         @code
-        <Script code="showGUI QuestGUI" />
+        <Script code="showGUI QuestGUI" needsGraphics=true />
         @endcode
-        This would show the QuestGUI opon creation of the object. The mode is 'normal', not specified here since that is the default, also onLoad is true, also not specified, since it is the default as well.
+        This would show the QuestGUI opon creation of the object. The mode is 'normal', not specified here since that is the default, also onLoad is true, also not specified, since it is the default as well. Also needsGraphics is set to true because showGUI needs graphics to work.
 
         @code
-        <Script code="hideGUI QuestGUI" mode="normal" onLoad="false">
+        <Script code="hideGUI QuestGUI" mode="normal" onLoad="false" needsGraphics=true >
             <events>
                 <trigger>
@@ -71,5 +72,5 @@
         </Script>
         @endcode
-        This would hide the QuestGUI as soon as a Pawn got in range of the DistanceTrigger. The mode is 'normal', it is specified here, but could be ommitted as well, since it is the default. OnLoad is false, that is why it can't be ommitted.
+        This would hide the QuestGUI as soon as a Pawn got in range of the DistanceTrigger. The mode is 'normal', it is specified here, but could be ommitted as well, since it is the default. OnLoad is false, that is why it can't be ommitted. Also needsGraphics is set to true because showGUI needs graphics to work.
     @author
         Benjamin Knecht
@@ -125,4 +126,17 @@
                 { return this->times_; }
 
+            /**
+            @brief Set whether the code to be executed needs graphics to work.
+            @param needsGraphics True if the cde needs graphics to be executed properly.
+            */
+            void setNeedsGraphics(bool needsGraphics)
+                { this->needsGraphics_ = needsGraphics; }
+            /**
+            @brief Get whether the code to be executed needs graphics to work.
+            @return Returns true if the code needs graphic, false if not.
+            */
+            bool getNeedsGraphics(void)
+                { return this->needsGraphics_; }
+
         private:
             //! Static variables to avoid magic strings.
@@ -135,4 +149,5 @@
             bool onLoad_; //!< Whether the Scripts code is executed upon loading (creation) of this Script.
             int times_; //!< The number of times the Scripts code is executed at the most. -1 denotes infinity.
+            bool needsGraphics_; //!< Whether the code to be executed needs graphics.
 
             LuaState* luaState_; //!< The LuaState to execute the code in lua.
