Index: /branches/new_class_id/src/lib/script_engine/script.cc
===================================================================
--- /branches/new_class_id/src/lib/script_engine/script.cc	(revision 9746)
+++ /branches/new_class_id/src/lib/script_engine/script.cc	(revision 9747)
@@ -216,5 +216,5 @@
     if(error != 0)
     {
-      PRINTF(1)("Script '%s' : Failed to execute function '%s': \n",currentFile.c_str(),currentFunction.c_str());
+      printf("Script '%s' : Failed to execute function '%s': \n",currentFile.c_str(),currentFunction.c_str());
      reportError(error);
      //clean up
Index: /branches/new_class_id/src/lib/util/executor/executor_generic.h
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor_generic.h	(revision 9746)
+++ /branches/new_class_id/src/lib/util/executor/executor_generic.h	(revision 9747)
@@ -47,6 +47,7 @@
    */
   template <typename ToType, int index>
-  ToType operator()(FromType& CallValue, const MultiType* const defaults)
-  {
+  static ToType getValue(FromType& CallValue, const MultiType* const defaults)
+  {
+    assert(0 && "Might be by mistake");
     return defaultValue;
   }
@@ -127,5 +128,5 @@
   {
     (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-      Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue));
+	Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue));
   };
 
@@ -170,6 +171,6 @@
   {
     (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-      Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type1, 1>(eval, this->defaultValue));
+      Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type1, 1>(eval, this->defaultValue));
   };
 
@@ -214,7 +215,7 @@
   {
     (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-      Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type1, 1>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type2, 2>(eval, this->defaultValue));
+      Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type1, 1>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type2, 2>(eval, this->defaultValue));
   };
 
@@ -259,8 +260,8 @@
   {
     (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-      Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type1, 1>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type2, 2>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type3, 3>(eval, this->defaultValue));
+      Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type1, 1>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type2, 2>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type3, 3>(eval, this->defaultValue));
   };
 
@@ -305,9 +306,9 @@
   {
     (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-      Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type1, 1>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type2, 2>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type3, 3>(eval, this->defaultValue),
-      Evaluater<CallType>().template operator()<type4, 4>(eval, this->defaultValue));
+      Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type1, 1>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type2, 2>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type3, 3>(eval, this->defaultValue),
+      Evaluater<CallType>::template getValue<type4, 4>(eval, this->defaultValue));
   };
 
@@ -327,17 +328,17 @@
 ////////////////////
 //! @brief ExecutorClass, that can execute Functions with one parameter.
-template<class T, typename CallType, typename ret, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
+template<class T, typename CallType, typename ReturnType, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
 class __EXECUTOR_FUNCTIONAL_NAME(0,ret) : public Executor<CallType, BaseClass>
 {
 private:
   /** @brief the FunctioPointer. */
-  ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)() __EXECUTOR_FUNCTIONAL_CONST;
-
-public:
-  /**
-   * @brief constructs the Executor.
-   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
-   */
-  __EXECUTOR_FUNCTIONAL_NAME(0,ret) (ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)() __EXECUTOR_FUNCTIONAL_CONST)
+  ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)() __EXECUTOR_FUNCTIONAL_CONST;
+
+public:
+  /**
+   * @brief constructs the Executor.
+   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
+   */
+  __EXECUTOR_FUNCTIONAL_NAME(0,ret) (ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)() __EXECUTOR_FUNCTIONAL_CONST)
       : Executor<CallType, BaseClass>(true, __EXECUTOR_FUNCTIONAL_FUNCTIONTYPE), functionPointer(functionPointer)
   {};
@@ -350,5 +351,5 @@
   virtual void operator()(BaseObject* object, CallType& eval = Evaluater<CallType>::defaultValue()) const
   {
-    Evaluater<CallType>().template storeRet<ret>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)());
+    Evaluater<CallType>::template storeRet<ReturnType>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)());
   };
 
@@ -359,5 +360,5 @@
   virtual Executor<CallType, BaseClass>* clone() const
   {
-    return  new __EXECUTOR_FUNCTIONAL_NAME(0,ret)<T, CallType, ret>(this->functionPointer);
+    return  new __EXECUTOR_FUNCTIONAL_NAME(0,ret)<T, CallType, ReturnType>(this->functionPointer);
   };
 };
@@ -367,17 +368,17 @@
 ////////////////////
 //! @brief ExecutorClass, that can execute Functions with one parameter.
-template<class T, typename CallType, typename ret, typename type0, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
+template<class T, typename CallType, typename ReturnType, typename type0, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
 class __EXECUTOR_FUNCTIONAL_NAME(1,ret) : public Executor<CallType, BaseClass>
 {
 private:
   /** @brief the FunctioPointer. */
-  ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0) __EXECUTOR_FUNCTIONAL_CONST;
-
-public:
-  /**
-   * @brief constructs the Executor.
-   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
-   */
-  __EXECUTOR_FUNCTIONAL_NAME(1,ret) (ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0) __EXECUTOR_FUNCTIONAL_CONST)
+  ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0) __EXECUTOR_FUNCTIONAL_CONST;
+
+public:
+  /**
+   * @brief constructs the Executor.
+   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
+   */
+  __EXECUTOR_FUNCTIONAL_NAME(1,ret) (ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0) __EXECUTOR_FUNCTIONAL_CONST)
       : Executor<CallType, BaseClass>(true, ExecutorParamType<type0>(), __EXECUTOR_FUNCTIONAL_FUNCTIONTYPE), functionPointer(functionPointer)
   {};
