This module is pretty much copied from a roguelike that I started writing.
example 1:
use Games::Roguelike::Caves;
my $map = generate_cave(50,20);
for (@$map){
for (@$_){
print;
}
print "\n"
}
OUTPUT:
........ ......
.......... ...... ........
............... ........ .........
................. ...................
................. ..................
................ ...................
.. ............... .....................
.... ..... ....... .....................
.... ... ...... ....... ............
.... ... ...... .... ...........
.. .... ..... .. ...........
...... .... .. .........
.......... .... ... .........
............ .. .... ..........
.............. ...... ...... ..
............... ...... ......
... ...... ..... .....
.... ... ...
example 2:
use Games::Roguelike::Caves;
my $map = generate_cave(50,20);
outline_walls ($map);
for (@$map){
for (@$_){
print;
}
print "\n"
}
|-------------| |---| |-.............-| |--| |-...-| |...............| |--..-||-.....| |...............| |--| |-.....--......| |-......----....-| |-..-| |.............-| |-....-| |-....-| |-....| |............-| |-...-| |-.....---.....| |-...........| |-....----..............| |-..........| |----.......................| |-.........| |-..........................-| |-.........| |-...........................| |.........-| |............................| |........-| |...........................-| |........-| |.......................----| |-........-| |-.....................-| |---......| |-...................-|
|-.....| |...................| |....-| |..................-| |-..-| |-.............----| |--| |-------------| Ecample 3: use Games::Roguelike::Caves; #2 iterations, 50% walls... my $map = generate_cave(50,20,2,.5,"W",' '); outline_walls ($map,"W",' '); for (@$map){
for (@$_){
print; } print "\n" }