Rudimentary map wrapping added
This commit is contained in:
parent
652ef21a50
commit
a28082cae3
7 changed files with 26 additions and 1 deletions
|
@ -236,6 +236,7 @@ struct TilemapPrivate
|
|||
Table *mapData;
|
||||
Table *priorities;
|
||||
bool visible;
|
||||
bool wrapping;
|
||||
Vec2i origin;
|
||||
|
||||
Vec2i dispPos;
|
||||
|
@ -328,6 +329,7 @@ struct TilemapPrivate
|
|||
mapData(0),
|
||||
priorities(0),
|
||||
visible(true),
|
||||
wrapping(false),
|
||||
flashAlphaIdx(0),
|
||||
atlasSizeDirty(false),
|
||||
atlasDirty(false),
|
||||
|
@ -656,7 +658,7 @@ struct TilemapPrivate
|
|||
{
|
||||
int ox = x + viewpPos.x;
|
||||
int oy = y + viewpPos.y;
|
||||
if (ox < 0 || oy < 0 || ox >= mapData->xSize() || oy >= mapData->ySize())
|
||||
if (!wrapping && (ox < 0 || oy < 0 || ox >= mapData->xSize() || oy >= mapData->ySize()))
|
||||
return;
|
||||
|
||||
int tileInd =
|
||||
|
@ -1149,6 +1151,7 @@ DEF_ATTR_RD_SIMPLE(Tilemap, MapData, Table*, p->mapData)
|
|||
DEF_ATTR_RD_SIMPLE(Tilemap, FlashData, Table*, p->flashMap.getData())
|
||||
DEF_ATTR_RD_SIMPLE(Tilemap, Priorities, Table*, p->priorities)
|
||||
DEF_ATTR_RD_SIMPLE(Tilemap, Visible, bool, p->visible)
|
||||
DEF_ATTR_SIMPLE(Tilemap, Wrapping, bool, p->wrapping)
|
||||
DEF_ATTR_RD_SIMPLE(Tilemap, OX, int, p->origin.x)
|
||||
DEF_ATTR_RD_SIMPLE(Tilemap, OY, int, p->origin.y)
|
||||
|
||||
|
|
|
@ -63,6 +63,7 @@ public:
|
|||
DECL_ATTR( FlashData, Table* )
|
||||
DECL_ATTR( Priorities, Table* )
|
||||
DECL_ATTR( Visible, bool )
|
||||
DECL_ATTR( Wrapping, bool )
|
||||
DECL_ATTR( OX, int )
|
||||
DECL_ATTR( OY, int )
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue