diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-120.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-120.png
new file mode 100644
index 000000000..bfe712fcb
Binary files /dev/null and b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-120.png differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-152.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-152.png
new file mode 100644
index 000000000..5a99c6b8f
Binary files /dev/null and b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-152.png differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-167.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-167.png
new file mode 100644
index 000000000..b8f0c3f14
Binary files /dev/null and b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-167.png differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-180.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-180.png
new file mode 100644
index 000000000..80ce89543
Binary files /dev/null and b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-180.png differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-76.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-76.png
new file mode 100644
index 000000000..e8ef93ac7
Binary files /dev/null and b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/AppIcon-76.png differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-120.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-120.png
deleted file mode 100644
index 5ee797f3e..000000000
Binary files a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-120.png and /dev/null differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-152.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-152.png
deleted file mode 100644
index e88714d06..000000000
Binary files a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-152.png and /dev/null differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-167.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-167.png
deleted file mode 100644
index cf6f27a10..000000000
Binary files a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-167.png and /dev/null differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-180.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-180.png
deleted file mode 100644
index 06d603058..000000000
Binary files a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-180.png and /dev/null differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-76.png b/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-76.png
deleted file mode 100644
index e0cca06ac..000000000
Binary files a/build/iOS/MultiCraft/MultiCraft/Assets.xcassets/AppIcon.appiconset/ios-temp/AppIcon-76.png and /dev/null differ
diff --git a/build/iOS/MultiCraft/MultiCraft/Info.plist b/build/iOS/MultiCraft/MultiCraft/Info.plist
index a2868fb6e..24d72049d 100644
--- a/build/iOS/MultiCraft/MultiCraft/Info.plist
+++ b/build/iOS/MultiCraft/MultiCraft/Info.plist
@@ -17,9 +17,9 @@
CFBundlePackageType
APPL
CFBundleShortVersionString
- 1.0.7
+ 1.0.8
CFBundleVersion
- 12
+ 13
LSRequiresIPhoneOS
NSAppTransportSecurity
diff --git a/build/iOS/deps/leveldb.sh b/build/iOS/deps/leveldb.sh
index e56941216..f3db58282 100755
--- a/build/iOS/deps/leveldb.sh
+++ b/build/iOS/deps/leveldb.sh
@@ -1,7 +1,7 @@
#!/bin/bash -e
. ../sdk.sh
-LEVELDB_VERSION=1.19
+LEVELDB_VERSION=1.20
if [ ! -d leveldb-src ]; then
wget https://github.com/google/leveldb/archive/v$LEVELDB_VERSION.tar.gz
diff --git a/build/iOS/deps/libcurl.sh b/build/iOS/deps/libcurl.sh
index e90126e36..a1ac36f1c 100755
--- a/build/iOS/deps/libcurl.sh
+++ b/build/iOS/deps/libcurl.sh
@@ -1,7 +1,7 @@
#!/bin/bash -e
. ../sdk.sh
-CURL_VERSION=7.50.3
+CURL_VERSION=7.53.1
if [ ! -d libcurl-src ]; then
wget https://curl.haxx.se/download/curl-$CURL_VERSION.tar.gz
diff --git a/build/iOS/icon.png b/build/iOS/icon.png
index 333b96b59..4f769b59b 100644
Binary files a/build/iOS/icon.png and b/build/iOS/icon.png differ
diff --git a/src/game.cpp b/src/game.cpp
index 30b51f34f..8faeb8f0a 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -1326,7 +1326,7 @@ static void updateChat(Client &client, f32 dtime, bool show_debug,
setStaticText(guitext_chat, recent_chat);
// Update gui element size and position
- s32 chat_y = 5;
+ s32 chat_y = 5 + line_height;
if (show_debug)
chat_y += 2 * line_height;
@@ -4580,7 +4580,7 @@ void Game::updateGui(float *statustext_time, const RunStats &stats,
guitext->setText(utf8_to_wide(os.str()).c_str());
guitext->setVisible(true);
} else {
- guitext->setVisible(true);
+ guitext->setVisible(false);
}
if (guitext->isVisible()) {
diff --git a/src/script/lua_api/l_areastore.cpp b/src/script/lua_api/l_areastore.cpp
index 9b0c7ac1a..91c797059 100644
--- a/src/script/lua_api/l_areastore.cpp
+++ b/src/script/lua_api/l_areastore.cpp
@@ -380,7 +380,7 @@ void LuaAreaStore::Register(lua_State *L)
}
const char LuaAreaStore::className[] = "AreaStore";
-const luaL_reg LuaAreaStore::methods[] = {
+const luaL_Reg LuaAreaStore::methods[] = {
luamethod(LuaAreaStore, get_area),
luamethod(LuaAreaStore, get_areas_for_pos),
luamethod(LuaAreaStore, get_areas_in_area),
diff --git a/src/script/lua_api/l_areastore.h b/src/script/lua_api/l_areastore.h
index 3e5615f95..61f7c4ce1 100644
--- a/src/script/lua_api/l_areastore.h
+++ b/src/script/lua_api/l_areastore.h
@@ -29,7 +29,7 @@ class LuaAreaStore : public ModApiBase {
private:
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
static int gc_object(lua_State *L);
diff --git a/src/script/lua_api/l_inventory.cpp b/src/script/lua_api/l_inventory.cpp
index 74b836007..78ce8fcdd 100644
--- a/src/script/lua_api/l_inventory.cpp
+++ b/src/script/lua_api/l_inventory.cpp
@@ -463,7 +463,7 @@ void InvRef::Register(lua_State *L)
}
const char InvRef::className[] = "InvRef";
-const luaL_reg InvRef::methods[] = {
+const luaL_Reg InvRef::methods[] = {
luamethod(InvRef, is_empty),
luamethod(InvRef, get_size),
luamethod(InvRef, set_size),
diff --git a/src/script/lua_api/l_inventory.h b/src/script/lua_api/l_inventory.h
index fcaab24ef..5afe3f037 100644
--- a/src/script/lua_api/l_inventory.h
+++ b/src/script/lua_api/l_inventory.h
@@ -36,7 +36,7 @@ private:
InventoryLocation m_loc;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
static InvRef *checkobject(lua_State *L, int narg);
diff --git a/src/script/lua_api/l_item.cpp b/src/script/lua_api/l_item.cpp
index 172a1ee50..e0ce95ad5 100644
--- a/src/script/lua_api/l_item.cpp
+++ b/src/script/lua_api/l_item.cpp
@@ -435,7 +435,7 @@ void LuaItemStack::Register(lua_State *L)
}
const char LuaItemStack::className[] = "ItemStack";
-const luaL_reg LuaItemStack::methods[] = {
+const luaL_Reg LuaItemStack::methods[] = {
luamethod(LuaItemStack, is_empty),
luamethod(LuaItemStack, get_name),
luamethod(LuaItemStack, set_name),
diff --git a/src/script/lua_api/l_item.h b/src/script/lua_api/l_item.h
index ba8e8fddf..82244fc55 100644
--- a/src/script/lua_api/l_item.h
+++ b/src/script/lua_api/l_item.h
@@ -28,7 +28,7 @@ private:
ItemStack m_stack;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// Exported functions
diff --git a/src/script/lua_api/l_nodemeta.cpp b/src/script/lua_api/l_nodemeta.cpp
index 151b5cc18..9c5d6d805 100644
--- a/src/script/lua_api/l_nodemeta.cpp
+++ b/src/script/lua_api/l_nodemeta.cpp
@@ -346,7 +346,7 @@ void NodeMetaRef::Register(lua_State *L)
}
const char NodeMetaRef::className[] = "NodeMetaRef";
-const luaL_reg NodeMetaRef::methods[] = {
+const luaL_Reg NodeMetaRef::methods[] = {
luamethod(NodeMetaRef, get_string),
luamethod(NodeMetaRef, set_string),
luamethod(NodeMetaRef, get_int),
diff --git a/src/script/lua_api/l_nodemeta.h b/src/script/lua_api/l_nodemeta.h
index ac291c73b..3c167dbdd 100644
--- a/src/script/lua_api/l_nodemeta.h
+++ b/src/script/lua_api/l_nodemeta.h
@@ -35,7 +35,7 @@ private:
ServerEnvironment *m_env;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
static NodeMetaRef *checkobject(lua_State *L, int narg);
diff --git a/src/script/lua_api/l_nodetimer.cpp b/src/script/lua_api/l_nodetimer.cpp
index b1af0ee0f..003c0be70 100644
--- a/src/script/lua_api/l_nodetimer.cpp
+++ b/src/script/lua_api/l_nodetimer.cpp
@@ -162,7 +162,7 @@ void NodeTimerRef::Register(lua_State *L)
}
const char NodeTimerRef::className[] = "NodeTimerRef";
-const luaL_reg NodeTimerRef::methods[] = {
+const luaL_Reg NodeTimerRef::methods[] = {
luamethod(NodeTimerRef, start),
luamethod(NodeTimerRef, set),
luamethod(NodeTimerRef, stop),
diff --git a/src/script/lua_api/l_nodetimer.h b/src/script/lua_api/l_nodetimer.h
index 767ca5f18..bd16ae56f 100644
--- a/src/script/lua_api/l_nodetimer.h
+++ b/src/script/lua_api/l_nodetimer.h
@@ -31,7 +31,7 @@ private:
ServerEnvironment *m_env;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
static int gc_object(lua_State *L);
diff --git a/src/script/lua_api/l_noise.cpp b/src/script/lua_api/l_noise.cpp
index 0dc587b44..b7be0295b 100644
--- a/src/script/lua_api/l_noise.cpp
+++ b/src/script/lua_api/l_noise.cpp
@@ -135,7 +135,7 @@ void LuaPerlinNoise::Register(lua_State *L)
const char LuaPerlinNoise::className[] = "PerlinNoise";
-const luaL_reg LuaPerlinNoise::methods[] = {
+const luaL_Reg LuaPerlinNoise::methods[] = {
luamethod(LuaPerlinNoise, get2d),
luamethod(LuaPerlinNoise, get3d),
{0,0}
@@ -393,7 +393,7 @@ void LuaPerlinNoiseMap::Register(lua_State *L)
const char LuaPerlinNoiseMap::className[] = "PerlinNoiseMap";
-const luaL_reg LuaPerlinNoiseMap::methods[] = {
+const luaL_Reg LuaPerlinNoiseMap::methods[] = {
luamethod(LuaPerlinNoiseMap, get2dMap),
luamethod(LuaPerlinNoiseMap, get2dMap_flat),
luamethod(LuaPerlinNoiseMap, calc2dMap),
@@ -498,7 +498,7 @@ void LuaPseudoRandom::Register(lua_State *L)
const char LuaPseudoRandom::className[] = "PseudoRandom";
-const luaL_reg LuaPseudoRandom::methods[] = {
+const luaL_Reg LuaPseudoRandom::methods[] = {
luamethod(LuaPseudoRandom, next),
{0,0}
};
@@ -597,7 +597,7 @@ void LuaPcgRandom::Register(lua_State *L)
const char LuaPcgRandom::className[] = "PcgRandom";
-const luaL_reg LuaPcgRandom::methods[] = {
+const luaL_Reg LuaPcgRandom::methods[] = {
luamethod(LuaPcgRandom, next),
luamethod(LuaPcgRandom, rand_normal_dist),
{0,0}
@@ -711,7 +711,7 @@ void LuaSecureRandom::Register(lua_State *L)
}
const char LuaSecureRandom::className[] = "SecureRandom";
-const luaL_reg LuaSecureRandom::methods[] = {
+const luaL_Reg LuaSecureRandom::methods[] = {
luamethod(LuaSecureRandom, next_bytes),
{0,0}
};
diff --git a/src/script/lua_api/l_noise.h b/src/script/lua_api/l_noise.h
index 827e33ac8..6bf63bf8d 100644
--- a/src/script/lua_api/l_noise.h
+++ b/src/script/lua_api/l_noise.h
@@ -31,7 +31,7 @@ class LuaPerlinNoise : public ModApiBase {
private:
NoiseParams np;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// Exported functions
@@ -62,7 +62,7 @@ class LuaPerlinNoiseMap : public ModApiBase {
Noise *noise;
bool m_is3d;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// Exported functions
@@ -100,7 +100,7 @@ private:
PseudoRandom m_pseudo;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// Exported functions
@@ -131,7 +131,7 @@ private:
PcgRandom m_rnd;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// Exported functions
@@ -168,7 +168,7 @@ class LuaSecureRandom : public ModApiBase {
private:
static const size_t RAND_BUF_SIZE = 2048;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
u32 m_rand_idx;
char m_rand_buf[RAND_BUF_SIZE];
diff --git a/src/script/lua_api/l_object.cpp b/src/script/lua_api/l_object.cpp
index 5fe341b9b..4cd697283 100644
--- a/src/script/lua_api/l_object.cpp
+++ b/src/script/lua_api/l_object.cpp
@@ -1778,7 +1778,7 @@ void ObjectRef::Register(lua_State *L)
}
const char ObjectRef::className[] = "ObjectRef";
-const luaL_reg ObjectRef::methods[] = {
+const luaL_Reg ObjectRef::methods[] = {
// ServerActiveObject
luamethod(ObjectRef, remove),
luamethod(ObjectRef, getpos),
diff --git a/src/script/lua_api/l_object.h b/src/script/lua_api/l_object.h
index 914539e12..dea37c608 100644
--- a/src/script/lua_api/l_object.h
+++ b/src/script/lua_api/l_object.h
@@ -37,7 +37,7 @@ private:
ServerActiveObject *m_object;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
public:
static ObjectRef *checkobject(lua_State *L, int narg);
diff --git a/src/script/lua_api/l_settings.cpp b/src/script/lua_api/l_settings.cpp
index c3b4f755a..f516d508c 100644
--- a/src/script/lua_api/l_settings.cpp
+++ b/src/script/lua_api/l_settings.cpp
@@ -214,7 +214,7 @@ LuaSettings* LuaSettings::checkobject(lua_State* L, int narg)
}
const char LuaSettings::className[] = "Settings";
-const luaL_reg LuaSettings::methods[] = {
+const luaL_Reg LuaSettings::methods[] = {
luamethod(LuaSettings, get),
luamethod(LuaSettings, get_bool),
luamethod(LuaSettings, set),
diff --git a/src/script/lua_api/l_settings.h b/src/script/lua_api/l_settings.h
index bb42a598b..269e5060c 100644
--- a/src/script/lua_api/l_settings.h
+++ b/src/script/lua_api/l_settings.h
@@ -27,7 +27,7 @@ class Settings;
class LuaSettings : public ModApiBase {
private:
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
// garbage collector
static int gc_object(lua_State* L);
diff --git a/src/script/lua_api/l_vmanip.cpp b/src/script/lua_api/l_vmanip.cpp
index 96838fcca..062e11608 100644
--- a/src/script/lua_api/l_vmanip.cpp
+++ b/src/script/lua_api/l_vmanip.cpp
@@ -464,7 +464,7 @@ void LuaVoxelManip::Register(lua_State *L)
}
const char LuaVoxelManip::className[] = "VoxelManip";
-const luaL_reg LuaVoxelManip::methods[] = {
+const luaL_Reg LuaVoxelManip::methods[] = {
luamethod(LuaVoxelManip, read_from_map),
luamethod(LuaVoxelManip, get_data),
luamethod(LuaVoxelManip, set_data),
diff --git a/src/script/lua_api/l_vmanip.h b/src/script/lua_api/l_vmanip.h
index ce7248816..88e006298 100644
--- a/src/script/lua_api/l_vmanip.h
+++ b/src/script/lua_api/l_vmanip.h
@@ -37,7 +37,7 @@ private:
bool is_mapgen_vm;
static const char className[];
- static const luaL_reg methods[];
+ static const luaL_Reg methods[];
static int gc_object(lua_State *L);