diff options
author | Elias Fleckenstein <54945686+EliasFleckenstein03@users.noreply.github.com> | 2020-11-05 14:08:25 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-05 14:08:25 +0100 |
commit | 91ad0d049706ed2892ba728cb8cad48480908027 (patch) | |
tree | 29dc1b440ab3ce2746fcf9135c7e0969ae002449 /src/script/lua_api | |
parent | 6bda686c04e602c7e50d4838632d92c55b228c36 (diff) | |
parent | 1bab49049bfc4bf89b4ee69fe734e2a79de0eb9f (diff) | |
download | dragonfireclient-91ad0d049706ed2892ba728cb8cad48480908027.tar.xz |
Merge pull request #10 from corarona/master
lua api: set_pitch and make_screenshot
Diffstat (limited to 'src/script/lua_api')
-rw-r--r-- | src/script/lua_api/l_client.cpp | 10 | ||||
-rw-r--r-- | src/script/lua_api/l_client.h | 3 | ||||
-rw-r--r-- | src/script/lua_api/l_localplayer.cpp | 26 | ||||
-rw-r--r-- | src/script/lua_api/l_localplayer.h | 6 |
4 files changed, 45 insertions, 0 deletions
diff --git a/src/script/lua_api/l_client.cpp b/src/script/lua_api/l_client.cpp index 9961471ff..6c4878873 100644 --- a/src/script/lua_api/l_client.cpp +++ b/src/script/lua_api/l_client.cpp @@ -524,6 +524,14 @@ int ModApiClient::l_get_objects_inside_radius(lua_State *L) return 1; } +//make_screenshot() +int ModApiClient::l_make_screenshot(lua_State *L) +{ + getClient(L)->makeScreenshot(); + lua_pushboolean(L, true); + return 1; +} + void ModApiClient::Initialize(lua_State *L, int top) { API_FCT(get_current_modname); @@ -558,4 +566,6 @@ void ModApiClient::Initialize(lua_State *L, int top) API_FCT(set_keypress); API_FCT(drop_selected_item); API_FCT(get_objects_inside_radius); + API_FCT(make_screenshot); + } diff --git a/src/script/lua_api/l_client.h b/src/script/lua_api/l_client.h index 5863e5717..1cac0ec1f 100644 --- a/src/script/lua_api/l_client.h +++ b/src/script/lua_api/l_client.h @@ -126,6 +126,9 @@ private: // get_objects_inside_radius(pos, radius) static int l_get_objects_inside_radius(lua_State *L); + //make_screenshot() + static int l_make_screenshot(lua_State *L); + public: static void Initialize(lua_State *L, int top); }; diff --git a/src/script/lua_api/l_localplayer.cpp b/src/script/lua_api/l_localplayer.cpp index e40dd7b37..8cd5d01e4 100644 --- a/src/script/lua_api/l_localplayer.cpp +++ b/src/script/lua_api/l_localplayer.cpp @@ -95,6 +95,30 @@ int LuaLocalPlayer::l_set_yaw(lua_State *L) return 0; } +int LuaLocalPlayer::l_get_pitch(lua_State *L) +{ + LocalPlayer *player = getobject(L, 1); + + lua_pushinteger(L, player->getPitch()); + return 1; +} + + +int LuaLocalPlayer::l_set_pitch(lua_State *L) +{ + LocalPlayer *player = getobject(L, 1); + + if (lua_isnumber(L, 2)) { + int pitch = lua_tonumber(L, 2); + player->setPitch(pitch); + g_game->cam_view.camera_pitch = pitch; + g_game->cam_view_target.camera_pitch = pitch; + } + + return 0; +} + + int LuaLocalPlayer::l_get_hp(lua_State *L) { LocalPlayer *player = getobject(L, 1); @@ -527,6 +551,8 @@ const luaL_Reg LuaLocalPlayer::methods[] = { luamethod(LuaLocalPlayer, set_velocity), luamethod(LuaLocalPlayer, get_yaw), luamethod(LuaLocalPlayer, set_yaw), + luamethod(LuaLocalPlayer, get_pitch), + luamethod(LuaLocalPlayer, set_pitch), luamethod(LuaLocalPlayer, get_hp), luamethod(LuaLocalPlayer, get_name), luamethod(LuaLocalPlayer, get_wield_index), diff --git a/src/script/lua_api/l_localplayer.h b/src/script/lua_api/l_localplayer.h index 8daa901e0..1d7f9fcbd 100644 --- a/src/script/lua_api/l_localplayer.h +++ b/src/script/lua_api/l_localplayer.h @@ -44,6 +44,12 @@ private: // set_yaw(self, yaw) static int l_set_yaw(lua_State *L); + // get_pitch(self) + static int l_get_pitch(lua_State *L); + + // set_pitch(self,pitch) + static int l_set_pitch(lua_State *L); + // get_hp(self) static int l_get_hp(lua_State *L); |