map shortnames/identifiers
This commit is contained in:
parent
849a554055
commit
9fb791039f
12 changed files with 80 additions and 26 deletions
|
|
@ -29,6 +29,8 @@ pub fn forest_builder(
|
|||
height,
|
||||
difficulty,
|
||||
NAME_FOREST_BUILDER,
|
||||
SHORTNAME_FOREST_BUILDER,
|
||||
0,
|
||||
initial_player_level
|
||||
);
|
||||
chain.start_with(CellularAutomataBuilder::floor(TileType::Grass));
|
||||
|
|
|
|||
|
|
@ -107,6 +107,8 @@ impl BuilderChain {
|
|||
height: i32,
|
||||
difficulty: i32,
|
||||
name: S,
|
||||
short_name: S,
|
||||
depth: i32,
|
||||
initial_player_level: i32
|
||||
) -> BuilderChain {
|
||||
BuilderChain {
|
||||
|
|
@ -114,7 +116,7 @@ impl BuilderChain {
|
|||
builders: Vec::new(),
|
||||
build_data: BuilderMap {
|
||||
spawn_list: Vec::new(),
|
||||
map: Map::new(overmap, new_id, width, height, difficulty, name),
|
||||
map: Map::new(overmap, new_id, width, height, difficulty, name, short_name, depth),
|
||||
starting_position: None,
|
||||
rooms: None,
|
||||
corridors: None,
|
||||
|
|
@ -326,7 +328,7 @@ fn random_shape_builder(rng: &mut rltk::RandomNumberGenerator, builder: &mut Bui
|
|||
}
|
||||
|
||||
fn overmap_builder() -> BuilderChain {
|
||||
let mut builder = BuilderChain::new(true, ID_OVERMAP, 69, 41, 0, NAME_OVERMAP, 1);
|
||||
let mut builder = BuilderChain::new(true, ID_OVERMAP, 69, 41, 0, NAME_OVERMAP, SHORTNAME_OVERMAP, 0, 1);
|
||||
builder.start_with(PrefabBuilder::overmap());
|
||||
builder.with(Foliage::percent(TileType::Grass, 30));
|
||||
return builder;
|
||||
|
|
@ -344,6 +346,7 @@ pub fn random_builder(
|
|||
width: i32,
|
||||
height: i32,
|
||||
difficulty: i32,
|
||||
depth: i32,
|
||||
initial_player_level: i32,
|
||||
end: bool,
|
||||
build_type: BuildType
|
||||
|
|
@ -356,6 +359,8 @@ pub fn random_builder(
|
|||
height,
|
||||
difficulty,
|
||||
NAME_DUNGEON_RANDOM,
|
||||
SHORTNAME_DUNGEON_RANDOM,
|
||||
depth,
|
||||
initial_player_level
|
||||
);
|
||||
let mut want_doors = true;
|
||||
|
|
@ -421,8 +426,19 @@ pub fn level_builder(
|
|||
ID_OVERMAP => overmap_builder(),
|
||||
ID_TOWN => town_builder(new_id, rng, width, height, 0, initial_player_level),
|
||||
ID_TOWN2 => forest_builder(new_id, rng, width, height, 1, initial_player_level),
|
||||
ID_TOWN3 => random_builder(new_id, rng, width, height, 2, initial_player_level, true, BuildType::Room),
|
||||
ID_INFINITE => random_builder(new_id, rng, width, height, 3, initial_player_level, false, BuildType::Room),
|
||||
_ => random_builder(new_id, rng, width, height, difficulty, initial_player_level, false, BuildType::Any),
|
||||
ID_TOWN3 => random_builder(new_id, rng, width, height, 2, 1, initial_player_level, true, BuildType::Room),
|
||||
_ if new_id >= ID_INFINITE =>
|
||||
random_builder(
|
||||
new_id,
|
||||
rng,
|
||||
width,
|
||||
height,
|
||||
difficulty,
|
||||
new_id - ID_INFINITE + 1,
|
||||
initial_player_level,
|
||||
false,
|
||||
BuildType::Room
|
||||
),
|
||||
_ => random_builder(new_id, rng, width, height, difficulty, 404, initial_player_level, false, BuildType::Room),
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ const OVERMAP_TEMPLATE: &str =
|
|||
^^^^^^^........................≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈.....≈
|
||||
^^^^^^^^........@..............≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈....≈
|
||||
^^^^^^^^..................≈...≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈...≈≈≈...≈≈≈≈≈≈≈≈.≈≈
|
||||
^^^^^^^^^.............1...≈≈....≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈....≈≈......≈≈≈≈≈≈≈≈≈
|
||||
^^^^^^^^^.................≈≈1...≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈....≈≈......≈≈≈≈≈≈≈≈≈
|
||||
^^^^^^^^^........≈≈≈≈...≈≈≈≈....≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈..≈≈≈......≈≈≈≈≈≈≈≈≈
|
||||
^^^^^^^^^^......≈≈≈≈≈≈≈≈≈≈≈≈≈..≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈........≈≈≈≈≈≈≈≈
|
||||
^^^^^^^^^^.....≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈........≈≈≈≈≈≈≈≈≈
|
||||
|
|
|
|||
|
|
@ -18,6 +18,8 @@ pub fn town_builder(
|
|||
height,
|
||||
difficulty,
|
||||
NAME_STARTER_TOWN,
|
||||
SHORTNAME_STARTER_TOWN,
|
||||
0,
|
||||
initial_player_level
|
||||
);
|
||||
chain.start_with(TownBuilder::new());
|
||||
|
|
|
|||
|
|
@ -37,7 +37,9 @@ impl WaveFunctionCollapseBuilder {
|
|||
build_data.map.width,
|
||||
build_data.map.height,
|
||||
build_data.map.difficulty,
|
||||
&build_data.map.name
|
||||
&build_data.map.name,
|
||||
&build_data.map.short_name,
|
||||
build_data.map.depth
|
||||
);
|
||||
loop {
|
||||
let mut solver = Solver::new(constraints.clone(), CHUNK_SIZE, &build_data.map);
|
||||
|
|
@ -53,7 +55,16 @@ impl WaveFunctionCollapseBuilder {
|
|||
}
|
||||
|
||||
fn render_tile_gallery(&mut self, constraints: &[MapChunk], chunk_size: i32, build_data: &mut BuilderMap) {
|
||||
build_data.map = Map::new(false, 0, build_data.width, build_data.height, 0, &build_data.map.name);
|
||||
build_data.map = Map::new(
|
||||
false,
|
||||
0,
|
||||
build_data.width,
|
||||
build_data.height,
|
||||
0,
|
||||
&build_data.map.name,
|
||||
&build_data.map.short_name,
|
||||
build_data.map.depth
|
||||
);
|
||||
let mut counter = 0;
|
||||
let mut x = 1;
|
||||
let mut y = 1;
|
||||
|
|
@ -69,7 +80,16 @@ impl WaveFunctionCollapseBuilder {
|
|||
if y + chunk_size > build_data.map.height {
|
||||
// Move to the next page
|
||||
build_data.take_snapshot();
|
||||
build_data.map = Map::new(false, 0, build_data.width, build_data.height, 0, &build_data.map.name);
|
||||
build_data.map = Map::new(
|
||||
false,
|
||||
0,
|
||||
build_data.width,
|
||||
build_data.height,
|
||||
0,
|
||||
&build_data.map.name,
|
||||
&build_data.map.short_name,
|
||||
build_data.map.depth
|
||||
);
|
||||
|
||||
x = 1;
|
||||
y = 1;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue