@@ -39,12 +39,12 @@ MapDefinition::MapDefinition() {}
3939ProvinceDefinition* MapDefinition::get_province_definition_from_number (
4040 decltype (std::declval<ProvinceDefinition>().get_province_number())province_number
4141) {
42- return province_definitions.get_item_by_index (type_safe::get ( ProvinceDefinition::get_index_from_province_number (province_number) ));
42+ return province_definitions.get_item_by_index (ProvinceDefinition::get_index_from_province_number (province_number));
4343}
4444ProvinceDefinition const * MapDefinition::get_province_definition_from_number (
4545 decltype (std::declval<ProvinceDefinition>().get_province_number())province_number
4646) const {
47- return province_definitions.get_item_by_index (type_safe::get ( ProvinceDefinition::get_index_from_province_number (province_number) ));
47+ return province_definitions.get_item_by_index (ProvinceDefinition::get_index_from_province_number (province_number));
4848}
4949
5050RiverSegment::RiverSegment (uint8_t new_size, memory::vector<ivec2_t >&& new_points)
@@ -93,7 +93,7 @@ bool MapDefinition::add_province_definition(std::string_view identifier, colour_
9393 }
9494
9595 ProvinceDefinition const & new_province = province_definitions.back ();
96- colour_index_map[new_province.get_colour ()] = province_index_t ( new_province.get_province_number ()) ;
96+ colour_index_map[new_province.get_colour ()] = new_province.index ;
9797 return true ;
9898}
9999
@@ -860,15 +860,24 @@ bool MapDefinition::load_map_images(fs::path const& province_path, fs::path cons
860860 uint8_t const * province_data = province_bmp.get_pixel_data ().data ();
861861 uint8_t const * terrain_data = terrain_bmp.get_pixel_data ().data ();
862862
863- memory::FixedVector<fixed_point_map_t <TerrainType const *>> _terrain_type_pixels_list (province_definitions.size ());
863+ memory::FixedVector<fixed_point_map_t <TerrainType const *>> _terrain_type_pixels_list (
864+ province_definitions.size (),
865+ [](const size_t i) { return fixed_point_map_t <TerrainType const *>{}; }
866+ );
864867 TypedSpan<province_index_t , fixed_point_map_t <TerrainType const *>> terrain_type_pixels_list { _terrain_type_pixels_list };
865868
866869 bool ret = true ;
867870 ordered_set<colour_t > unrecognised_province_colours;
868871
869- memory::FixedVector<fixed_point_t > _pixels_per_province (province_definitions.size ());
872+ memory::FixedVector<fixed_point_t > _pixels_per_province (
873+ province_definitions.size (),
874+ [](const size_t i) { return fixed_point_t ::_0; }
875+ );
870876 TypedSpan<province_index_t , fixed_point_t > pixels_per_province { _pixels_per_province };
871- memory::FixedVector<fvec2_t > _pixel_position_sum_per_province (province_definitions.size ());
877+ memory::FixedVector<fvec2_t > _pixel_position_sum_per_province (
878+ province_definitions.size (),
879+ [](const size_t i) { return fvec2_t {}; }
880+ );
872881 TypedSpan<province_index_t , fvec2_t > pixel_position_sum_per_province { _pixel_position_sum_per_province };
873882
874883 for (ivec2_t pos {}; pos.y < get_height (); ++pos.y ) {
0 commit comments