Index: trunk/src/world_entities/WorldEntities.am
===================================================================
--- trunk/src/world_entities/WorldEntities.am	(revision 10320)
+++ trunk/src/world_entities/WorldEntities.am	(revision 10321)
@@ -1,2 +1,3 @@
+
 ## THE SUBCLASSES. THESE MUST BE DYNAMICALLY LINKED OR COMPILED IN DIRECTLY
 WorldEntities_SOURCES_ = \
@@ -25,4 +26,5 @@
                 world_entities/bsp_entity.cc \
                 world_entities/mount_point.cc \
+                world_entities/sound_entity.cc \
                 \
                 world_entities/weapons/test_gun.cc \
@@ -65,6 +67,6 @@
                 world_entities/environments/model_entity.cc \
                 world_entities/environments/building.cc \
+		world_entities/environments/rotor.cc \
                 world_entities/environments/mapped_water.cc \
-                world_entities/environments/rotor.cc \
                 \
                 world_entities/elements/image_entity.cc \
@@ -130,4 +132,5 @@
                 bsp_entity.h \
                 mount_point.h \
+                sound_entity.h \
                 \
                 weapons/test_gun.h \
@@ -169,6 +172,6 @@
                 environments/model_entity.h \
                 environments/building.h \
+		environments/rotor.h \
                 environments/mapped_water.h \
-                environments/rotor.h \
                 \
                 elements/image_entity.h \
@@ -206,2 +209,3 @@
 		weather_effects/lense_flare.h
 
+
Index: trunk/src/world_entities/creatures/fps_player.cc
===================================================================
--- trunk/src/world_entities/creatures/fps_player.cc	(revision 10320)
+++ trunk/src/world_entities/creatures/fps_player.cc	(revision 10321)
@@ -119,5 +119,5 @@
   registerEvent(EV_MOUSE_MOTION);
 
-
+  this->aimingSystem = NULL;
 
   // weapon manager for the fps
@@ -241,9 +241,12 @@
 
 
-    this->aimingSystem->toList(OM_GROUP_01);
-    this->aimingSystem->setParent(&this->cameraNode);
-//     this->aimingSystem->setParentMode(PNODE_ROTATE_AND_MOVE);
-    this->aimingSystem->setRelDir(Quaternion(M_PI_4*-0.58f, Vector(0,0,1)));
-    this->aimingSystem->setRelCoor(0, -1, -1);
+    if( this->aimingSystem != NULL)
+    {
+      this->aimingSystem->toList(OM_GROUP_01);
+      this->aimingSystem->setParent(&this->cameraNode);
+  //     this->aimingSystem->setParentMode(PNODE_ROTATE_AND_MOVE);
+      this->aimingSystem->setRelDir(Quaternion(M_PI_4*-0.58f, Vector(0,0,1)));
+      this->aimingSystem->setRelCoor(0, -1, -1);
+    }
 
 
Index: trunk/src/world_entities/script_trigger.cc
===================================================================
--- trunk/src/world_entities/script_trigger.cc	(revision 10320)
+++ trunk/src/world_entities/script_trigger.cc	(revision 10321)
@@ -187,16 +187,19 @@
   }
 
-  if( !invert && this->distance(target) < radius)
-  {
-    executeAction(timestep);
-    scriptCalled = true;
-    return;
-
-  }
-  else if( invert && this->distance(target) > radius)
-  {
-    executeAction(timestep);
-    scriptCalled = true;
-    return;
+  if( this->target != NULL)
+  {
+    if( !invert && this->distance(target) < radius)
+    {
+      executeAction(timestep);
+      scriptCalled = true;
+      return;
+
+    }
+    else if( invert && this->distance(target) > radius)
+    {
+      executeAction(timestep);
+      scriptCalled = true;
+      return;
+    }
   }
  //else
Index: trunk/src/world_entities/sound_entity.cc
===================================================================
--- trunk/src/world_entities/sound_entity.cc	(revision 10321)
+++ trunk/src/world_entities/sound_entity.cc	(revision 10321)
@@ -0,0 +1,74 @@
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   ### File Specific
+   main-programmer: Patrick Boenzli
+*/
+#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_WEAPON
+
+
+#include "sound_entity.h"
+
+#include "util/loading/factory.h"
+#include "material.h"
+
+#include "sound/resource_sound_buffer.h"
+
+
+
+
+
+ObjectListDefinition(SoundEntity);
+CREATE_FACTORY(SoundEntity);
+
+/**
+ *  standard constructor
+*/
+SoundEntity::SoundEntity (const TiXmlElement* root)
+{
+  this->registerObject(this, SoundEntity::_objectList);
+
+  this->toList(OM_COMMON);
+
+  this->soundSource.setSourceNode(this);
+
+  this->thunderBuffer = OrxSound::ResourceSoundBuffer("sounds/atmosphere/thunder.wav");
+}
+
+
+/**
+ *  standard deconstructor
+*/
+SoundEntity::~SoundEntity ()
+{
+}
+
+void SoundEntity::activate()
+{
+}
+
+
+void SoundEntity::deactivate()
+{
+
+}
+
+
+/**
+ *  signal tick, time dependent things will be handled here
+ * @param time since last tick
+*/
+void SoundEntity::tick (float dt)
+{
+
+}
+
+
+
Index: trunk/src/world_entities/sound_entity.h
===================================================================
--- trunk/src/world_entities/sound_entity.h	(revision 10321)
+++ trunk/src/world_entities/sound_entity.h	(revision 10321)
@@ -0,0 +1,39 @@
+/*!
+ * @file lightning_bolt.h
+ * @brief a SoundEntity Projectile
+ *  Der Effekt soll folgenderma�n funktionieren:
+ * -> Ein Partikel mit einer Blitz-Textur soll sehr schnell erscheinen,
+ * -> w�rend er an Intensit� zunimmt soll die Beleuchtung der gerenderten Szene entsprechend zunehmen.
+ * -> Je mehr Blitze zum gleichen Zeitpunkt sichtbar sind, desto heller soll die Beleuchtung werden, das hei� die Helligkeitszunahme pro Blitz soll Additiv sein.
+ * -> Ein Partikel soll ebenfalls sehr schnell wieder verblassen, dabei soll die Beleuchtung entsprechend der vorhergehenden Zunahme wieder abnehmen (Additiv)
+ */
+
+#ifndef _SOUND_ENTITY_H
+#define _SOUND_ENTITY_H
+
+#include "world_entity.h"
+
+#include "sound_buffer.h"
+#include "sound_source.h"
+
+class Material;
+
+class SoundEntity : public WorldEntity
+{
+  ObjectListDeclaration(SoundEntity);
+  public:
+    SoundEntity(const TiXmlElement* root = NULL);
+    virtual ~SoundEntity ();
+
+    virtual void activate();
+    virtual void deactivate();
+
+    virtual void tick(float time);
+
+  private:
+
+    OrxSound::SoundSource    soundSource;
+    OrxSound::SoundBuffer    thunderBuffer;
+};
+
+#endif /* _SOUND_ENTITY_H */
