summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Zhuravlev <zhuravlevilya@ya.ru>2013-12-13 20:35:57 +0400
committerPerttu Ahola <celeron55@gmail.com>2014-01-05 12:43:40 +0200
commitb8c3221d556b94b9e14df450ecf8f3be20ba87db (patch)
tree194b5129346ecef454f9eadb5c91ba101d37c5a8
parent4d22977509af7b7a7f70bfd5ad9a01c2994d2395 (diff)
downloadminetest-b8c3221d556b94b9e14df450ecf8f3be20ba87db.tar.gz
minetest-b8c3221d556b94b9e14df450ecf8f3be20ba87db.tar.bz2
minetest-b8c3221d556b94b9e14df450ecf8f3be20ba87db.zip
Fix absence of images when compiled with RUN_IN_PLACE=0.
-rw-r--r--builtin/mainmenu.lua5
-rw-r--r--src/script/lua_api/l_mainmenu.cpp10
-rw-r--r--src/script/lua_api/l_mainmenu.h2
3 files changed, 14 insertions, 3 deletions
diff --git a/builtin/mainmenu.lua b/builtin/mainmenu.lua
index f8556a388..ecbcce1a0 100644
--- a/builtin/mainmenu.lua
+++ b/builtin/mainmenu.lua
@@ -253,7 +253,7 @@ function menu.init()
menu.favorites = engine.get_favorites("local")
end
- menu.defaulttexturedir = engine.get_texturepath() .. DIR_DELIM .. "base" ..
+ menu.defaulttexturedir = engine.get_texturepath_share() .. DIR_DELIM .. "base" ..
DIR_DELIM .. "pack" .. DIR_DELIM
end
@@ -1070,8 +1070,7 @@ function tabbuilder.tab_texture_packs()
local no_screenshot = nil
if not file_exists(screenfile) then
screenfile = nil
- no_screenshot = engine.get_texturepath()..DIR_DELIM..
- "base"..DIR_DELIM.."pack"..DIR_DELIM.."no_screenshot.png"
+ no_screenshot = menu.defaulttexturedir .. "no_screenshot.png"
end
return retval ..
diff --git a/src/script/lua_api/l_mainmenu.cpp b/src/script/lua_api/l_mainmenu.cpp
index ba8a09747..abf2a8f81 100644
--- a/src/script/lua_api/l_mainmenu.cpp
+++ b/src/script/lua_api/l_mainmenu.cpp
@@ -704,6 +704,14 @@ int ModApiMainMenu::l_get_texturepath(lua_State *L)
return 1;
}
+int ModApiMainMenu::l_get_texturepath_share(lua_State *L)
+{
+ std::string gamepath
+ = fs::RemoveRelativePathComponents(porting::path_share + DIR_DELIM + "textures");
+ lua_pushstring(L, gamepath.c_str());
+ return 1;
+}
+
/******************************************************************************/
int ModApiMainMenu::l_get_dirlist(lua_State *L)
{
@@ -1032,6 +1040,7 @@ void ModApiMainMenu::Initialize(lua_State *L, int top)
API_FCT(get_modpath);
API_FCT(get_gamepath);
API_FCT(get_texturepath);
+ API_FCT(get_texturepath_share);
API_FCT(get_dirlist);
API_FCT(create_dir);
API_FCT(delete_dir);
@@ -1059,6 +1068,7 @@ void ModApiMainMenu::InitializeAsync(AsyncEngine& engine)
ASYNC_API_FCT(get_modpath);
ASYNC_API_FCT(get_gamepath);
ASYNC_API_FCT(get_texturepath);
+ ASYNC_API_FCT(get_texturepath_share);
ASYNC_API_FCT(get_dirlist);
ASYNC_API_FCT(create_dir);
ASYNC_API_FCT(delete_dir);
diff --git a/src/script/lua_api/l_mainmenu.h b/src/script/lua_api/l_mainmenu.h
index e185f0a37..db11ae794 100644
--- a/src/script/lua_api/l_mainmenu.h
+++ b/src/script/lua_api/l_mainmenu.h
@@ -111,6 +111,8 @@ private:
static int l_get_texturepath(lua_State *L);
+ static int l_get_texturepath_share(lua_State *L);
+
static int l_get_dirlist(lua_State *L);
static int l_create_dir(lua_State *L);