diff options
Diffstat (limited to 'src/lua/modules')
-rw-r--r-- | src/lua/modules/graphics/je_lua_graphics.cpp | 28 | ||||
-rw-r--r-- | src/lua/modules/graphics/je_lua_sprite.cpp | 13 |
2 files changed, 21 insertions, 20 deletions
diff --git a/src/lua/modules/graphics/je_lua_graphics.cpp b/src/lua/modules/graphics/je_lua_graphics.cpp index ce569d0..900b26b 100644 --- a/src/lua/modules/graphics/je_lua_graphics.cpp +++ b/src/lua/modules/graphics/je_lua_graphics.cpp @@ -17,6 +17,7 @@ #include "je_lua_text.h" #include "je_lua_texture_font.h" #include "je_lua_page.h" +#include "je_lua_sprite.h" using namespace std; using namespace JinEngine; @@ -385,16 +386,27 @@ namespace JinEngine font->render(page, x, y); } + LUA_IMPLEMENT void l_draw_sprite(lua_State* L) + { + if (!luax_istype(L, 1, Jin_Lua_Sprite)) + return; + Proxy* pxySprite = (Proxy*)luax_toudata(L, 1); + Sprite* spr = pxySprite->getObject<Sprite>(); + spr->render(); + } + LUA_IMPLEMENT int l_draw(lua_State* L) { - if (luax_istype(L, 1, Jin_Lua_Texture)) - l_draw_texture(L); - else if (luax_istype(L, 1, Jin_Lua_Canvas)) - l_draw_canvas(L); - else if (luax_istype(L, 1, Jin_Lua_Text)) - l_draw_text(L); - else if (luax_istype(L, 1, Jin_Lua_Page)) - l_draw_page(L); + if (luax_istype(L, 1, Jin_Lua_Texture)) + l_draw_texture(L); + else if (luax_istype(L, 1, Jin_Lua_Canvas)) + l_draw_canvas(L); + else if (luax_istype(L, 1, Jin_Lua_Text)) + l_draw_text(L); + else if (luax_istype(L, 1, Jin_Lua_Page)) + l_draw_page(L); + else if (luax_istype(L, 1, Jin_Lua_Sprite)) + l_draw_sprite(L); else { luax_typerror(L, 1, "texture or canvas"); diff --git a/src/lua/modules/graphics/je_lua_sprite.cpp b/src/lua/modules/graphics/je_lua_sprite.cpp index 97128a9..76d6c1f 100644 --- a/src/lua/modules/graphics/je_lua_sprite.cpp +++ b/src/lua/modules/graphics/je_lua_sprite.cpp @@ -91,16 +91,6 @@ namespace JinEngine return 0; } - LUA_IMPLEMENT int l_setShader(lua_State* L) - { - SharedSprite sprite = checkSprite(L); - Proxy* proxy = (Proxy*)luax_checktype(L, 2, Jin_Lua_Shader); - Shader* shader = proxy->getObject<Shader>(); - sprite->setShader(shader); - sprite.setDependency((int)SpriteDependency::DEP_SHADER, &proxy->getShared<Shader>()); - return 0; - } - LUA_IMPLEMENT int l_setGraphic(lua_State* L) { SharedSprite sprite = checkSprite(L); @@ -164,7 +154,7 @@ namespace JinEngine LUA_IMPLEMENT int l_getOrigin(lua_State* L) { SharedSprite sprite = checkSprite(L); - const Math::Vector2<int>& origin = sprite->getOrigin(); + const Math::Vector2<float>& origin = sprite->getOrigin(); luax_pushinteger(L, origin.x); luax_pushinteger(L, origin.y); return 2; @@ -241,7 +231,6 @@ namespace JinEngine { "setPosition", l_setPosition }, { "setScale", l_setScale }, { "setColor", l_setColor }, - { "setShader", l_setShader }, { "setGraphic", l_setGraphic }, { "move", l_move }, { "scale", l_scale }, |