Index: /trunk/src/lib/graphics/light.cc
===================================================================
--- /trunk/src/lib/graphics/light.cc	(revision 5652)
+++ /trunk/src/lib/graphics/light.cc	(revision 5653)
@@ -258,8 +258,8 @@
 void LightManager::loadParams(const TiXmlElement* root)
 {
-  LoadParam<LightManager>(root, "Lights", this, &LightManager::loadLights)
+  LoadParamXML(root, "Lights", this, LightManager, loadLights)
       .describe("an XML-Element to load lights from.");
 
-  LoadParam<LightManager>(root, "ambient-color", this, &LightManager::setAmbientColor)
+  LoadParamNEW(root, "ambient-color", this, LightManager, setAmbientColor)
       .describe("sets the ambient Color of the Environmental Light");
 }
Index: /trunk/src/lib/particles/particle_emitter.cc
===================================================================
--- /trunk/src/lib/particles/particle_emitter.cc	(revision 5652)
+++ /trunk/src/lib/particles/particle_emitter.cc	(revision 5653)
@@ -117,5 +117,5 @@
 
 
-  LoadParam<ParticleEmitter>(root, "emission-direction", this, &ParticleEmitter::setDirection);
+  LoadParamNEW(root, "emission-direction", this, ParticleEmitter, setDirection);
 }
 
Index: /trunk/src/util/loading/load_param.cc
===================================================================
--- /trunk/src/util/loading/load_param.cc	(revision 5652)
+++ /trunk/src/util/loading/load_param.cc	(revision 5653)
@@ -107,4 +107,11 @@
 }
 
+/**
+ * Constructs a new LoadParameter
+ * @param root the XML-element to load this Parameter from
+ * @param paramName the Parameter to load
+ * @param object the BaseObject, to load this parameter on to (will be cast to executor's Parameter)
+ * @param executor the Executor, that executes the loading procedure.
+ */
 LoadParamBase::LoadParamBase(const TiXmlElement* root, const char* paramName, BaseObject* object, const Executor& executor)
 {
@@ -123,18 +130,21 @@
 }
 
-
+/**
+ * This is a VERY SPECIAL deconsrtuctor.
+ * It is made, so that it loads the Parameters on destruction.
+ * meaning, if an Executor a valid Object exist, and all
+ * Execution-Conditions are met, they are executed here.
+ */
 LoadParamBase::~LoadParamBase()
 {
   if (likely(this->executor != NULL))
   {
-    printf("%s: %s", this->paramName, this->loadString);
     if (likely(this->object != NULL && this->executor != NULL) &&
         ( this->loadString != NULL ||
          ((this->executor->getType() & Executor_NoLoadString) == Executor_NoLoadString)))
     {
-      printf(" - exec");
+      PRINTF(4)("Loading '%s' with Parameters '%s' onto: '%s'(%s)\n", this->paramName, this->loadString, this->object->getName(), this->object->getClassName());
       this->executor->execute(this->object, this->loadString);
     }
-    printf ("\n");
     delete this->executor;
   }
@@ -142,5 +152,9 @@
 }
 
-
+/**
+ * set the default values of the executor
+ * @param count how many default values to set.
+ * @param ... the default values !! must be at least count parameters!!
+ */
 LoadParamBase* LoadParamBase::defaultValues(unsigned int count, ...)
 {
Index: /trunk/src/util/loading/load_param.h
===================================================================
--- /trunk/src/util/loading/load_param.h	(revision 5652)
+++ /trunk/src/util/loading/load_param.h	(revision 5653)
@@ -284,25 +284,4 @@
 #include "functor_list.h"
 #undef FUNCTOR_LIST
-
-  //! makes functions with one Vector loadable
-  //LoadParam1(l_VECTOR);
-
-  // loads a Ti-XML-element
-  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(const TiXmlElement*), bool multi = false)
-  : LoadParamBase(root, pt2Object, paramName, 1, multi, NULL, "XML")
-  {
-    if (root != NULL)
-    {
-      const TiXmlElement* elem = root->FirstChildElement(paramName);
-      if (elem != NULL)
-        (*pt2Object.*function)(elem);
-      else
-        PRINTF(4)("%s of %s is empty\n", paramName, pt2Object->getClassName());
-    }
-    else
-      PRINTF(4)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
-  }
-
-  //LoadParamPT(l_XML_ELEM);
 };
 
Index: /trunk/src/world_entities/weapons/weapon_manager.cc
===================================================================
--- /trunk/src/world_entities/weapons/weapon_manager.cc	(revision 5652)
+++ /trunk/src/world_entities/weapons/weapon_manager.cc	(revision 5653)
@@ -124,7 +124,7 @@
   LOAD_PARAM_START_CYCLE(root, element);
 
-  LoadParam<WeaponManager>(element, "weapons", this, &WeaponManager::loadWeapons)
+
+  LoadParamXML(element, "weapons", this, WeaponManager, loadWeapons)
       .describe("loads Weapons");
-      // LoadParam<WeaponManager>(root, "Weapon", this, &WeaponManager::addWeapon);
 
   LOAD_PARAM_END_CYCLE(element);
@@ -140,5 +140,5 @@
 
   Weapon* newWeapon = dynamic_cast<Weapon*>(Factory::getFirst()->fabricate(element));
-
+  /// @todo implement this !!
 
 
