some hints, I'll finish it later

This commit is contained in:
Issac332 2026-06-13 23:49:02 +03:00
parent 1bcc4dd12d
commit 5f366d8b44

View file

@ -1,198 +1,269 @@
struct StaticRect { float x, y, w, h; }; struct StaticRect { float x, y, w, h; };
extern const StaticRect autotileRects[] = { extern const StaticRect autotileRects[] = {
{ 32.5, 64.5, 15, 15 }, // where "-" - "Water", "#" - filled "water" connected subtile, "C" - cetral subtile, "U" - unused
{ 48.5, 64.5, 15, 15 }, // autotile example (Look Graphics/Autotiles/minitiles.png), in this example mini tile is 2x2
{ 32.5, 80.5, 15, 15 }, /*
{ 48.5, 80.5, 15, 15 }, UUUU UUUU -##-
{ 64.5, 0.5, 15, 15 }, UUUU UUUU #CC#
{ 48.5, 64.5, 15, 15 }, UUUU UUUU #CC#
{ 32.5, 80.5, 15, 15 }, UUUU UUUU -##-
{ 48.5, 80.5, 15, 15 },
{ 32.5, 64.5, 15, 15 }, ---- ---- ----
{ 80.5, 0.5, 15, 15 }, -C#C #CC# C#C-
{ 32.5, 80.5, 15, 15 }, -### #### ###-
{ 48.5, 80.5, 15, 15 }, -C#C #CC# C#C-
{ 64.5, 0.5, 15, 15 },
{ 80.5, 0.5, 15, 15 }, -### #### ###-
{ 32.5, 80.5, 15, 15 }, -C#C #CC# C#C-
{ 48.5, 80.5, 15, 15 }, -C#C #CC# C#C-
{ 32.5, 64.5, 15, 15 }, -### #### ###-
{ 48.5, 64.5, 15, 15 },
{ 32.5, 80.5, 15, 15 }, -C#C #CC# C#C-
{ 80.5, 16.5, 15, 15 }, -### #### ###-
{ 64.5, 0.5, 15, 15 }, -C#C #CC# C#C-
{ 48.5, 64.5, 15, 15 }, ---- ---- ----
{ 32.5, 80.5, 15, 15 }, */
{ 80.5, 16.5, 15, 15 }, // 0
{ 32.5, 64.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ####
{ 80.5, 0.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 32.5, 80.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 80.5, 16.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // ####
{ 64.5, 0.5, 15, 15 }, // 1
{ 80.5, 0.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -###
{ 32.5, 80.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 80.5, 16.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 32.5, 64.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // ####
{ 48.5, 64.5, 15, 15 }, // 2
{ 64.5, 16.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ###-
{ 48.5, 80.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 64.5, 0.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 48.5, 64.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // ####
{ 64.5, 16.5, 15, 15 }, // 3
{ 48.5, 80.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -##-
{ 32.5, 64.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 80.5, 0.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 64.5, 16.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // ####
{ 48.5, 80.5, 15, 15 }, // 4
{ 64.5, 0.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ####
{ 80.5, 0.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 64.5, 16.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 48.5, 80.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, // ###-
{ 32.5, 64.5, 15, 15 }, // 5
{ 48.5, 64.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -###
{ 64.5, 16.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 80.5, 16.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 64.5, 0.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, // ###-
{ 48.5, 64.5, 15, 15 }, // 6
{ 64.5, 16.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ###-
{ 80.5, 16.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 32.5, 64.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 80.5, 0.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, // ###-
{ 64.5, 16.5, 15, 15 }, // 7
{ 80.5, 16.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -##-
{ 64.5, 0.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 80.5, 0.5, 15, 15 }, { 32.5, 80.5, 15, 15 }, // #CC#
{ 64.5, 16.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, // ###-
{ 80.5, 16.5, 15, 15 }, // 8
{ 0.5, 64.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ####
{ 16.5, 64.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 0.5, 80.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, // #CC#
{ 16.5, 80.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // -###
{ 0.5, 64.5, 15, 15 }, // 9
{ 80.5, 0.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -###
{ 0.5, 80.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 16.5, 80.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, // #CС#
{ 0.5, 64.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // -###
{ 16.5, 64.5, 15, 15 }, // 10
{ 0.5, 80.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ###-
{ 80.5, 16.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 0.5, 64.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, // #CC#
{ 80.5, 0.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // -###
{ 0.5, 80.5, 15, 15 }, // 11
{ 80.5, 16.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, // -##-
{ 32.5, 32.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, // #CC#
{ 48.5, 32.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, // #CC#
{ 32.5, 48.5, 15, 15 }, { 48.5, 80.5, 15, 15 }, // -###
{ 48.5, 48.5, 15, 15 }, // 12
{ 32.5, 32.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, // ####
{ 48.5, 32.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, // #CC#
{ 32.5, 48.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, // #CC#
{ 80.5, 16.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, // -##-
{ 32.5, 32.5, 15, 15 }, // 13
{ 48.5, 32.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 64.5, 16.5, 15, 15 }, { 48.5, 64.5, 15, 15 }, //
{ 48.5, 48.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 32.5, 32.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 48.5, 32.5, 15, 15 }, // 14
{ 64.5, 16.5, 15, 15 }, { 32.5, 64.5, 15, 15 }, //
{ 80.5, 16.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 64.5, 64.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 80.5, 64.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 64.5, 80.5, 15, 15 }, // 15
{ 80.5, 80.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 64.5, 64.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 80.5, 64.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 64.5, 16.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 80.5, 80.5, 15, 15 }, // 16
{ 64.5, 0.5, 15, 15 }, { 0.5, 64.5, 15, 15 }, //
{ 80.5, 64.5, 15, 15 }, { 16.5, 64.5, 15, 15 }, //
{ 64.5, 80.5, 15, 15 }, { 0.5, 80.5, 15, 15 }, //
{ 80.5, 80.5, 15, 15 }, { 16.5, 80.5, 15, 15 }, //
{ 64.5, 0.5, 15, 15 }, // 17
{ 80.5, 64.5, 15, 15 }, { 0.5, 64.5, 15, 15 }, //
{ 64.5, 16.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 80.5, 80.5, 15, 15 }, { 0.5, 80.5, 15, 15 }, //
{ 32.5, 96.5, 15, 15 }, { 16.5, 80.5, 15, 15 }, //
{ 48.5, 96.5, 15, 15 }, // 18
{ 32.5, 112.5, 15, 15 }, { 0.5, 64.5, 15, 15 }, //
{ 48.5, 112.5, 15, 15 }, { 16.5, 64.5, 15, 15 }, //
{ 64.5, 0.5, 15, 15 }, { 0.5, 80.5, 15, 15 }, //
{ 48.5, 96.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 32.5, 112.5, 15, 15 }, // 19
{ 48.5, 112.5, 15, 15 }, { 0.5, 64.5, 15, 15 }, //
{ 32.5, 96.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 80.5, 0.5, 15, 15 }, { 0.5, 80.5, 15, 15 }, //
{ 32.5, 112.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 48.5, 112.5, 15, 15 }, // 20
{ 64.5, 0.5, 15, 15 }, { 32.5, 32.5, 15, 15 }, //
{ 80.5, 0.5, 15, 15 }, { 48.5, 32.5, 15, 15 }, //
{ 32.5, 112.5, 15, 15 }, { 32.5, 48.5, 15, 15 }, //
{ 48.5, 112.5, 15, 15 }, { 48.5, 48.5, 15, 15 }, //
{ 0.5, 64.5, 15, 15 }, // 21
{ 80.5, 64.5, 15, 15 }, { 32.5, 32.5, 15, 15 }, //
{ 0.5, 80.5, 15, 15 }, { 48.5, 32.5, 15, 15 }, //
{ 80.5, 80.5, 15, 15 }, { 32.5, 48.5, 15, 15 }, //
{ 32.5, 32.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 48.5, 32.5, 15, 15 }, // 22
{ 32.5, 112.5, 15, 15 }, { 32.5, 32.5, 15, 15 }, //
{ 48.5, 112.5, 15, 15 }, { 48.5, 32.5, 15, 15 }, //
{ 0.5, 32.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, { 48.5, 48.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, // 23
{ 16.5, 48.5, 15, 15 }, { 32.5, 32.5, 15, 15 }, //
{ 0.5, 32.5, 15, 15 }, { 48.5, 32.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, { 80.5, 16.5, 15, 15 }, //
{ 80.5, 16.5, 15, 15 }, // 24
{ 64.5, 32.5, 15, 15 }, { 64.5, 64.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, { 80.5, 64.5, 15, 15 }, //
{ 64.5, 48.5, 15, 15 }, { 64.5, 80.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, { 80.5, 80.5, 15, 15 }, //
{ 64.5, 32.5, 15, 15 }, // 25
{ 80.5, 32.5, 15, 15 }, { 64.5, 64.5, 15, 15 }, //
{ 64.5, 16.5, 15, 15 }, { 80.5, 64.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 64.5, 96.5, 15, 15 }, { 80.5, 80.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, // 26
{ 64.5, 112.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, { 80.5, 64.5, 15, 15 }, //
{ 64.5, 0.5, 15, 15 }, { 64.5, 80.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, { 80.5, 80.5, 15, 15 }, //
{ 64.5, 112.5, 15, 15 }, // 27
{ 80.5, 112.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 0.5, 96.5, 15, 15 }, { 80.5, 64.5, 15, 15 }, //
{ 16.5, 96.5, 15, 15 }, { 64.5, 16.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, { 80.5, 80.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, // 28
{ 0.5, 96.5, 15, 15 }, { 32.5, 96.5, 15, 15 }, //
{ 80.5, 0.5, 15, 15 }, { 48.5, 96.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, { 32.5, 112.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, { 48.5, 112.5, 15, 15 }, //
{ 0.5, 32.5, 15, 15 }, // 29
{ 80.5, 32.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, { 48.5, 96.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, { 32.5, 112.5, 15, 15 }, //
{ 0.5, 32.5, 15, 15 }, { 48.5, 112.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, // 30
{ 0.5, 112.5, 15, 15 }, { 32.5, 96.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 0.5, 96.5, 15, 15 }, { 32.5, 112.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, { 48.5, 112.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, // 31
{ 80.5, 112.5, 15, 15 }, { 64.5, 0.5, 15, 15 }, //
{ 64.5, 32.5, 15, 15 }, { 80.5, 0.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, { 32.5, 112.5, 15, 15 }, //
{ 64.5, 112.5, 15, 15 }, { 48.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, // 32
{ 0.5, 32.5, 15, 15 }, { 0.5, 64.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, { 80.5, 64.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, { 0.5, 80.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, { 80.5, 80.5, 15, 15 }, //
{ 0.5, 0.5, 15, 15 }, // 33
{ 16.5, 0.5, 15, 15 }, { 32.5, 32.5, 15, 15 }, //
{ 0.5, 16.5, 15, 15 }, { 48.5, 32.5, 15, 15 }, //
{ 16.5, 16.5, 15, 15 } { 32.5, 112.5, 15, 15 }, //
{ 48.5, 112.5, 15, 15 }, //
// 34
{ 0.5, 32.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, //
{ 16.5, 48.5, 15, 15 }, //
// 35
{ 0.5, 32.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, //
{ 80.5, 16.5, 15, 15 }, //
// 36
{ 64.5, 32.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, //
{ 64.5, 48.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, //
// 37
{ 64.5, 32.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, //
{ 64.5, 16.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, //
// 38
{ 64.5, 96.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, //
{ 64.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, //
// 39
{ 64.5, 0.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, //
{ 64.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, //
// 40
{ 0.5, 96.5, 15, 15 }, //
{ 16.5, 96.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, //
// 41
{ 0.5, 96.5, 15, 15 }, //
{ 80.5, 0.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, //
// 42
{ 0.5, 32.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, //
{ 0.5, 48.5, 15, 15 }, //
{ 80.5, 48.5, 15, 15 }, //
// 43
{ 0.5, 32.5, 15, 15 }, //
{ 16.5, 32.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, //
{ 16.5, 112.5, 15, 15 }, //
// 44
{ 0.5, 96.5, 15, 15 }, //
{ 80.5, 96.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, //
// 45
{ 64.5, 32.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, //
{ 64.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, //
// 46
{ 0.5, 32.5, 15, 15 }, //
{ 80.5, 32.5, 15, 15 }, //
{ 0.5, 112.5, 15, 15 }, //
{ 80.5, 112.5, 15, 15 }, //
// 47
{ 0.5, 0.5, 15, 15 }, //
{ 16.5, 0.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]);