Tilemap(VX): Factor out common code into tilemap-common.h
Renamed flashmap.h to tilemap-common.h as it already contained shared functions.
This commit is contained in:
parent
faef0e8503
commit
60f101f2e6
|
@ -124,7 +124,7 @@ set(MAIN_HEADERS
|
||||||
src/glstate.h
|
src/glstate.h
|
||||||
src/quad.h
|
src/quad.h
|
||||||
src/tilemap.h
|
src/tilemap.h
|
||||||
src/flashmap.h
|
src/tilemap-common.h
|
||||||
src/graphics.h
|
src/graphics.h
|
||||||
src/gl-debug.h
|
src/gl-debug.h
|
||||||
src/global-ibo.h
|
src/global-ibo.h
|
||||||
|
|
2
mkxp.pro
2
mkxp.pro
|
@ -103,7 +103,7 @@ HEADERS += \
|
||||||
src/glstate.h \
|
src/glstate.h \
|
||||||
src/quad.h \
|
src/quad.h \
|
||||||
src/tilemap.h \
|
src/tilemap.h \
|
||||||
src/flashmap.h \
|
src/tilemap-common.h \
|
||||||
src/graphics.h \
|
src/graphics.h \
|
||||||
src/gl-debug.h \
|
src/gl-debug.h \
|
||||||
src/global-ibo.h \
|
src/global-ibo.h \
|
||||||
|
|
|
@ -4,196 +4,196 @@ extern const StaticRect autotileRects[] =
|
||||||
{
|
{
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 32.5, 80.5, 15, 15 },
|
{ 32.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 48.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 64.5, 15, 15 },
|
{ 48.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 32.5, 64.5, 15, 15 },
|
{ 32.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 0.5, 64.5, 15, 15 },
|
{ 0.5, 64.5, 15, 15 },
|
||||||
{ 16.5, 64.5, 15, 15 },
|
{ 16.5, 64.5, 15, 15 },
|
||||||
{ 16.5, 80.5, 15, 15 },
|
|
||||||
{ 0.5, 80.5, 15, 15 },
|
{ 0.5, 80.5, 15, 15 },
|
||||||
|
{ 16.5, 80.5, 15, 15 },
|
||||||
{ 0.5, 64.5, 15, 15 },
|
{ 0.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 16.5, 80.5, 15, 15 },
|
|
||||||
{ 0.5, 80.5, 15, 15 },
|
{ 0.5, 80.5, 15, 15 },
|
||||||
|
{ 16.5, 80.5, 15, 15 },
|
||||||
{ 0.5, 64.5, 15, 15 },
|
{ 0.5, 64.5, 15, 15 },
|
||||||
{ 16.5, 64.5, 15, 15 },
|
{ 16.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 0.5, 80.5, 15, 15 },
|
{ 0.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 0.5, 64.5, 15, 15 },
|
{ 0.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 0.5, 80.5, 15, 15 },
|
{ 0.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 32.5, 15, 15 },
|
|
||||||
{ 48.5, 32.5, 15, 15 },
|
|
||||||
{ 48.5, 48.5, 15, 15 },
|
|
||||||
{ 32.5, 48.5, 15, 15 },
|
|
||||||
{ 32.5, 32.5, 15, 15 },
|
|
||||||
{ 48.5, 32.5, 15, 15 },
|
|
||||||
{ 80.5, 16.5, 15, 15 },
|
{ 80.5, 16.5, 15, 15 },
|
||||||
|
{ 32.5, 32.5, 15, 15 },
|
||||||
|
{ 48.5, 32.5, 15, 15 },
|
||||||
{ 32.5, 48.5, 15, 15 },
|
{ 32.5, 48.5, 15, 15 },
|
||||||
{ 32.5, 32.5, 15, 15 },
|
|
||||||
{ 48.5, 32.5, 15, 15 },
|
|
||||||
{ 48.5, 48.5, 15, 15 },
|
{ 48.5, 48.5, 15, 15 },
|
||||||
{ 64.5, 16.5, 15, 15 },
|
|
||||||
{ 32.5, 32.5, 15, 15 },
|
{ 32.5, 32.5, 15, 15 },
|
||||||
{ 48.5, 32.5, 15, 15 },
|
{ 48.5, 32.5, 15, 15 },
|
||||||
|
{ 32.5, 48.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
{ 80.5, 16.5, 15, 15 },
|
||||||
|
{ 32.5, 32.5, 15, 15 },
|
||||||
|
{ 48.5, 32.5, 15, 15 },
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 48.5, 48.5, 15, 15 },
|
||||||
|
{ 32.5, 32.5, 15, 15 },
|
||||||
|
{ 48.5, 32.5, 15, 15 },
|
||||||
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 64.5, 15, 15 },
|
{ 64.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 64.5, 15, 15 },
|
{ 80.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 80.5, 15, 15 },
|
{ 64.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 64.5, 15, 15 },
|
{ 64.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 64.5, 15, 15 },
|
{ 80.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 64.5, 15, 15 },
|
{ 80.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 80.5, 15, 15 },
|
{ 64.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 80.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 64.5, 15, 15 },
|
{ 80.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 80.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 96.5, 15, 15 },
|
{ 32.5, 96.5, 15, 15 },
|
||||||
{ 48.5, 96.5, 15, 15 },
|
{ 48.5, 96.5, 15, 15 },
|
||||||
{ 48.5, 112.5, 15, 15 },
|
|
||||||
{ 32.5, 112.5, 15, 15 },
|
{ 32.5, 112.5, 15, 15 },
|
||||||
|
{ 48.5, 112.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 96.5, 15, 15 },
|
{ 48.5, 96.5, 15, 15 },
|
||||||
{ 48.5, 112.5, 15, 15 },
|
|
||||||
{ 32.5, 112.5, 15, 15 },
|
{ 32.5, 112.5, 15, 15 },
|
||||||
|
{ 48.5, 112.5, 15, 15 },
|
||||||
{ 32.5, 96.5, 15, 15 },
|
{ 32.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 112.5, 15, 15 },
|
|
||||||
{ 32.5, 112.5, 15, 15 },
|
{ 32.5, 112.5, 15, 15 },
|
||||||
|
{ 48.5, 112.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 48.5, 112.5, 15, 15 },
|
|
||||||
{ 32.5, 112.5, 15, 15 },
|
{ 32.5, 112.5, 15, 15 },
|
||||||
|
{ 48.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 64.5, 15, 15 },
|
{ 0.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 64.5, 15, 15 },
|
{ 80.5, 64.5, 15, 15 },
|
||||||
{ 80.5, 80.5, 15, 15 },
|
|
||||||
{ 0.5, 80.5, 15, 15 },
|
{ 0.5, 80.5, 15, 15 },
|
||||||
|
{ 80.5, 80.5, 15, 15 },
|
||||||
{ 32.5, 32.5, 15, 15 },
|
{ 32.5, 32.5, 15, 15 },
|
||||||
{ 48.5, 32.5, 15, 15 },
|
{ 48.5, 32.5, 15, 15 },
|
||||||
{ 48.5, 112.5, 15, 15 },
|
|
||||||
{ 32.5, 112.5, 15, 15 },
|
{ 32.5, 112.5, 15, 15 },
|
||||||
|
{ 48.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 32.5, 15, 15 },
|
{ 0.5, 32.5, 15, 15 },
|
||||||
{ 16.5, 32.5, 15, 15 },
|
{ 16.5, 32.5, 15, 15 },
|
||||||
|
{ 0.5, 48.5, 15, 15 },
|
||||||
{ 16.5, 48.5, 15, 15 },
|
{ 16.5, 48.5, 15, 15 },
|
||||||
{ 0.5, 48.5, 15, 15 },
|
|
||||||
{ 0.5, 32.5, 15, 15 },
|
{ 0.5, 32.5, 15, 15 },
|
||||||
{ 16.5, 32.5, 15, 15 },
|
{ 16.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 16.5, 15, 15 },
|
|
||||||
{ 0.5, 48.5, 15, 15 },
|
{ 0.5, 48.5, 15, 15 },
|
||||||
|
{ 80.5, 16.5, 15, 15 },
|
||||||
{ 64.5, 32.5, 15, 15 },
|
{ 64.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 32.5, 15, 15 },
|
{ 80.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 48.5, 15, 15 },
|
|
||||||
{ 64.5, 48.5, 15, 15 },
|
{ 64.5, 48.5, 15, 15 },
|
||||||
|
{ 80.5, 48.5, 15, 15 },
|
||||||
{ 64.5, 32.5, 15, 15 },
|
{ 64.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 32.5, 15, 15 },
|
{ 80.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 48.5, 15, 15 },
|
|
||||||
{ 64.5, 16.5, 15, 15 },
|
{ 64.5, 16.5, 15, 15 },
|
||||||
|
{ 80.5, 48.5, 15, 15 },
|
||||||
{ 64.5, 96.5, 15, 15 },
|
{ 64.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 96.5, 15, 15 },
|
{ 80.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 112.5, 15, 15 },
|
|
||||||
{ 64.5, 112.5, 15, 15 },
|
{ 64.5, 112.5, 15, 15 },
|
||||||
|
{ 80.5, 112.5, 15, 15 },
|
||||||
{ 64.5, 0.5, 15, 15 },
|
{ 64.5, 0.5, 15, 15 },
|
||||||
{ 80.5, 96.5, 15, 15 },
|
{ 80.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 112.5, 15, 15 },
|
|
||||||
{ 64.5, 112.5, 15, 15 },
|
{ 64.5, 112.5, 15, 15 },
|
||||||
|
{ 80.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 96.5, 15, 15 },
|
{ 0.5, 96.5, 15, 15 },
|
||||||
{ 16.5, 96.5, 15, 15 },
|
{ 16.5, 96.5, 15, 15 },
|
||||||
{ 16.5, 112.5, 15, 15 },
|
|
||||||
{ 0.5, 112.5, 15, 15 },
|
{ 0.5, 112.5, 15, 15 },
|
||||||
|
{ 16.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 96.5, 15, 15 },
|
{ 0.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 0.5, 15, 15 },
|
{ 80.5, 0.5, 15, 15 },
|
||||||
{ 16.5, 112.5, 15, 15 },
|
|
||||||
{ 0.5, 112.5, 15, 15 },
|
{ 0.5, 112.5, 15, 15 },
|
||||||
|
{ 16.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 32.5, 15, 15 },
|
{ 0.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 32.5, 15, 15 },
|
{ 80.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 48.5, 15, 15 },
|
|
||||||
{ 0.5, 48.5, 15, 15 },
|
{ 0.5, 48.5, 15, 15 },
|
||||||
|
{ 80.5, 48.5, 15, 15 },
|
||||||
{ 0.5, 32.5, 15, 15 },
|
{ 0.5, 32.5, 15, 15 },
|
||||||
{ 16.5, 32.5, 15, 15 },
|
{ 16.5, 32.5, 15, 15 },
|
||||||
{ 16.5, 112.5, 15, 15 },
|
|
||||||
{ 0.5, 112.5, 15, 15 },
|
{ 0.5, 112.5, 15, 15 },
|
||||||
|
{ 16.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 96.5, 15, 15 },
|
{ 0.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 96.5, 15, 15 },
|
{ 80.5, 96.5, 15, 15 },
|
||||||
{ 80.5, 112.5, 15, 15 },
|
|
||||||
{ 0.5, 112.5, 15, 15 },
|
{ 0.5, 112.5, 15, 15 },
|
||||||
|
{ 80.5, 112.5, 15, 15 },
|
||||||
{ 64.5, 32.5, 15, 15 },
|
{ 64.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 32.5, 15, 15 },
|
{ 80.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 112.5, 15, 15 },
|
|
||||||
{ 64.5, 112.5, 15, 15 },
|
{ 64.5, 112.5, 15, 15 },
|
||||||
|
{ 80.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 32.5, 15, 15 },
|
{ 0.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 32.5, 15, 15 },
|
{ 80.5, 32.5, 15, 15 },
|
||||||
{ 80.5, 112.5, 15, 15 },
|
|
||||||
{ 0.5, 112.5, 15, 15 },
|
{ 0.5, 112.5, 15, 15 },
|
||||||
|
{ 80.5, 112.5, 15, 15 },
|
||||||
{ 0.5, 0.5, 15, 15 },
|
{ 0.5, 0.5, 15, 15 },
|
||||||
{ 16.5, 0.5, 15, 15 },
|
{ 16.5, 0.5, 15, 15 },
|
||||||
{ 16.5, 16.5, 15, 15 },
|
{ 0.5, 16.5, 15, 15 },
|
||||||
{ 0.5, 16.5, 15, 15 }
|
{ 16.5, 16.5, 15, 15 }
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const int autotileRectsN = sizeof(autotileRects) / sizeof(autotileRects[0]);
|
extern const int autotileRectsN = sizeof(autotileRects) / sizeof(autotileRects[0]);
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
|
|
||||||
#include "tileatlasvx.h"
|
#include "tileatlasvx.h"
|
||||||
|
|
||||||
|
#include "tilemap-common.h"
|
||||||
#include "bitmap.h"
|
#include "bitmap.h"
|
||||||
#include "table.h"
|
#include "table.h"
|
||||||
#include "etc-internal.h"
|
#include "etc-internal.h"
|
||||||
|
@ -65,21 +66,6 @@ static elementsN(autotileVXRectsC);
|
||||||
namespace TileAtlasVX
|
namespace TileAtlasVX
|
||||||
{
|
{
|
||||||
|
|
||||||
static int
|
|
||||||
wrap(int value, int range)
|
|
||||||
{
|
|
||||||
int res = value % range;
|
|
||||||
return res < 0 ? res + range : res;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int16_t
|
|
||||||
tableGetWrapped(const Table &t, int x, int y, int z = 0)
|
|
||||||
{
|
|
||||||
return t.at(wrap(x, t.xSize()),
|
|
||||||
wrap(y, t.ySize()),
|
|
||||||
z);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int16_t
|
static int16_t
|
||||||
tableGetSafe(const Table *t, int x)
|
tableGetSafe(const Table *t, int x)
|
||||||
{
|
{
|
||||||
|
@ -333,35 +319,6 @@ void build(TEXFBO &tf, Bitmap *bitmaps[BM_COUNT])
|
||||||
#define OVER_PLAYER_FLAG (1 << 4)
|
#define OVER_PLAYER_FLAG (1 << 4)
|
||||||
#define TABLE_FLAG (1 << 7)
|
#define TABLE_FLAG (1 << 7)
|
||||||
|
|
||||||
static void
|
|
||||||
atSelectSubPos(FloatRect &pos, int i)
|
|
||||||
{
|
|
||||||
switch (i)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
return;
|
|
||||||
case 1:
|
|
||||||
pos.x += 16;
|
|
||||||
return;
|
|
||||||
case 2:
|
|
||||||
pos.y += 16;
|
|
||||||
return;
|
|
||||||
case 3:
|
|
||||||
pos.x += 16;
|
|
||||||
pos.y += 16;
|
|
||||||
return;
|
|
||||||
case 4:
|
|
||||||
pos.y += 24;
|
|
||||||
return;
|
|
||||||
case 5:
|
|
||||||
pos.x += 16;
|
|
||||||
pos.y += 24;
|
|
||||||
return;
|
|
||||||
default:
|
|
||||||
assert(!"Unreachable");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Reference: http://www.tktkgame.com/tkool/memo/vx/tile_id.html */
|
/* Reference: http://www.tktkgame.com/tkool/memo/vx/tile_id.html */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
** flashmap.h
|
** tilemap-common.h
|
||||||
**
|
**
|
||||||
** This file is part of mkxp.
|
** This file is part of mkxp.
|
||||||
**
|
**
|
||||||
|
@ -19,8 +19,8 @@
|
||||||
** along with mkxp. If not, see <http://www.gnu.org/licenses/>.
|
** along with mkxp. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FLASHMAP_H
|
#ifndef TILEMAPCOMMON_H
|
||||||
#define FLASHMAP_H
|
#define TILEMAPCOMMON_H
|
||||||
|
|
||||||
#include "table.h"
|
#include "table.h"
|
||||||
#include "gl-util.h"
|
#include "gl-util.h"
|
||||||
|
@ -30,8 +30,11 @@
|
||||||
#include "glstate.h"
|
#include "glstate.h"
|
||||||
#include "shader.h"
|
#include "shader.h"
|
||||||
#include "vertex.h"
|
#include "vertex.h"
|
||||||
|
#include "quad.h"
|
||||||
|
#include "etc-internal.h"
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
#include <assert.h>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include <sigc++/connection.h>
|
#include <sigc++/connection.h>
|
||||||
|
@ -44,13 +47,52 @@ wrap(int value, int range)
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int16_t
|
static inline int16_t
|
||||||
tableGetWrapped(const Table *t, int x, int y, int z = 0)
|
tableGetWrapped(const Table &t, int x, int y, int z = 0)
|
||||||
{
|
{
|
||||||
return t->get(wrap(x, t->xSize()),
|
return t.get(wrap(x, t.xSize()),
|
||||||
wrap(y, t->ySize()),
|
wrap(y, t.ySize()),
|
||||||
z);
|
z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum AtSubPos
|
||||||
|
{
|
||||||
|
TopLeft = 0,
|
||||||
|
TopRight = 1,
|
||||||
|
BottomLeft = 2,
|
||||||
|
BottomRight = 3,
|
||||||
|
BottomLeftTable = 4,
|
||||||
|
BottomRightTable = 5
|
||||||
|
};
|
||||||
|
|
||||||
|
static inline void
|
||||||
|
atSelectSubPos(FloatRect &pos, int i)
|
||||||
|
{
|
||||||
|
switch (i)
|
||||||
|
{
|
||||||
|
case TopLeft:
|
||||||
|
return;
|
||||||
|
case TopRight:
|
||||||
|
pos.x += 16;
|
||||||
|
return;
|
||||||
|
case BottomLeft:
|
||||||
|
pos.y += 16;
|
||||||
|
return;
|
||||||
|
case BottomRight:
|
||||||
|
pos.x += 16;
|
||||||
|
pos.y += 16;
|
||||||
|
return;
|
||||||
|
case BottomLeftTable:
|
||||||
|
pos.y += 24;
|
||||||
|
return;
|
||||||
|
case BottomRightTable:
|
||||||
|
pos.x += 16;
|
||||||
|
pos.y += 24;
|
||||||
|
return;
|
||||||
|
default:
|
||||||
|
assert(!"Unreachable");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
struct FlashMap
|
struct FlashMap
|
||||||
{
|
{
|
||||||
FlashMap()
|
FlashMap()
|
||||||
|
@ -144,7 +186,7 @@ private:
|
||||||
|
|
||||||
bool sampleFlashColor(Vec4 &out, int x, int y) const
|
bool sampleFlashColor(Vec4 &out, int x, int y) const
|
||||||
{
|
{
|
||||||
int16_t packed = tableGetWrapped(data, x, y);
|
int16_t packed = tableGetWrapped(*data, x, y);
|
||||||
|
|
||||||
if (packed == 0)
|
if (packed == 0)
|
||||||
return false;
|
return false;
|
||||||
|
@ -216,4 +258,4 @@ private:
|
||||||
std::vector<CVertex> vertices;
|
std::vector<CVertex> vertices;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // FLASHMAP_H
|
#endif // TILEMAPCOMMON_H
|
|
@ -36,7 +36,7 @@
|
||||||
#include "quad.h"
|
#include "quad.h"
|
||||||
#include "vertex.h"
|
#include "vertex.h"
|
||||||
#include "tileatlas.h"
|
#include "tileatlas.h"
|
||||||
#include "flashmap.h"
|
#include "tilemap-common.h"
|
||||||
|
|
||||||
#include <sigc++/connection.h>
|
#include <sigc++/connection.h>
|
||||||
|
|
||||||
|
@ -590,21 +590,6 @@ struct TilemapPrivate
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
|
|
||||||
FloatRect getAutotilePieceRect(int x, int y, /* in pixel coords */
|
|
||||||
int corner)
|
|
||||||
{
|
|
||||||
switch (corner)
|
|
||||||
{
|
|
||||||
case 0 : break;
|
|
||||||
case 1 : x += 16; break;
|
|
||||||
case 2 : x += 16; y += 16; break;
|
|
||||||
case 3 : y += 16; break;
|
|
||||||
default: abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
return FloatRect(x, y, 16, 16);
|
|
||||||
}
|
|
||||||
|
|
||||||
void handleAutotile(int x, int y, int tileInd, SVVector *array)
|
void handleAutotile(int x, int y, int tileInd, SVVector *array)
|
||||||
{
|
{
|
||||||
/* Which autotile [0-7] */
|
/* Which autotile [0-7] */
|
||||||
|
@ -617,7 +602,9 @@ struct TilemapPrivate
|
||||||
/* Iterate over the 4 tile pieces */
|
/* Iterate over the 4 tile pieces */
|
||||||
for (int i = 0; i < 4; ++i)
|
for (int i = 0; i < 4; ++i)
|
||||||
{
|
{
|
||||||
FloatRect posRect = getAutotilePieceRect(x*32, y*32, i);
|
FloatRect posRect(x*32, y*32, 16, 16);
|
||||||
|
atSelectSubPos(posRect, i);
|
||||||
|
|
||||||
FloatRect texRect = pieceRect[i];
|
FloatRect texRect = pieceRect[i];
|
||||||
|
|
||||||
/* Adjust to atlas coordinates */
|
/* Adjust to atlas coordinates */
|
||||||
|
@ -635,7 +622,7 @@ struct TilemapPrivate
|
||||||
void handleTile(int x, int y, int z)
|
void handleTile(int x, int y, int z)
|
||||||
{
|
{
|
||||||
int tileInd =
|
int tileInd =
|
||||||
tableGetWrapped(mapData, x + viewpPos.x, y + viewpPos.y, z);
|
tableGetWrapped(*mapData, x + viewpPos.x, y + viewpPos.y, z);
|
||||||
|
|
||||||
/* Check for empty space */
|
/* Check for empty space */
|
||||||
if (tileInd < 48)
|
if (tileInd < 48)
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
#include "quad.h"
|
#include "quad.h"
|
||||||
#include "quadarray.h"
|
#include "quadarray.h"
|
||||||
#include "shader.h"
|
#include "shader.h"
|
||||||
#include "flashmap.h"
|
#include "tilemap-common.h"
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <sigc++/connection.h>
|
#include <sigc++/connection.h>
|
||||||
|
|
Loading…
Reference in New Issue