Index: orxonox/branches/levelLoader/src/util/loading/load_param.h
===================================================================
--- orxonox/branches/levelLoader/src/util/loading/load_param.h	(revision 4239)
+++ orxonox/branches/levelLoader/src/util/loading/load_param.h	(revision 4241)
@@ -5,4 +5,5 @@
 #include "factory.h"
 #include "debug.h"
+#include "substring.h"
 
 // abstract base class
@@ -18,4 +19,5 @@
 {
  public:
+  // CONST CHAR*
   LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(const char*))
     { 
@@ -28,5 +30,55 @@
     };
 
+  // 1. FLOAT
   LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(float))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	(*pt2Object.*function)(atof(loadString));
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 2. FLOAT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(float, float))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atof(subLoads.getString(0)), atof(subLoads.getString(1)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 3. FLOAT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(float, float, float))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atof(subLoads.getString(0)), atof(subLoads.getString(1)), atof(subLoads.getString(2)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 4. FLOAT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(float, float, float, float))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atof(subLoads.getString(0)), atof(subLoads.getString(1)), atof(subLoads.getString(2)), atof(subLoads.getString(3)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 1. INT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(int))
     {
       const char* loadString = grabParameter(root, paramName);
@@ -36,4 +88,44 @@
 	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
     };
+
+  // 2. INT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(int, int))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atoi(subLoads.getString(0)), atoi(subLoads.getString(1)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 3. INT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(int, int, int))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atoi(subLoads.getString(0)), atoi(subLoads.getString(1)), atoi(subLoads.getString(2)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
+  // 4. INT
+  LoadParam(const TiXmlElement* root, const char* paramName, T* pt2Object, void(T::*function)(int, int, int, int))
+    {
+      const char* loadString = grabParameter(root, paramName);
+      if (loadString != NULL)
+	{
+	  SubString subLoads(loadString);
+	  (*pt2Object.*function)(atoi(subLoads.getString(0)), atoi(subLoads.getString(1)), atoi(subLoads.getString(2)), atoi(subLoads.getString(3)));
+	}
+      else 
+	PRINTF(2)("Not loaded parameter %s of %s\n", paramName, pt2Object->getClassName());
+    };
+
 };
 
