From 7b10306ed5c87517800a6058ad84e27c866f81c6 Mon Sep 17 00:00:00 2001 From: jussi Date: Mon, 13 Nov 2023 23:42:58 +0200 Subject: Matrix library. --- src/lua_core.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/lua_core.c') diff --git a/src/lua_core.c b/src/lua_core.c index 843a38a..0eca9be 100644 --- a/src/lua_core.c +++ b/src/lua_core.c @@ -2693,6 +2693,19 @@ Matrix uluaGetMatrix( lua_State *L, int index ) { if ( lua_isnumber( L, -1 ) ) { m[i][j] = lua_tonumber( L, -1 ); } + /* Look for one depth further if Matrix given as class. */ + else if ( lua_istable( L, -1 ) ) { + int t3 = lua_gettop( L ), k = 0; + lua_pushnil( L ); + + while ( lua_next( L, t3 ) != 0 ) { + if ( lua_isnumber( L, -1 ) ) { + m[j][k] = lua_tonumber( L, -1 ); + } + k++; + lua_pop( L, 1 ); + } + } j++; lua_pop( L, 1 ); } -- cgit v1.2.3