maps: Added 3rd demo map
authorLukas Krickl <lukas@krickl.dev>
Sat, 5 Jul 2025 19:24:23 +0000 (21:24 +0200)
committerLukas Krickl <lukas@krickl.dev>
Sat, 5 Jul 2025 19:24:23 +0000 (21:24 +0200)
makefile
maps/start_map.s
maps/west_woods_map.s [new file with mode: 0644]
src/exittables.s
src/map.s
src/player.s

index ff23bed4dda6e8d9fd569b17dd462ab53103af4a..55c026ad61275feed72322d3172beec53c0259ed 100644 (file)
--- a/makefile
+++ b/makefile
@@ -20,3 +20,4 @@ tiles:
 maps:
        ./tools/tms2map.py assets/maps/base1616.tmx default_map > maps/default_map.s
        ./tools/tms2map.py assets/maps/start.tmx start_map > maps/start_map.s
+       ./tools/tms2map.py assets/maps/west_woods.tmx west_woods_map > maps/west_woods_map.s
index 90e61ebe819e5e88fc375025bcd1a054ac97a080..a26ad20b481a4dda200e79aefd9fd4995da3d490 100644 (file)
@@ -9,7 +9,7 @@ dw bank8000
 dw bank8800
 dw bank8C00
 dw bank9000
-dw default_map_exit_table
+dw start_map_exit_table
 
 start_map_bg:
 
@@ -17,8 +17,8 @@ start_map_bg:
 .db 0xf, 0x60, 0x1, 0x60, 0x6, 0x60, 0x4, 0x44
 .db 0x5, 0x60, 0x1, 0x60, 0xf, 0x60, 0x1, 0x60
 .db 0xf, 0x60, 0x1, 0x60, 0xf, 0x60, 0x1, 0x60
-.db 0xf, 0x60, 0x1, 0x60, 0x2, 0x60, 0x4, 0x44
-.db 0x9, 0x60, 0x1, 0x60, 0x7, 0x60, 0x3, 0x62
+.db 0xf, 0x60, 0x1, 0x6e, 0x2, 0x60, 0x4, 0x44
+.db 0x9, 0x60, 0x1, 0x6e, 0x7, 0x60, 0x3, 0x62
 .db 0x5, 0x60, 0x1, 0x60, 0x7, 0x60, 0x3, 0x62
 .db 0x5, 0x60, 0x1, 0x60, 0x7, 0x60, 0x3, 0x62
 .db 0x5, 0x60, 0x1, 0x60, 0xf, 0x60, 0x1, 0x60
@@ -27,6 +27,7 @@ start_map_bg:
 .db 0x00 ; termiante data
 start_map_tile_flags:
 
-.db 0x27, 0x0, 0x4, 0x1, 0x48, 0x0, 0x4, 0x1
-.db 0x89, 0x0
+.db 0x27, 0x0, 0x4, 0x1, 0x45, 0x0, 0x1, 0x2
+.db 0x2, 0x0, 0x4, 0x1, 0x9, 0x0, 0x1, 0x2
+.db 0x7f, 0x0
 .db 0x00 ; termiante data
diff --git a/maps/west_woods_map.s b/maps/west_woods_map.s
new file mode 100644 (file)
index 0000000..e30146e
--- /dev/null
@@ -0,0 +1,33 @@
+west_woods_map_header:
+.db 0, 0, 0, 0 ; flags
+.str "NONAME  "
+dw west_woods_map_bg
+dw west_woods_map_tile_flags
+dw st_map_null
+dw map_actor_table_null
+dw bank8000
+dw bank8800
+dw bank8C00
+dw bank9000
+dw west_woods_map_exit_table
+
+west_woods_map_bg:
+
+.db 0x1, 0x42, 0xf, 0x42, 0x1, 0x42, 0xf, 0x42
+.db 0x1, 0x42, 0xf, 0x42, 0x1, 0x42, 0xf, 0x42
+.db 0x1, 0x42, 0xf, 0x42, 0x1, 0x42, 0x6, 0x42
+.db 0x2, 0x46, 0x7, 0x42, 0x1, 0x42, 0x6, 0x42
+.db 0x2, 0x46, 0x7, 0x42, 0x1, 0x42, 0x6, 0x42
+.db 0x2, 0x46, 0x7, 0x42, 0x1, 0x42, 0x6, 0x42
+.db 0x2, 0x46, 0x7, 0x42, 0x1, 0x42, 0x6, 0x42
+.db 0x8, 0x46, 0x1, 0x6e, 0x1, 0x42, 0x6, 0x42
+.db 0x8, 0x46, 0x1, 0x6e, 0x1, 0x42, 0xf, 0x42
+.db 0x1, 0x42, 0xf, 0x42, 0x1, 0x42, 0xf, 0x42
+.db 0x1, 0x42, 0xf, 0x42, 0x1, 0x42, 0xe, 0x42
+.db 0x1, 0x42
+.db 0x00 ; termiante data
+west_woods_map_tile_flags:
+
+.db 0x9f, 0x0, 0x1, 0x2, 0xf, 0x0, 0x1, 0x2
+.db 0x50, 0x0
+.db 0x00 ; termiante data
index cee78df4b923a7757e1a16b28a7e435fddf52828..6a698b387f43402bc30916ad325367bf11432edc 100644 (file)
@@ -1,3 +1,9 @@
 default_map_exit_table:
 exit_def EXITF_GOTOXY_REL, BTNRIGHT, 0, -15, start_map_header 
-exit_def EXITF_GOTOXY_REL, BTNLEFT, 0, 15, start_map_header 
+exit_def EXITF_GOTOXY_REL, BTNLEFT, 0, 15, west_woods_map_header 
+
+start_map_exit_table:
+exit_def EXITF_GOTOXY_REL, BTNLEFT, 0, 15, default_map_header
+
+west_woods_map_exit_table:
+exit_def EXITF_GOTOXY_REL, BTNRIGHT, 0, -15, default_map_header 
index a098b966b4ba36d28efbabe710e796bc7af6711c..4f7c9496f8082c97407a0c590a861a6e72a51255 100644 (file)
--- a/src/map.s
+++ b/src/map.s
@@ -446,3 +446,4 @@ map_null_state:
 
 #include "default_map.s"
 #include "start_map.s"
+#include "west_woods_map.s"
index 9381b0fa9ea246780393327d0a61be8d1cd9b02d..dcaf627e566e1ebdeb1a2126d42a58250b798c76 100644 (file)
@@ -69,7 +69,6 @@ unit_check_exit_hit:
   inc de
   ld a, [de]
   ld h, a
-
   ; hl = first entry in exit table
   ld a, b ; a = flags
   and a, 0xF0 ; we only care about the upper nibble