Changeset 9298 in orxonox.OLD for trunk/src/lib
- Timestamp:
- Jul 17, 2006, 9:29:22 AM (18 years ago)
- Location:
- trunk/src/lib/script_engine
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/script_engine/script.cc
r9235 r9298 17 17 #include "script_class.h" 18 18 #include "luaincl.h" 19 19 #include "debug.h" 20 20 #include "util/loading/resource_manager.h" 21 21 … … 50 50 51 51 52 Script::Script(const std::string& filename) 53 { 54 this->setClassID(CL_SCRIPT, "Script"); 55 56 returnCount = argumentCount = 0; 57 58 luaState = lua_open(); 59 60 luaopen_base(luaState); 61 luaopen_table(luaState); 62 luaopen_io(luaState); 63 luaopen_string(luaState); 64 luaopen_math(luaState); 65 luaopen_debug(luaState); 66 67 this->loadFile(filename); 68 69 } 70 52 71 Script::~Script() 53 72 { … … 59 78 void Script::loadParams(const TiXmlElement* root) 60 79 { 61 //printf( "Loading params for %p \n",this);80 //printf(("Loading params for %p \n",this); 62 81 BaseObject::loadParams(root); 63 82 64 83 LOAD_PARAM_START_CYCLE(root, object); 65 84 { 66 85 LoadParam_CYCLE(object, "object", this, Script, addObject) 67 86 .describe("The name of an object that is needed by a script"); 68 87 } 69 88 LOAD_PARAM_END_CYCLE(object); 70 89 71 90 … … 87 106 if(currentFile.length() != 0) 88 107 { 89 printf(" Could not load %s because an other file is already loaded: %s\n",filename.c_str(), currentFile.c_str());108 printf("SCRIPT %s : ERROR: Could not load %s because an other file is already loaded: %s\n",currentFile.c_str(),filename.c_str(), currentFile.c_str()); 90 109 return false; 91 110 } … … 104 123 else 105 124 { 106 printf(" ERROR while loading file %s: \n",filename.c_str());125 printf("SCRIPT %s : ERROR: while loading file %s: \n",currentFile.c_str(),filename.c_str()); 107 126 reportError(error); 108 127 } … … 111 130 else 112 131 { 113 printf(" ERROR while loading file %s: \n",filename.c_str());132 printf("SCRIPT %s : ERROR: while loading file %s: \n",currentFile.c_str(),filename.c_str()); 114 133 reportError(error); 115 134 } … … 121 140 void Script::addObject(const std::string& className, const std::string& objectName) 122 141 { 123 //printf( "Script %s: I am about to add %s of class %s\n",this->getName(),objectName.c_str(),className.c_str());142 //printf(("Script %s: I am about to add %s of class %s\n",this->getName(),objectName.c_str(),className.c_str()); 124 143 125 144 BaseObject* scriptClass = ClassList::getObject(className, CL_SCRIPT_CLASS); 126 // printf( "The script class for %s is at %p \n",className.c_str(),scriptClass);145 // printf(("The script class for %s is at %p \n",className.c_str(),scriptClass); 127 146 WorldObject tmpObj; 128 147 if (scriptClass != NULL) … … 135 154 136 155 BaseObject* object = ClassList::getObject(objectName, className); 137 // printf( "%s is at %p \n",objectName.c_str(),object);156 // printf(("%s is at %p \n",objectName.c_str(),object); 138 157 if (object != NULL && !objectIsAdded(objectName)) 139 158 { … … 150 169 bool Script::executeFile() 151 170 { 152 printf("WARNING: script.executeFile is not implemented yet");171 PRINT(2)("WARNING: script.executeFile is not implemented yet\n"); 153 172 /*if(currentFile.length() != 0) 154 173 { … … 183 202 } 184 203 else 185 printf(" There is an other function active ( %s ) or there are unremoved return values on the stack. Please remove them first.\n",currentFunction.c_str());204 printf("SCRIPT %s : ERROR: There is an other function active ( %s ) or there are unremoved return values on the stack. Please remove them first.\n",currentFile.c_str(),currentFunction.c_str()); 186 205 return false; 187 206 } … … 195 214 if(error != 0) 196 215 { 197 printf("ERROR while executing function %s: \n",currentFunction.c_str());216 printf("SCRIPT %s : ERROR: Failed to execute function %s: \n",currentFile.c_str(),currentFunction.c_str()); 198 217 reportError(error); 199 218 //clean up … … 210 229 } 211 230 else 212 printf(" Error: no function selected.\n");231 printf("SCRIPT %s : ERROR: no function selected.\n",currentFile.c_str()); 213 232 214 233 return false; … … 227 246 else 228 247 { 229 printf("Couldn't add parameter because the wrong function is selected: %s instead of %s\n", currentFunction.c_str(), toFunction.c_str());248 printf("SCRIPT %s : ERROR: Couldn't add parameter because the wrong function is selected: %s instead of %s\n",currentFile.c_str(), currentFunction.c_str(), toFunction.c_str()); 230 249 return false; 231 250 } … … 244 263 else 245 264 { 246 printf(" Couldn't add parameter because the wrong function is selected: %s instead of %s\n", currentFunction.c_str(), toFunction.c_str());265 printf("SCRIPT %s : ERROR: Couldn't add parameter because the wrong function is selected: %s instead of %s\n",currentFile.c_str(), currentFunction.c_str(), toFunction.c_str()); 247 266 return false; 248 267 } … … 260 279 else 261 280 { 262 printf(" Couldn't add parameter because the wrong function is selected: %s instead of %s\n", currentFunction.c_str(), toFunction.c_str());281 printf("SCRIPT %s : ERROR: Couldn't add parameter because the wrong function is selected: %s instead of %s\n",currentFile.c_str(), currentFunction.c_str(), toFunction.c_str()); 263 282 return false; 264 283 } … … 295 314 } 296 315 else 297 printf(" ERROR: Form %s : trying to retreive non bolean value",this->currentFile.c_str());316 printf("SCRIPT %s : ERROR: Trying to retreive non bolean value\n",this->currentFile.c_str()); 298 317 } 299 318 return returnValue; … … 346 365 { 347 366 const char *msg = lua_tostring(luaState, -1); 348 if (msg == NULL) msg = "(error with no message) ";349 fprintf(stderr,"ERROR: %s\n", msg);367 if (msg == NULL) msg = "(error with no message)\n"; 368 printf("ERROR: %s\n", msg); 350 369 lua_pop(luaState, 1); 351 370 } … … 368 387 { 369 388 BaseObject* scriptClass = ClassList::getObject(className, CL_SCRIPT_CLASS); 370 //printf( "The script class for %s is at %p \n",className.c_str(),scriptClass);389 //printf(("The script class for %s is at %p \n",className.c_str(),scriptClass); 371 390 WorldObject tmpObj; 372 391 if (scriptClass != NULL) -
trunk/src/lib/script_engine/script.h
r9235 r9298 24 24 public: 25 25 Script(const TiXmlElement* root = NULL); 26 Script(const std::string& filename); 26 27 ~Script(); 27 28
Note: See TracChangeset
for help on using the changeset viewer.