mirror of
https://github.com/AquariaOSE/Aquaria.git
synced 2025-02-04 02:24:00 +00:00
another temp commit
This commit is contained in:
parent
ce4ca7f794
commit
e357a22784
3 changed files with 52 additions and 2 deletions
|
@ -9566,6 +9566,8 @@ luaFunc(createQuadGrid)
|
|||
luaFunc(quadgrid_numPoints)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
if(!q)
|
||||
luaReturnNil();
|
||||
lua_pushinteger(L, q->pointsX());
|
||||
lua_pushinteger(L, q->pointsY());
|
||||
return 2;
|
||||
|
@ -9574,6 +9576,8 @@ luaFunc(quadgrid_numPoints)
|
|||
luaFunc(quadgrid_setPoint)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
if(!q)
|
||||
luaReturnNil();
|
||||
size_t ix = luaL_checkinteger(L, 2);
|
||||
size_t iy = luaL_checkinteger(L, 3);
|
||||
if(ix < q->pointsX() && iy < q->pointsY())
|
||||
|
@ -9593,9 +9597,44 @@ luaFunc(quadgrid_setPoint)
|
|||
return luaL_error(L, "out of range");
|
||||
}
|
||||
|
||||
luaFunc(quadgrid_texOffset)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
if(q)
|
||||
interpolateVec2(L, q->texOffset, 2);
|
||||
luaReturnNil();
|
||||
}
|
||||
|
||||
q;
|
||||
// TODO: interp texOffset, setPauseLevel
|
||||
luaFunc(quadgrid_getTexOffset)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
Vector v;
|
||||
if(q)
|
||||
v = q->texOffset;
|
||||
luaReturnVec2(v.x, v.y);
|
||||
}
|
||||
|
||||
luaFunc(quadgrid_setPauseLevel)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
if(q)
|
||||
q->pauseLevel = lua_tointeger(L, 2);
|
||||
luaReturnNil();
|
||||
}
|
||||
|
||||
luaFunc(quadgrid_getPauseLevel)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
luaReturnInt(q ? q->pauseLevel : 0);
|
||||
}
|
||||
|
||||
luaFunc(quadgrid_resetUV)
|
||||
{
|
||||
QuadGrid *q = getQuadGrid(L);
|
||||
if(q)
|
||||
q->resetUV();
|
||||
luaReturnNil();
|
||||
}
|
||||
|
||||
// ---------- Minimap related ------------------
|
||||
|
||||
|
@ -10841,6 +10880,15 @@ static const struct {
|
|||
|
||||
luaRegister(loadXMLTable),
|
||||
|
||||
luaRegister(createQuadGrid),
|
||||
luaRegister(quadgrid_numPoints),
|
||||
luaRegister(quadgrid_setPoint),
|
||||
luaRegister(quadgrid_texOffset),
|
||||
luaRegister(quadgrid_getTexOffset),
|
||||
luaRegister(quadgrid_setPauseLevel),
|
||||
luaRegister(quadgrid_getPauseLevel),
|
||||
luaRegister(quadgrid_resetUV),
|
||||
|
||||
#undef MK_FUNC
|
||||
#undef MK_ALIAS
|
||||
#define MK_FUNC(base, getter, prefix, suffix) luaRegister(prefix##_##suffix),
|
||||
|
|
|
@ -8,6 +8,7 @@ QuadGrid::QuadGrid(size_t w, size_t h)
|
|||
{
|
||||
addType(SCO_QUAD_GRID);
|
||||
_points.resize((w+1) * (h+1));
|
||||
resetUV();
|
||||
}
|
||||
|
||||
QuadGrid* QuadGrid::New(size_t w, size_t h)
|
||||
|
|
|
@ -46,6 +46,7 @@ public:
|
|||
virtual void onUpdate(float dt);
|
||||
|
||||
void resetUV(float xmul = 1, float ymul = 1);
|
||||
void resetPos(float xmul = 1, float ymul = 1);
|
||||
|
||||
inline size_t quadsX() const { return _w; }
|
||||
inline size_t quadsY() const { return _h; }
|
||||
|
|
Loading…
Add table
Reference in a new issue