FoW is now moved into lighting so light determines what's seen not player's last position. Not sure if I like that though.
This commit is contained in:
parent
d264760405
commit
2997dc363b
7 changed files with 19 additions and 30 deletions
10
systems.cpp
10
systems.cpp
|
@ -526,9 +526,10 @@ bool System::inventory_occupied(GameLevel& level, Entity container_id, const std
|
|||
}
|
||||
|
||||
|
||||
void System::draw_map(GameLevel& level, Matrix& grid, Matrix& fow, EntityGrid& entity_map) {
|
||||
void System::draw_map(GameLevel& level, Matrix& grid, EntityGrid& entity_map) {
|
||||
World &world = *level.world;
|
||||
Map &map = *level.map;
|
||||
Matrix &fow = level.lights->$fow;
|
||||
size_t view_x = matrix::width(grid) - 1;
|
||||
size_t view_y = matrix::height(grid) - 1;
|
||||
|
||||
|
@ -571,13 +572,15 @@ void System::draw_map(GameLevel& level, Matrix& grid, Matrix& fow, EntityGrid& e
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
void System::render_map(Matrix& tiles, EntityGrid& entity_map, sf::RenderTexture& render, int compass_dir, wchar_t player_display) {
|
||||
void System::render_map(GameLevel& level, Matrix& tiles, EntityGrid& entity_map, sf::RenderTexture& render, int compass_dir, wchar_t player_display) {
|
||||
sf::Vector2i tile_sprite_dim{MAP_TILE_DIM,MAP_TILE_DIM};
|
||||
unsigned int width = matrix::width(tiles);
|
||||
unsigned int height = matrix::height(tiles);
|
||||
sf::Vector2u dim{width * tile_sprite_dim.x, height * tile_sprite_dim.y};
|
||||
auto render_size = render.getSize();
|
||||
Matrix &fow = level.lights->$fow;
|
||||
(void)level;
|
||||
(void)fow;
|
||||
|
||||
if(render_size.x != width || render_size.y != height) {
|
||||
bool worked = render.resize(dim);
|
||||
|
@ -608,6 +611,7 @@ void System::render_map(Matrix& tiles, EntityGrid& entity_map, sf::RenderTexture
|
|||
sprite.setPosition({float(point.x * tile_sprite_dim.x), float(point.y * tile_sprite_dim.y)});
|
||||
}
|
||||
|
||||
|
||||
render.draw(sprite);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue