- if(type == triggerevent)\r
- {\r
- if (script != "")\r
- {\r
- try\r
- {\r
- ScriptInterpreter* interpreter \r
- = new ScriptInterpreter(GameSession::current()->get_working_directory());\r
- interpreter->register_sector(Sector::current());\r
- std::istringstream in(script);\r
- interpreter->load_script(in, "trigger-script");\r
- interpreter->start_script();\r
- Sector::current()->add_object(interpreter);\r
- }\r
- catch(std::exception& e)\r
- {\r
- std::cerr << "Couldn't execute trigger script: " << e.what() << "\n";\r
- }\r
- }\r
- else\r
- {\r
- std::cerr << "Couldn't find trigger script.\n";\r
- }\r
- }\r
+ if(type != triggerevent)\r
+ return;\r
+\r
+ std::istringstream stream(script);\r
+ Sector::current()->run_script(stream, "ScriptTrigger");\r