projects
/
supertux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make it build with -DCOMPILE_AMALGATION=ON. Still not certain how intern_draw/next_po...
[supertux.git]
/
src
/
scripting
/
functions.cpp
diff --git
a/src/scripting/functions.cpp
b/src/scripting/functions.cpp
index
b88070c
..
6c84d30
100644
(file)
--- a/
src/scripting/functions.cpp
+++ b/
src/scripting/functions.cpp
@@
-99,22
+99,18
@@
void load_worldmap(const std::string& filename)
{
using namespace worldmap;
{
using namespace worldmap;
- g_screen_manager->push_screen(new WorldMap(filename));
-}
+ if(World::current() == NULL)
+ throw std::runtime_error("Can't start WorldMap without active world.");
-void load_level(const std::string& filename)
-{
- g_screen_manager->push_screen(new GameSession(filename));
+ g_screen_manager->push_screen(new WorldMap(filename, World::current()->get_player_status()));
}
}
-
static SQInteger squirrel_read_char(SQUserPointer fil
e)
+
void load_level(const std::string& filenam
e)
{
{
- std::istream* in = reinterpret_cast<std::istream*> (file);
- char c = in->get();
- if(in->eof())
- return 0;
+ if(GameSession::current() == NULL)
+ throw std::runtime_error("Can't start level without active level.");
-
return c
;
+
g_screen_manager->push_screen(new GameSession(filename, GameSession::current()->get_player_status()))
;
}
void import(HSQUIRRELVM vm, const std::string& filename)
}
void import(HSQUIRRELVM vm, const std::string& filename)