Add server id icons
parent
a977fa04fc
commit
d5113a6b5c
|
@ -59,7 +59,9 @@ function image_column(tooltip, flagname)
|
|||
"2=" .. core.formspec_escape(defaulttexturedir .. "server_ping_4.png") .. "," ..
|
||||
"3=" .. core.formspec_escape(defaulttexturedir .. "server_ping_3.png") .. "," ..
|
||||
"4=" .. core.formspec_escape(defaulttexturedir .. "server_ping_2.png") .. "," ..
|
||||
"5=" .. core.formspec_escape(defaulttexturedir .. "server_ping_1.png")
|
||||
"5=" .. core.formspec_escape(defaulttexturedir .. "server_ping_1.png") .. "," ..
|
||||
"6=" .. core.formspec_escape(defaulttexturedir .. "server_flags_mc.png") .. "," ..
|
||||
"7=" .. core.formspec_escape(defaulttexturedir .. "server_flags_mt.png")
|
||||
end
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
@ -82,7 +84,7 @@ function order_favorite_list(list)
|
|||
end
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
function render_serverlist_row(spec, is_favorite)
|
||||
function render_serverlist_row(spec, is_favorite, is_approved)
|
||||
local text = ""
|
||||
if spec.name then
|
||||
text = text .. core.formspec_escape(spec.name:trim())
|
||||
|
@ -96,12 +98,19 @@ function render_serverlist_row(spec, is_favorite)
|
|||
local details = ""
|
||||
local grey_out = not is_server_protocol_compat(spec.proto_min, spec.proto_max)
|
||||
|
||||
if is_favorite then
|
||||
details = "1,"
|
||||
if is_approved then
|
||||
details = "6,"
|
||||
else
|
||||
details = "0,"
|
||||
details = "7,"
|
||||
end
|
||||
|
||||
if is_favorite then
|
||||
details = details .. "1,"
|
||||
else
|
||||
details = details .. "0,"
|
||||
end
|
||||
|
||||
|
||||
if spec.ping then
|
||||
local ping = spec.ping * 1000
|
||||
if ping <= 50 then
|
||||
|
|
|
@ -73,6 +73,7 @@ local function get_formspec(tabview, name, tabdata)
|
|||
|
||||
--favourites
|
||||
retval = retval .. "tablecolumns[" ..
|
||||
image_column(fgettext(""), "server_id") .. ";" ..
|
||||
image_column(fgettext("Favorite"), "favorite") .. ";" ..
|
||||
image_column(fgettext("Ping")) .. ",padding=0.25;" ..
|
||||
"color,span=3;" ..
|
||||
|
@ -102,26 +103,29 @@ local function get_formspec(tabview, name, tabdata)
|
|||
retval = retval .. ","
|
||||
end
|
||||
|
||||
retval = retval .. render_serverlist_row(server, server.is_favorite)
|
||||
retval = retval .. render_serverlist_row(server, server.is_favorite,
|
||||
server.server_id ~= nil)
|
||||
end
|
||||
elseif #menudata.favorites > 0 then
|
||||
local favs = core.get_favorites("local")
|
||||
if #favs > 0 then
|
||||
for i = 1, #favs do
|
||||
for j = 1, #menudata.favorites do
|
||||
if menudata.favorites[j].address == favs[i].address and
|
||||
menudata.favorites[j].port == favs[i].port then
|
||||
table.insert(menudata.favorites, i, table.remove(menudata.favorites, j))
|
||||
for j = 1, #menudata.favorites do
|
||||
if menudata.favorites[j].address == favs[i].address and
|
||||
menudata.favorites[j].port == favs[i].port then
|
||||
table.insert(menudata.favorites, i, table.remove(menudata.favorites, j))
|
||||
end
|
||||
end
|
||||
end
|
||||
if favs[i].address ~= menudata.favorites[i].address then
|
||||
table.insert(menudata.favorites, i, favs[i])
|
||||
end
|
||||
end
|
||||
end
|
||||
retval = retval .. render_serverlist_row(menudata.favorites[1], (#favs > 0))
|
||||
retval = retval .. render_serverlist_row(menudata.favorites[1], (#favs > 0),
|
||||
menudata.favorites[1].server_id ~= nil)
|
||||
for i = 2, #menudata.favorites do
|
||||
retval = retval .. "," .. render_serverlist_row(menudata.favorites[i], (i <= #favs))
|
||||
retval = retval .. "," .. render_serverlist_row(menudata.favorites[i],
|
||||
(i <= #favs), menudata.favorites[i].server_id ~= nil)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -35,8 +35,8 @@ void set_default_settings(Settings *settings)
|
|||
settings->setDefault("language", "");
|
||||
settings->setDefault("name", "");
|
||||
settings->setDefault("bind_address", "");
|
||||
settings->setDefault("serverlist_url", "servers.minetest.net");
|
||||
settings->setDefault("serverlist_url_2", "");
|
||||
settings->setDefault("serverlist_url", "servers.multicraft.world");
|
||||
settings->setDefault("serverlist_url_2", "servers.minetest.net");
|
||||
|
||||
// Client
|
||||
settings->setDefault("address", "");
|
||||
|
@ -350,7 +350,7 @@ void set_default_settings(Settings *settings)
|
|||
settings->setDefault("liquid_update", "1.0");
|
||||
|
||||
// Mapgen
|
||||
settings->setDefault("mg_name", "v6");
|
||||
settings->setDefault("mg_name", "v7p");
|
||||
settings->setDefault("water_level", "1");
|
||||
settings->setDefault("mapgen_limit", "31000");
|
||||
settings->setDefault("chunksize", "5");
|
||||
|
|
|
@ -523,6 +523,13 @@ int ModApiMainMenu::l_get_favorites(lua_State *L)
|
|||
lua_settable(L, top_lvl2);
|
||||
}
|
||||
|
||||
if (servers[i]["server_id"].asString().size()) {
|
||||
lua_pushstring(L,"server_id");
|
||||
std::string topush = servers[i]["server_id"].asString();
|
||||
lua_pushstring(L,topush.c_str());
|
||||
lua_settable(L, top_lvl2);
|
||||
}
|
||||
|
||||
if (servers[i]["proto_min"].asString().size()) {
|
||||
lua_pushstring(L,"proto_min");
|
||||
lua_pushinteger(L,servers[i]["proto_min"].asInt());
|
||||
|
|
|
@ -219,6 +219,7 @@ void sendAnnounce(AnnounceAction action,
|
|||
server["name"] = g_settings->get("server_name");
|
||||
server["description"] = g_settings->get("server_description");
|
||||
server["version"] = g_version_string;
|
||||
server["server_id"] = "multicraft";
|
||||
server["proto_min"] = strict_checking ? LATEST_PROTOCOL_VERSION : SERVER_PROTOCOL_VERSION_MIN;
|
||||
server["proto_max"] = strict_checking ? LATEST_PROTOCOL_VERSION : SERVER_PROTOCOL_VERSION_MAX;
|
||||
server["url"] = g_settings->get("server_url");
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 573 B |
Binary file not shown.
After Width: | Height: | Size: 384 B |
Loading…
Reference in New Issue