main: use border_block from map_objects
This commit is contained in:
parent
5c588dbe29
commit
3b9cbf82aa
4
Makefile
4
Makefile
@ -3,7 +3,9 @@ CFLAGS = -Isaturn
|
|||||||
OPT ?= -Og
|
OPT ?= -Og
|
||||||
LIB = ./saturn
|
LIB = ./saturn
|
||||||
|
|
||||||
SRC = main.o input.o gen/maps.o
|
SRC = main.o input.o
|
||||||
|
SRC += gen/maps.o
|
||||||
|
SRC += gen/map_objects.o
|
||||||
DEP = $(patsubst %.o,%.d,$(SRC))
|
DEP = $(patsubst %.o,%.d,$(SRC))
|
||||||
|
|
||||||
res = $(subst pokered/,res/,$(patsubst %.$(1),%.$(1).o,$(wildcard $(2)*.$(1))))
|
res = $(subst pokered/,res/,$(patsubst %.$(1),%.$(1).o,$(wildcard $(2)*.$(1))))
|
||||||
|
5
main.cpp
5
main.cpp
@ -12,6 +12,7 @@
|
|||||||
#include "input.hpp"
|
#include "input.hpp"
|
||||||
|
|
||||||
#include "gen/maps.hpp"
|
#include "gen/maps.hpp"
|
||||||
|
#include "map_objects.hpp"
|
||||||
|
|
||||||
constexpr inline uint16_t rgb15(int32_t r, int32_t g, int32_t b)
|
constexpr inline uint16_t rgb15(int32_t r, int32_t g, int32_t b)
|
||||||
{
|
{
|
||||||
@ -111,12 +112,14 @@ void render()
|
|||||||
if (map.tileset != state.tileset)
|
if (map.tileset != state.tileset)
|
||||||
state.tileset = load_tileset(map.tileset);
|
state.tileset = load_tileset(map.tileset);
|
||||||
|
|
||||||
|
const uint8_t border_block = map_objects[maps_ix[state.map_ix]].border_block;
|
||||||
|
|
||||||
for (uint32_t map_y = 0; map_y < 16; map_y++) {
|
for (uint32_t map_y = 0; map_y < 16; map_y++) {
|
||||||
for (uint32_t map_x = 0; map_x < 16; map_x++) {
|
for (uint32_t map_x = 0; map_x < 16; map_x++) {
|
||||||
const uint8_t block =
|
const uint8_t block =
|
||||||
(map_x < map.width && map_y < map.height)
|
(map_x < map.width && map_y < map.height)
|
||||||
? map.blocks.start[map.width * map_y + map_x]
|
? map.blocks.start[map.width * map_y + map_x]
|
||||||
: 0;
|
: border_block;
|
||||||
render_block(state.base_pattern,
|
render_block(state.base_pattern,
|
||||||
tilesets[map.tileset],
|
tilesets[map.tileset],
|
||||||
map_x,
|
map_x,
|
||||||
|
@ -80,3 +80,5 @@ struct object_t {
|
|||||||
const bg_event_t * bg_events;
|
const bg_event_t * bg_events;
|
||||||
const object_event_t * object_events;
|
const object_event_t * object_events;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extern const object_t map_objects[];
|
||||||
|
@ -83,7 +83,7 @@ def includes_source():
|
|||||||
yield ""
|
yield ""
|
||||||
|
|
||||||
def map_objects():
|
def map_objects():
|
||||||
map_headers = sorted_map_headers()
|
map_headers = list(sorted_map_headers())
|
||||||
for map_header in map_headers:
|
for map_header in map_headers:
|
||||||
map_name = map_header.name2.lower()
|
map_name = map_header.name2.lower()
|
||||||
map_objects = parse.map_objects_list[map_header.object()]
|
map_objects = parse.map_objects_list[map_header.object()]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user