Skip to content

Commit

Permalink
figuring out how to set vectors as well in transform component
Browse files Browse the repository at this point in the history
  • Loading branch information
tomheeleynz committed Jul 19, 2023
1 parent 6a47d80 commit c9b8461
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 14 deletions.
12 changes: 2 additions & 10 deletions Arcane/src/Arcane/Scripting/ScriptGlue.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,6 @@ namespace Arcane
{
CreateVec2Metatable(L);
CreateVec3Metatable(L);
CreateEntityIdMetatable(L);
CreateTransformComponentMetatable(L);
}

Expand Down Expand Up @@ -236,16 +235,13 @@ namespace Arcane
lua_settable(L, -3);
}

void ScriptGlue::CreateEntityIdMetatable(lua_State* L)
{
}

void ScriptGlue::CreateTransformComponentMetatable(lua_State* L)
{
luaL_newmetatable(L, "TransformComponentMetatable");

auto TransformComponentIndex = [](lua_State* L) -> int {
TransformComponent* transformComponent = (TransformComponent*)lua_touserdata(L, -2);
TransformComponent** transformComponentPtr = (TransformComponent**)lua_touserdata(L, -2);
TransformComponent* transformComponent = *transformComponentPtr;
const char* index = lua_tostring(L, -1);

if (strcmp(index, "translation") == 0) {
Expand Down Expand Up @@ -291,10 +287,6 @@ namespace Arcane
lua_setfield(L, -2, "new");
}

void ScriptGlue::CreateEntityIdTable(lua_State* L)
{
}

void ScriptGlue::CreateVec2Table(lua_State* L)
{
lua_newtable(L);
Expand Down
2 changes: 0 additions & 2 deletions Arcane/src/Arcane/Scripting/ScriptGlue.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,10 @@ namespace Arcane
private:
static void CreateVec2Metatable(lua_State* L);
static void CreateVec3Metatable(lua_State* L);
static void CreateEntityIdMetatable(lua_State* L);
static void CreateTransformComponentMetatable(lua_State* L);
private:
static void CreateVec2Table(lua_State* L);
static void CreateVec3Table(lua_State* L);
static void CreateEntityIdTable(lua_State* L);
static void CreateTransformComponentTable(lua_State* L);
};
}
4 changes: 2 additions & 2 deletions Arcane/src/Arcane/Scripting/ScriptingEngine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ namespace Arcane
if (componentType == "Transform")
{
TransformComponent& transformComponent = entity.GetComponent<TransformComponent>();
TransformComponent* transformUserData = (TransformComponent*)lua_newuserdata(L, sizeof(TransformComponent));
*transformUserData = transformComponent;
TransformComponent** transformUserData = (TransformComponent**)lua_newuserdata(L, sizeof(TransformComponent));
*transformUserData = &transformComponent;
PrintStack(L);

luaL_getmetatable(L, "TransformComponentMetatable");
Expand Down

0 comments on commit c9b8461

Please sign in to comment.