Browse Source

remove stored color indexes from hexgrid object

master
cinnaboot 8 years ago
parent
commit
00b1b6391a
  1. 2
      src/hexgame.cpp
  2. 3
      src/hexgrid.h
  3. 15
      src/scene_loader.cpp
  4. 2
      src/scene_loader.h

2
src/hexgame.cpp

@ -88,7 +88,7 @@ loadSceneFromJson(game_state* s, render_state* rs)
} }
slParseCamera(sd, rs->cam); slParseCamera(sd, rs->cam);
slParseHexGrid(sd, g->grid); slParseHexGrid(sd, g->grid, rs->palette_image);
hgCreateHexes(g->grid); hgCreateHexes(g->grid);
if (!slCreateHexRenderGroups(g->grid, rs)) if (!slCreateHexRenderGroups(g->grid, rs))

3
src/hexgrid.h

@ -46,9 +46,6 @@ struct hexgrid
uint hex_size = 10; uint hex_size = 10;
uint hex_radius = 0; uint hex_radius = 0;
uint32 fill_color = 0xFFFFFFFF;
uint32 selected_fill_color = 0xFFFFFFFF;
uint32 hex_line_color = 0xFFFFFFFF;
v2f fill_color_uv; v2f fill_color_uv;
v2f selected_fill_color_uv; v2f selected_fill_color_uv;
v2f line_color_uv; v2f line_color_uv;

15
src/scene_loader.cpp

@ -112,7 +112,7 @@ slParseCamera(slSceneDoc* sd, camera& cam)
} }
void void
slParseHexGrid(slSceneDoc* sd, hexgrid& hg) slParseHexGrid(slSceneDoc* sd, hexgrid& hg, util_image& palette_image)
{ {
const rapidjson::Value& json_grid = (*sd->doc)["hex_grid"]; 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.x = pos.x;
hg.position.y = pos.y; hg.position.y = pos.y;
hg.position.z = pos.z; hg.position.z = pos.z;
hg.fill_color = json_grid["fill_color"].GetInt();
hg.selected_fill_color = json_grid["selected_fill_color"].GetInt(); hg.fill_color_uv = utilGetPaletteCoords(palette_image, json_grid["fill_color"].GetInt());
hg.hex_line_color = json_grid["hex_line_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(); std::string orientation_str = json_grid["hexlib_orientation"].GetString();
hg.hexlib_orientation = (orientation_str == "layout_flat") ? layout_flat : layout_pointy; 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)); 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; 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); populateFilledHexGLBuffers(hg, rg_filled);
populateLineGLBuffers(hg, rg_lines); populateLineGLBuffers(hg, rg_lines);

2
src/scene_loader.h

@ -25,7 +25,7 @@ bool slParseEntities(
void slParseCamera(slSceneDoc* sd, camera& cam); 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); bool slCreateHexRenderGroups(hexgrid& hg, render_state* rs);

Loading…
Cancel
Save