Roguelike
 All Classes Namespaces Functions Variables Typedefs Friends Pages
world_map.h
1 
23 #ifndef _WORLD_MAP_H
24 #define _WORLD_MAP_H
25 
26 #include <vector>
27 #include <stdlib.h>
28 #include <time.h>
29 #include <iostream>
30 
31 #include <color_def.h>
32 #include <defs.h>
33 #include <constants.h>
34 
42 class WorldMap {
43 
47  typedef std::vector<std::vector<MapTile> > MapTileMatrix;
48  private:
49 
56  std::vector<std::vector<MapTile> > map;
57 
62  int height;
63 
68  int width;
69 
78  bool out_of_bounds(int row, int col);
79 
89  int count_in_surrounding_tiles(int row, int col, MapTile tile_type);
90 
103  void starting_noise(int border);
104 
118  void smoothing_pass(MapTile tile_type, int threshold);
119 
124  void generate_land_mass();
125 
137  void set_land_or_water(int row, int col, int mod, bool more_water);
138 
143  void ocean_borders(int border);
144 
148  void generate_beaches();
149  public:
153  WorldMap();
154 
159  const std::vector<std::vector<MapTile> >& get_map();
160 };
161 
162 #endif
Definition: world_map.h:42
Definition: defs.h:168
void generate_land_mass()
Definition: world_map.cpp:104
bool out_of_bounds(int row, int col)
Definition: world_map.cpp:42
const std::vector< std::vector< MapTile > > & get_map()
Definition: world_map.cpp:38
void ocean_borders(int border)
Definition: world_map.cpp:143
WorldMap()
Definition: world_map.cpp:27
std::vector< std::vector< MapTile > > MapTileMatrix
Definition: world_map.h:47
void set_land_or_water(int row, int col, int mod, bool more_water)
Definition: world_map.cpp:126
void smoothing_pass(MapTile tile_type, int threshold)
Definition: world_map.cpp:90
int count_in_surrounding_tiles(int row, int col, MapTile tile_type)
Definition: world_map.cpp:49
int width
Definition: world_map.h:68
void generate_beaches()
Definition: world_map.cpp:168
void starting_noise(int border)
Definition: world_map.cpp:71
int height
Definition: world_map.h:62
std::vector< std::vector< MapTile > > map
Definition: world_map.h:56