#include extern "C" { #include #include #include } #include #include #include "iguiutil.hpp" int lua_popvector2(lua_State* L,int pos, float* x,float* y){ float p[2]; for(int i = 0; i < 2; i++){ lua_pushnumber(L,i+1); lua_gettable(L,pos); p[i] = (float) lua_tonumber(L,-1); lua_pop(L,1); } printf("Found vector (%f,%f)\n",p[0],p[1]); *x = p[0]; *y = p[1]; return 0; } int lua_popvector2i(lua_State* L,int pos, int* x,int* y){ int p[2]; for(int i = 0; i < 2; i++){ lua_pushnumber(L,i+1); lua_gettable(L,pos); p[i] = (int) lua_tonumber(L,-1); lua_pop(L,1); } printf("Found vector (%d,%d)\n",p[0],p[1]); *x = p[0]; *y = p[1]; return 0; } int lua_popscolor(lua_State* L, int pos, irr::video::SColor* c){ int p[4]; for(int i = 0; i < 4; i++){ lua_pushnumber(L,i+1); lua_gettable(L,pos); p[i] = (int) lua_tonumber(L,-1); lua_pop(L,1); } c->setRed(p[0]); c->setBlue(p[1]); c->setGreen(p[2]); c->setAlpha(p[3]); return 0; }