26 #define CHUNK_DIR DATADIR "/chunk"
33 #include <boost/filesystem.hpp>
36 #include <constants.h>
37 #include <procedurally_blind_db.h>
38 #include <corruptible_pblind_db.h>
39 #include <chunk_layer.h>
40 #include <overworld_gen.h>
45 #include <int_point.h>
50 static const int BYTES_PER_TILE = 2;
51 static const int CHUNKLAYER_META_BYTES = 6;
52 static const int CHUNK_META_BYTES = 6;
99 typedef std::vector<std::vector<Tile> > TileMatrix;
126 bool find_serialized_chunk();
132 int calculate_file_size(
int bytes_per_tile);
148 void deserialize(
string file_name);
169 Chunk(
MapTile tile_type,
int _world_row,
int _world_col);
183 void init(
MapTile tile_type,
int _world_row,
int _world_col);
188 bool build_chunk_with_dungeons();
194 void build_land_chunk();
199 void build_forest_chunk();
204 void build_water_chunk();
209 void build_beach_chunk();
224 IntPoint get_up_stair(
int depth)
const;
231 IntPoint get_down_stair(
int depth)
const;
239 std::vector<Item*>& get_items(
int depth);
246 void remove_item(
Item* item,
int depth);
253 void add_item(
Item* item,
int depth);
259 const std::vector<std::vector<Tile> >& get_floor(
int depth);
267 Tile* get_tile(
int depth,
int row,
int col) ;
278 void set_tile(
int depth,
int row,
int col,
Tile tile);
284 int get_depth()
const;
293 bool out_of_bounds(
int depth,
int row,
int col)
const;
300 Spawner get_spawner(
int depth);
306 void dungeon_dump(
int depth);
MapTile chunk_type
Definition: chunk.h:107
std::vector< ChunkLayer > layers
Definition: chunk.h:113
Definition: int_point.h:26