xtodx / mapgenerator
地图生成器
dev-master
2019-01-31 22:44 UTC
Requires
- php: >=7.0
- phpunit/phpunit: 7.5.x-dev
This package is auto-updated.
Last update: 2024-09-29 05:02:24 UTC
README
最初生成是这样进行的
function generate()
{
$terrainCount = count($this->terrainTypes) - 1;
for ($i = 0; $i < $this->y; $i++) {
$this->terrains[] = [];
$this->units[] = [];
for ($k = 0; $k < $this->x; $k++) {
$this->terrains[$i][] = $this->createTerrain($this->terrainTypes[rand(0, $terrainCount)], $k, $i);
$possibleUnits = $this->terrains[$i][$k]->getPossibleUnits();
$this->units[$i][$k] = null;
if (count($possibleUnits) > 0) {
if ($this->distribution() == 0) {
$this->totalUnits++;
$this->units[$i][$k] = $this->createUnit($possibleUnits[rand(0,
count($possibleUnits) - 1)], rand(0, $this->teams - 1));
$this->terrains[$i][$k]->setUnit($this->units[$i][$k]);
}
}
}
}
return $this->terrains;
}
但首先我们需要生成数据库,否则
- 我们可能只能生成较少的数据库
- 可能整个可以放置数据库的区域都可能被占用
现在工作分为3个阶段
- 地形生成
- 在地图上生成限制数量的对象(例如基地),数量等于队伍数量
- 生成其他对象
- 开火
- 移动单位
- 基地能提供什么
安装
composer require xtodx/mapgenerator dev-master