@@ -390,6 +391,6 @@
   virtual void operator()(BaseObject* object, CallType& eval = Evaluater<CallType>::defaultValue()) const
   {
-    Evaluater<CallType>().template storeRet<ret>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-          Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue)));
+    Evaluater<CallType>::template storeRet<ReturnType>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
+          Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue)));
   };
 
@@ -400,26 +401,26 @@
   virtual Executor<CallType, BaseClass>* clone() const
   {
-    return  new __EXECUTOR_FUNCTIONAL_NAME(1,ret)<T, CallType, ret, type0>(this->functionPointer);
-  };
-};
-
-
-////////////////////
-//// 1 & RETURN ////
+    return  new __EXECUTOR_FUNCTIONAL_NAME(1,ret)<T, CallType, ReturnType, type0>(this->functionPointer);
+  };
+};
+
+
+////////////////////
+//// 2 & RETURN ////
 ////////////////////
 //! @brief ExecutorClass, that can execute Functions with one parameter.
-template<class T, typename CallType, typename ret, typename type0, typename type1, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
+template<class T, typename CallType, typename ReturnType, typename type0, typename type1, template<typename> class Evaluater = ExecutorEvaluater, class BaseClass = BaseObject>
 class __EXECUTOR_FUNCTIONAL_NAME(2,ret) : public Executor<CallType, BaseClass>
 {
 private:
   /** @brief the FunctioPointer. */
-  ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0, type1) __EXECUTOR_FUNCTIONAL_CONST;
-
-public:
-  /**
-   * @brief constructs the Executor.
-   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
-   */
-  __EXECUTOR_FUNCTIONAL_NAME(2,ret) (ret (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0, type1) __EXECUTOR_FUNCTIONAL_CONST)
+  ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0, type1) __EXECUTOR_FUNCTIONAL_CONST;
+
+public:
+  /**
+   * @brief constructs the Executor.
+   * @param __EXECUTOR_FUNCTIONAL_FUNCTION_POINTER the FunctionPointer to the Calling Function.
+   */
+  __EXECUTOR_FUNCTIONAL_NAME(2,ret) (ReturnType (__EXECUTOR_FUNCTIONAL_FUNCTION_POINTER)(type0, type1) __EXECUTOR_FUNCTIONAL_CONST)
       : Executor<CallType, BaseClass>(true, ExecutorParamType<type0>(), __EXECUTOR_FUNCTIONAL_FUNCTIONTYPE), functionPointer(functionPointer)
   {};
@@ -432,7 +433,7 @@
   virtual void operator()(BaseObject* object, CallType& eval = Evaluater<CallType>::defaultValue()) const
   {
-    Evaluater<CallType>().template storeRet<ret>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
-          Evaluater<CallType>().template operator()<type0, 0>(eval, this->defaultValue),
-          Evaluater<CallType>().template operator()<type1, 1>(eval, this->defaultValue)));
+    Evaluater<CallType>::template storeRet<ReturnType>(eval, (__EXECUTOR_FUNCTIONAL_FUNCTION_EXEC)(
+          Evaluater<CallType>::template getValue<type0, 0>(eval, this->defaultValue),
+          Evaluater<CallType>::template getValue<type1, 1>(eval, this->defaultValue)));
   };
 
@@ -443,5 +444,5 @@
   virtual Executor<CallType, BaseClass>* clone() const
   {
-    return  new __EXECUTOR_FUNCTIONAL_NAME(2,ret)<T, CallType, ret, type0, type1>(this->functionPointer);
+    return  new __EXECUTOR_FUNCTIONAL_NAME(2,ret)<T, CallType, ReturnType, type0, type1>(this->functionPointer);
   };
 };
Index: /branches/new_class_id/src/lib/util/executor/executor_lua_state.h
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor_lua_state.h	(revision 9746)
+++ /branches/new_class_id/src/lib/util/executor/executor_lua_state.h	(revision 9747)
@@ -26,5 +26,7 @@
 
 #include "executor_generic.h"
+
 #include "luaincl.h"
+
 #ifdef FUNCTOR_CALL_TYPE
  #undef FUNCTOR_CALL_TYPE
@@ -49,9 +51,5 @@
 template<> void toLua<const std::string&>(lua_State* state, const std::string& value);
 
-/**
- * @brief to remove writing errors, this function is Used.
- * @param sub The SubString to use
- * @param default The default Values.
- */
+//! A Class, that evaluates a lua_State and converts indices into different Types.
 template<> class ExecutorEvaluater <lua_State*>
 {
@@ -62,12 +60,12 @@
    */
   template <typename ToType, int index>
-  ToType operator()(lua_State*& CallValue, const MultiType* const defaults)
+  static ToType getValue(lua_State*& CallValue, const MultiType* const defaults)
   {
-    return (fromLua<ToType>(CallValue, index));
+    return (fromLua<ToType>(CallValue, index+1));
   }
-  template <typename ToType>
-  void storeRet(lua_State*& state, ToType value)
+  template <typename FromType>
+  static void storeRet(lua_State*& state, FromType value)
   {
-    toLua<ToType>(state, value);
+    toLua<FromType>(state, value);
   }
   static lua_State*& defaultValue() { static lua_State* nullState; return nullState; };
Index: /branches/new_class_id/src/lib/util/executor/executor_substring.h
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor_substring.h	(revision 9746)
+++ /branches/new_class_id/src/lib/util/executor/executor_substring.h	(revision 9747)
@@ -71,5 +71,5 @@
    */
   template <typename ToType, int index>
-  ToType operator()(const SubString& CallValue, const MultiType* const defaults)
+  static ToType getValue(const SubString& CallValue, const MultiType* const defaults)
   {
     return (CallValue.size() > index) ?
