mirror of
https://forgejo.xatacraft.ru/Sunshine/mkxp-sunshine.git
synced 2026-08-19 13:29:54 +00:00
269 lines
7.3 KiB
C++
269 lines
7.3 KiB
C++
struct StaticRect { float x, y, w, h; };
|
||
|
||
extern const StaticRect autotileRects[] = {
|
||
// where "-" - "Water", "#" - filled "water" connected subtile, "C" - cetral subtile, "U" - unused
|
||
// autotile example (Look Graphics/Autotiles/minitiles.png), in this example mini tile is 2x2
|
||
/*
|
||
UUUU UUUU -##-
|
||
UUUU UUUU #CC#
|
||
UUUU UUUU #CC#
|
||
UUUU UUUU -##-
|
||
|
||
---- ---- ----
|
||
-C#C #CC# C#C-
|
||
-### #### ###-
|
||
-C#C #CC# C#C-
|
||
|
||
-### #### ###-
|
||
-C#C #CC# C#C-
|
||
-C#C #CC# C#C-
|
||
-### #### ###-
|
||
|
||
-C#C #CC# C#C-
|
||
-### #### ###-
|
||
-C#C #CC# C#C-
|
||
---- ---- ----
|
||
*/
|
||
// 0
|
||
{ 32.5, 64.5, 15, 15 }, // ####
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // ####
|
||
// 1
|
||
{ 64.5, 0.5, 15, 15 }, // -###
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // ####
|
||
// 2
|
||
{ 32.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // ####
|
||
// 3
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // ####
|
||
// 4
|
||
{ 32.5, 64.5, 15, 15 }, // ####
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // ###-
|
||
// 5
|
||
{ 64.5, 0.5, 15, 15 }, // -###
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // ###-
|
||
// 6
|
||
{ 32.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // ###-
|
||
// 7
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 32.5, 80.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // ###-
|
||
// 8
|
||
{ 32.5, 64.5, 15, 15 }, // ####
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // -###
|
||
// 9
|
||
{ 64.5, 0.5, 15, 15 }, // -###
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CС#
|
||
{ 48.5, 80.5, 15, 15 }, // -###
|
||
// 10
|
||
{ 32.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // -###
|
||
// 11
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 48.5, 80.5, 15, 15 }, // -###
|
||
// 12
|
||
{ 32.5, 64.5, 15, 15 }, // ####
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 13
|
||
{ 64.5, 0.5, 15, 15 }, // -###
|
||
{ 48.5, 64.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 14
|
||
{ 32.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 15
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 16
|
||
{ 0.5, 64.5, 15, 15 }, // -###
|
||
{ 16.5, 64.5, 15, 15 }, // -C#C
|
||
{ 0.5, 80.5, 15, 15 }, // -C#C
|
||
{ 16.5, 80.5, 15, 15 }, // -###
|
||
// 17
|
||
{ 0.5, 64.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // -CC#
|
||
{ 0.5, 80.5, 15, 15 }, // -C#C
|
||
{ 16.5, 80.5, 15, 15 }, // -###
|
||
// 18
|
||
{ 0.5, 64.5, 15, 15 }, // -###
|
||
{ 16.5, 64.5, 15, 15 }, // -C#C
|
||
{ 0.5, 80.5, 15, 15 }, // -CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 19
|
||
{ 0.5, 64.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // -CC#
|
||
{ 0.5, 80.5, 15, 15 }, // -CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 20
|
||
{ 32.5, 32.5, 15, 15 }, // ----
|
||
{ 48.5, 32.5, 15, 15 }, // #CC#
|
||
{ 32.5, 48.5, 15, 15 }, // ####
|
||
{ 48.5, 48.5, 15, 15 }, // #CC#
|
||
// 21
|
||
{ 32.5, 32.5, 15, 15 }, // ----
|
||
{ 48.5, 32.5, 15, 15 }, // #CC#
|
||
{ 32.5, 48.5, 15, 15 }, // ##C#
|
||
{ 80.5, 16.5, 15, 15 }, // #C#-
|
||
// 22
|
||
{ 32.5, 32.5, 15, 15 }, // ----
|
||
{ 48.5, 32.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #C##
|
||
{ 48.5, 48.5, 15, 15 }, // -#C#
|
||
// 23
|
||
{ 32.5, 32.5, 15, 15 }, // ----
|
||
{ 48.5, 32.5, 15, 15 }, // #CC#
|
||
{ 64.5, 16.5, 15, 15 }, // #CC#
|
||
{ 80.5, 16.5, 15, 15 }, // -##-
|
||
// 24
|
||
{ 64.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 64.5, 15, 15 }, // C#C-
|
||
{ 64.5, 80.5, 15, 15 }, // C#C-
|
||
{ 80.5, 80.5, 15, 15 }, // ###-
|
||
// 25
|
||
{ 64.5, 64.5, 15, 15 }, // ###-
|
||
{ 80.5, 64.5, 15, 15 }, // C#C-
|
||
{ 64.5, 16.5, 15, 15 }, // #CC-
|
||
{ 80.5, 80.5, 15, 15 }, // -##-
|
||
// 26
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 64.5, 15, 15 }, // #CC-
|
||
{ 64.5, 80.5, 15, 15 }, // C#C-
|
||
{ 80.5, 80.5, 15, 15 }, // ###-
|
||
// 27
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 64.5, 15, 15 }, // #CC-
|
||
{ 64.5, 16.5, 15, 15 }, // #CC-
|
||
{ 80.5, 80.5, 15, 15 }, // -##-
|
||
// 28
|
||
{ 32.5, 96.5, 15, 15 }, // #CC#
|
||
{ 48.5, 96.5, 15, 15 }, // ####
|
||
{ 32.5, 112.5, 15, 15 }, // #CC#
|
||
{ 48.5, 112.5, 15, 15 }, // ----
|
||
// 29
|
||
{ 64.5, 0.5, 15, 15 }, // -#C#
|
||
{ 48.5, 96.5, 15, 15 }, // #C##
|
||
{ 32.5, 112.5, 15, 15 }, // #CC#
|
||
{ 48.5, 112.5, 15, 15 }, // ----
|
||
// 30
|
||
{ 32.5, 96.5, 15, 15 }, // #C#-
|
||
{ 80.5, 0.5, 15, 15 }, // ##C#
|
||
{ 32.5, 112.5, 15, 15 }, // #CC#
|
||
{ 48.5, 112.5, 15, 15 }, // ----
|
||
// 31
|
||
{ 64.5, 0.5, 15, 15 }, // -##-
|
||
{ 80.5, 0.5, 15, 15 }, // #CC#
|
||
{ 32.5, 112.5, 15, 15 }, // #CC#
|
||
{ 48.5, 112.5, 15, 15 }, // ----
|
||
// 32
|
||
{ 0.5, 64.5, 15, 15 }, // -##-
|
||
{ 80.5, 64.5, 15, 15 }, // -CC-
|
||
{ 0.5, 80.5, 15, 15 }, // -CC-
|
||
{ 80.5, 80.5, 15, 15 }, // -##-
|
||
// 33
|
||
{ 32.5, 32.5, 15, 15 }, // ----
|
||
{ 48.5, 32.5, 15, 15 }, // #CC#
|
||
{ 32.5, 112.5, 15, 15 }, // #CC#
|
||
{ 48.5, 112.5, 15, 15 }, // ----
|
||
// 34
|
||
{ 0.5, 32.5, 15, 15 }, // ----
|
||
{ 16.5, 32.5, 15, 15 }, // -C#C
|
||
{ 0.5, 48.5, 15, 15 }, // -###
|
||
{ 16.5, 48.5, 15, 15 }, // -C#C
|
||
// 35
|
||
{ 0.5, 32.5, 15, 15 }, // ----
|
||
{ 16.5, 32.5, 15, 15 }, // -C#C
|
||
{ 0.5, 48.5, 15, 15 }, // -#C#
|
||
{ 80.5, 16.5, 15, 15 }, // -C#-
|
||
// 36
|
||
{ 64.5, 32.5, 15, 15 }, // ----
|
||
{ 80.5, 32.5, 15, 15 }, // C#C-
|
||
{ 64.5, 48.5, 15, 15 }, // ###-
|
||
{ 80.5, 48.5, 15, 15 }, // C#C-
|
||
// 37
|
||
{ 64.5, 32.5, 15, 15 }, // ----
|
||
{ 80.5, 32.5, 15, 15 }, // C#C-
|
||
{ 64.5, 16.5, 15, 15 }, // #C#-
|
||
{ 80.5, 48.5, 15, 15 }, // -#C-
|
||
// 38
|
||
{ 64.5, 96.5, 15, 15 }, // C#C-
|
||
{ 80.5, 96.5, 15, 15 }, // ###-
|
||
{ 64.5, 112.5, 15, 15 }, // C#C-
|
||
{ 80.5, 112.5, 15, 15 }, // ----
|
||
// 39
|
||
{ 64.5, 0.5, 15, 15 }, // -#C-
|
||
{ 80.5, 96.5, 15, 15 }, // #C#-
|
||
{ 64.5, 112.5, 15, 15 }, // C#C-
|
||
{ 80.5, 112.5, 15, 15 }, // ----
|
||
// 40
|
||
{ 0.5, 96.5, 15, 15 }, // -C#C
|
||
{ 16.5, 96.5, 15, 15 }, // -###
|
||
{ 0.5, 112.5, 15, 15 }, // -C#C
|
||
{ 16.5, 112.5, 15, 15 }, // ----
|
||
// 41
|
||
{ 0.5, 96.5, 15, 15 }, // -C#-
|
||
{ 80.5, 0.5, 15, 15 }, // -#C#
|
||
{ 0.5, 112.5, 15, 15 }, // -C#C
|
||
{ 16.5, 112.5, 15, 15 }, // ----
|
||
// 42
|
||
{ 0.5, 32.5, 15, 15 }, // ----
|
||
{ 80.5, 32.5, 15, 15 }, // -CC-
|
||
{ 0.5, 48.5, 15, 15 }, // -##-
|
||
{ 80.5, 48.5, 15, 15 }, // -CC-
|
||
// 43
|
||
{ 0.5, 32.5, 15, 15 }, // ----
|
||
{ 16.5, 32.5, 15, 15 }, // -C#C
|
||
{ 0.5, 112.5, 15, 15 }, // -C#C
|
||
{ 16.5, 112.5, 15, 15 }, // ----
|
||
// 44
|
||
{ 0.5, 96.5, 15, 15 }, // -CC-
|
||
{ 80.5, 96.5, 15, 15 }, // -##-
|
||
{ 0.5, 112.5, 15, 15 }, // -CC-
|
||
{ 80.5, 112.5, 15, 15 }, // ----
|
||
// 45
|
||
{ 64.5, 32.5, 15, 15 }, // ----
|
||
{ 80.5, 32.5, 15, 15 }, // C#C-
|
||
{ 64.5, 112.5, 15, 15 }, // C#C-
|
||
{ 80.5, 112.5, 15, 15 }, // ----
|
||
// 46
|
||
{ 0.5, 32.5, 15, 15 }, // ----
|
||
{ 80.5, 32.5, 15, 15 }, // -CC-
|
||
{ 0.5, 112.5, 15, 15 }, // -CC-
|
||
{ 80.5, 112.5, 15, 15 }, // ----
|
||
// 47
|
||
{ 0.5, 0.5, 15, 15 }, // UUUU
|
||
{ 16.5, 0.5, 15, 15 }, // UCCU
|
||
{ 0.5, 16.5, 15, 15 }, // UCCU
|
||
{ 16.5, 16.5, 15, 15 } // UUUU
|
||
};
|
||
|
||
extern const int autotileRectsN = sizeof(autotileRects) / sizeof(autotileRects[0]);
|