aboutsummaryrefslogtreecommitdiff
path: root/src/lua/modules/graphics/je_lua_graphics.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lua/modules/graphics/je_lua_graphics.cpp')
-rw-r--r--src/lua/modules/graphics/je_lua_graphics.cpp51
1 files changed, 17 insertions, 34 deletions
diff --git a/src/lua/modules/graphics/je_lua_graphics.cpp b/src/lua/modules/graphics/je_lua_graphics.cpp
index 4ebd1ee..cc67055 100644
--- a/src/lua/modules/graphics/je_lua_graphics.cpp
+++ b/src/lua/modules/graphics/je_lua_graphics.cpp
@@ -208,8 +208,7 @@ namespace JinEngine
return 1;
}
}
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Bitmap);
- proxy->bind(new Shared<Bitmap>(bitmap, Jin_Lua_Bitmap));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Bitmap, new Shared<Bitmap>(bitmap, Jin_Lua_Bitmap));
return 1;
}
@@ -229,8 +228,7 @@ namespace JinEngine
const char* path = luax_checkstring(L, 1);
texture = Texture::createTexture(path);
}
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Texture);
- proxy->bind(new Shared<Texture>(texture, Jin_Lua_Texture));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Texture, new Shared<Texture>(texture, Jin_Lua_Texture));
return 1;
}
@@ -244,8 +242,7 @@ namespace JinEngine
luax_pushnil(L);
return 1;
}
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Shader);
- proxy->bind(new Shared<Shader>(jsl, Jin_Lua_Shader));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Shader, new Shared<Shader>(jsl, Jin_Lua_Shader));
return 1;
}
@@ -268,8 +265,7 @@ namespace JinEngine
luax_pushnil(L);
return 1;
}
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Shader);
- proxy->bind(new Shared<Shader>(jsl, Jin_Lua_Shader));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Shader, new Shared<Shader>(jsl, Jin_Lua_Shader));
return 1;
}
@@ -277,9 +273,8 @@ namespace JinEngine
{
int w = luax_checknumber(L, 1);
int h = luax_checknumber(L, 2);
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Canvas);
Canvas* cvs = Canvas::createCanvas(w, h);
- proxy->bind(new Shared<Canvas>(cvs, Jin_Lua_Canvas));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Canvas, new Shared<Canvas>(cvs, Jin_Lua_Canvas));
return 1;
}
@@ -676,7 +671,6 @@ namespace JinEngine
LUA_IMPLEMENT int l_newTTFData(lua_State* L)
{
- Proxy* proxy = luax_newinstance(L, Jin_Lua_TTFData);
TTFData* fd = nullptr;
{
const char* path = luax_checkstring(L, 1);
@@ -691,7 +685,7 @@ namespace JinEngine
fs->read(path, b);
fd = TTFData::createTTFData(&b, b.size());
}
- proxy->bind(new Shared<TTFData>(fd, Jin_Lua_TTFData));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_TTFData, new Shared<TTFData>(fd, Jin_Lua_TTFData));
return 1;
}
@@ -714,8 +708,7 @@ namespace JinEngine
unsigned length;
const char* data = luax_checklstring(L, 1, &length);
Text* text = new Text(encode, data, length);
- Proxy* proxy = luax_newinstance(L, Jin_Lua_Text);
- proxy->bind(new Shared<Text>(text, Jin_Lua_Text));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_Text, new Shared<Text>(text, Jin_Lua_Text));
return 1;
}
@@ -743,8 +736,7 @@ namespace JinEngine
quad.h = luax_rawgetnumberthenpop(L, 2, 4);
int o = luax_checkinteger(L, 3);
Origin origin = static_cast<Origin>(o);
- Proxy* p = luax_newinstance(L, Jin_Lua_Sprite);
- p->bind(new Shared<Sprite>(new Sprite(graphic, quad, origin), Jin_Lua_Sprite));
+ Proxy* p = luax_newinstance(L, Jin_Lua_Sprite, new Shared<Sprite>(new Sprite(graphic, quad, origin), Jin_Lua_Sprite));
}
else if (n == 4)
{
@@ -755,22 +747,19 @@ namespace JinEngine
quad.h = luax_rawgetnumberthenpop(L, 2, 4);
int ox = luax_checkinteger(L, 3);
int oy = luax_checkinteger(L, 4);
- Proxy* p = luax_newinstance(L, Jin_Lua_Sprite);
- p->bind(new Shared<Sprite>(new Sprite(graphic, quad, ox, oy), Jin_Lua_Sprite));
+ Proxy* p = luax_newinstance(L, Jin_Lua_Sprite, new Shared<Sprite>(new Sprite(graphic, quad, ox, oy), Jin_Lua_Sprite));
}
else if (n == 2)
{
int o = luax_checkinteger(L, 2);
Origin origin = static_cast<Origin>(o);
- Proxy* p = luax_newinstance(L, Jin_Lua_Sprite);
- p->bind(new Shared<Sprite>(new Sprite(graphic, origin), Jin_Lua_Sprite));
+ Proxy* p = luax_newinstance(L, Jin_Lua_Sprite, new Shared<Sprite>(new Sprite(graphic, origin), Jin_Lua_Sprite));
}
else if (n == 3)
{
int ox = luax_checkinteger(L, 2);
int oy = luax_checkinteger(L, 3);
- Proxy* p = luax_newinstance(L, Jin_Lua_Sprite);
- p->bind(new Shared<Sprite>(new Sprite(graphic, ox, oy), Jin_Lua_Sprite));
+ Proxy* p = luax_newinstance(L, Jin_Lua_Sprite, new Shared<Sprite>(new Sprite(graphic, ox, oy), Jin_Lua_Sprite));
}
else
{
@@ -791,12 +780,11 @@ namespace JinEngine
pxyGraphic = (Proxy*)luax_checktype(L, 1, Jin_Lua_Canvas);
if (pxyGraphic != nullptr)
{
- Proxy* pxySSheet = luax_newinstance(L, Jin_Lua_SpriteSheet);
Graphic* graphic = pxyGraphic->getObject<Graphic>();
Shared<SpriteSheet>* shrSSheet = new Shared<SpriteSheet>(new SpriteSheet(graphic), Jin_Lua_SpriteSheet);
Shared<Graphic>& shrGraphic = pxyGraphic->getShared<Graphic>();
shrSSheet->setDependency((int)SpriteSheetDependency::DEP_GRAPHIC, &shrGraphic);
- pxySSheet->bind(shrSSheet);
+ Proxy* pxySSheet = luax_newinstance(L, Jin_Lua_SpriteSheet, shrSSheet);
return 1;
}
else
@@ -830,8 +818,7 @@ namespace JinEngine
(*shrAnimation)->setLoop(loop);
(*shrAnimation)->setSpeed(speed);
}
- Proxy* pxyAnimation = luax_newinstance(L, Jin_Lua_Animation);
- pxyAnimation->bind(shrAnimation);
+ Proxy* pxyAnimation = luax_newinstance(L, Jin_Lua_Animation, shrAnimation);
return 1;
}
@@ -847,8 +834,7 @@ namespace JinEngine
(*shrAniamtor)->setAnimation(shrAnimtion.getObject());
(*shrAniamtor).setDependency((int)AnimatorDependency::DEP_ANIMATION, &shrAnimtion);
}
- Proxy* pxyAnimator = luax_newinstance(L, Jin_Lua_Animator);
- pxyAnimator->bind(shrAniamtor);
+ Proxy* pxyAnimator = luax_newinstance(L, Jin_Lua_Animator, shrAniamtor);
return 1;
}
@@ -899,8 +885,7 @@ namespace JinEngine
// Delete temporary text.
delete text;
}
- Proxy* proxy = luax_newinstance(L, Jin_Lua_TextureFont);
- proxy->bind(new Shared<TextureFont>(textureFont, Jin_Lua_TextureFont));
+ Proxy* proxy = luax_newinstance(L, Jin_Lua_TextureFont, new Shared<TextureFont>(textureFont, Jin_Lua_TextureFont));
return 1;
}
@@ -985,7 +970,7 @@ namespace JinEngine
luaopen_Animation(L);
luaopen_Animator(L);
- luaL_Reg f[] = {
+ luaL_Reg methods[] = {
/* window */
{ "init", l_init },
{ "setTitle", l_setTitle },
@@ -1041,10 +1026,8 @@ namespace JinEngine
{ "scale", l_scale },
{ 0, 0 }
};
-
// Load whole lib.
- luax_newlib(L, f);
-
+ luax_newlib(L, methods);
return 1;
}