Changeset 8408 in orxonox.OLD for trunk/src/lib/script_engine/object.cc
- Timestamp:
- Jun 14, 2006, 5:50:18 PM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/script_engine/object.cc
r8271 r8408 8 8 9 9 10 class Object : public BaseObject { 11 public: 12 static const char className[]; 13 static Lunar<Object>::RegType methods[]; 10 class Object : public BaseObject 11 { 12 public: 13 Object(lua_State* L) {callCount = 0; } 14 Object(){callCount = 0;this->setClassID(CL_TEST_OBJECT, "Object");}; 15 ~Object() { printf("deleted Object (%p)\n", this); } 14 16 15 Object(lua_State* L) {callCount = 0; } 16 Object(){callCount = 0;}; 17 ~Object() { printf("deleted Object (%p)\n", this); } 17 //meber functions 18 void takeParam(int i) 19 { 20 printf("Lua passed %i to c++\n",i); 21 } 18 22 19 //meber functions20 void takeParam(int i)21 {22 printf("Lua passed %i to c++\n",i);23 23 int printName(lua_State* L) 24 { 25 this->printName(); 26 return 0; 27 } 24 28 25 int printName(lua_State* L)26 27 this->printName();28 return 0;29 29 void printName() 30 { 31 callCount ++; 32 printf("Hi i'm object %p ! This is the %i. call.\n",this,callCount); 33 } 30 34 31 void printName() 32 { 33 callCount ++; 34 printf("Hi i'm object %p ! This is the %i. call.\n",this,callCount); 35 } 35 int getCallCount(){ return callCount; } 36 36 37 int getCallCount(){ return callCount; } 37 private: 38 int callCount; 38 39 39 private: 40 int callCount; 40 }; 41 41 42 };43 42 44 const char Object::className[] = "Object"; 45 46 Lunar<Object>::RegType Object::methods[] = { 47 {"printName", new ExecutorLua0<Object>(&Object::printName)}, 48 {"getCallCount", new ExecutorLua0ret<Object, int>(&Object::getCallCount)}, 49 {"takeParam", new ExecutorLua1<Object, int>(&Object::takeParam)}, 50 {0,0} 51 }; 52 53 CREATE_SCRIPTABLE_CLASS(Object, CL_TEST_OBJECT); 43 CREATE_SCRIPTABLE_CLASS(Object, CL_TEST_OBJECT, 44 addMethod("printName", ExecutorLua0<Object>(&Object::printName)) 45 ->addMethod("getCallCount", ExecutorLua0ret<Object, int>(&Object::getCallCount)) 46 ->addMethod("takeParam", ExecutorLua1<Object, int>(&Object::takeParam)));
Note: See TracChangeset
for help on using the changeset viewer.