From 00b1b6391ad2ab1b755437ed1305a979b2cf8f98 Mon Sep 17 00:00:00 2001 From: cinnaboot Date: Sat, 5 Jan 2019 17:25:13 -0500 Subject: [PATCH] remove stored color indexes from hexgrid object --- src/hexgame.cpp | 2 +- src/hexgrid.h | 3 --- src/scene_loader.cpp | 15 +++++++-------- src/scene_loader.h | 2 +- 4 files changed, 9 insertions(+), 13 deletions(-) diff --git a/src/hexgame.cpp b/src/hexgame.cpp index 90c2922..5d1509a 100644 --- a/src/hexgame.cpp +++ b/src/hexgame.cpp @@ -88,7 +88,7 @@ loadSceneFromJson(game_state* s, render_state* rs) } slParseCamera(sd, rs->cam); - slParseHexGrid(sd, g->grid); + slParseHexGrid(sd, g->grid, rs->palette_image); hgCreateHexes(g->grid); if (!slCreateHexRenderGroups(g->grid, rs)) diff --git a/src/hexgrid.h b/src/hexgrid.h index 9755d4b..59ed4be 100644 --- a/src/hexgrid.h +++ b/src/hexgrid.h @@ -46,9 +46,6 @@ struct hexgrid uint hex_size = 10; uint hex_radius = 0; - uint32 fill_color = 0xFFFFFFFF; - uint32 selected_fill_color = 0xFFFFFFFF; - uint32 hex_line_color = 0xFFFFFFFF; v2f fill_color_uv; v2f selected_fill_color_uv; v2f line_color_uv; diff --git a/src/scene_loader.cpp b/src/scene_loader.cpp index e3128a8..15462c4 100644 --- a/src/scene_loader.cpp +++ b/src/scene_loader.cpp @@ -112,7 +112,7 @@ slParseCamera(slSceneDoc* sd, camera& cam) } void -slParseHexGrid(slSceneDoc* sd, hexgrid& hg) +slParseHexGrid(slSceneDoc* sd, hexgrid& hg, util_image& palette_image) { const rapidjson::Value& json_grid = (*sd->doc)["hex_grid"]; @@ -131,9 +131,12 @@ slParseHexGrid(slSceneDoc* sd, hexgrid& hg) hg.position.x = pos.x; hg.position.y = pos.y; hg.position.z = pos.z; - hg.fill_color = json_grid["fill_color"].GetInt(); - hg.selected_fill_color = json_grid["selected_fill_color"].GetInt(); - hg.hex_line_color = json_grid["hex_line_color"].GetInt(); + + hg.fill_color_uv = utilGetPaletteCoords(palette_image, json_grid["fill_color"].GetInt()); + hg.selected_fill_color_uv = utilGetPaletteCoords(palette_image, + json_grid["selected_fill_color"].GetInt()); + hg.line_color_uv = utilGetPaletteCoords(palette_image, json_grid["hex_line_color"].GetInt()); + std::string orientation_str = json_grid["hexlib_orientation"].GetString(); hg.hexlib_orientation = (orientation_str == "layout_flat") ? layout_flat : layout_pointy; Layout lo(hg.hexlib_orientation, Point(hg.hex_size, hg.hex_size), Point(hg.position.x, hg.position.y)); @@ -163,10 +166,6 @@ slCreateHexRenderGroups(hexgrid& hg, render_state* rs) return false; } - hg.fill_color_uv = utilGetPaletteCoords(rs->palette_image, hg.fill_color); - hg.selected_fill_color_uv = utilGetPaletteCoords(rs->palette_image, hg.selected_fill_color); - hg.line_color_uv = utilGetPaletteCoords(rs->palette_image, hg.hex_line_color); - populateFilledHexGLBuffers(hg, rg_filled); populateLineGLBuffers(hg, rg_lines); diff --git a/src/scene_loader.h b/src/scene_loader.h index 617f32e..3c9a736 100644 --- a/src/scene_loader.h +++ b/src/scene_loader.h @@ -25,7 +25,7 @@ bool slParseEntities( void slParseCamera(slSceneDoc* sd, camera& cam); -void slParseHexGrid(slSceneDoc* sd, hexgrid& hg); +void slParseHexGrid(slSceneDoc* sd, hexgrid& hg, util_image& palette_image); bool slCreateHexRenderGroups(hexgrid& hg, render_state* rs);