47 lines
1016 B
JavaScript
47 lines
1016 B
JavaScript
Game = {
|
|
map_grid: {
|
|
width: 24,
|
|
height: 16,
|
|
tile: {
|
|
width: 16,
|
|
height: 16
|
|
}
|
|
},
|
|
|
|
width: function() {
|
|
return this.map_grid.width * this.map_grid.tile.width;
|
|
},
|
|
|
|
height: function() {
|
|
return this.map_grid.height * this.map_grid.tile.height;
|
|
},
|
|
|
|
start: function() {
|
|
Crafty.init(Game.width(), Game.height());
|
|
Crafty.background('rgb(249, 223, 125)');
|
|
|
|
Crafty.e('PlayerCharacter').at(5, 5);
|
|
|
|
var max_villages = 5;
|
|
|
|
for (var x = 0; x < Game.map_grid.width; x++) {
|
|
for (var y = 0; y < Game.map_grid.height; y++) {
|
|
var at_edge = x == 0 ||
|
|
x == Game.map_grid.width - 1 ||
|
|
y == 0 ||
|
|
y == Game.map_grid.height - 1;
|
|
|
|
if (at_edge) {
|
|
Crafty.e('Tree').at(x, y);
|
|
} else if (Math.random() < 0.06) {
|
|
Crafty.e('Bush').at(x, y);
|
|
}
|
|
|
|
if (Math.random() < 0.02 && Crafty('Village').length < max_villages) {
|
|
Crafty.e('Village').at(x, y);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|