我有一个创建房间布局的原型。我正在尝试将放置容器的位置计算为:
生成器与控制器之间的最近点,与控制器相距一个单位
由于某种原因,它似乎给了我多个值(可能是由于使用了路径算法),该值是根据API的“跳转点”。每次如何获得相同的结果,而不是三个不同的点?
Room.prototype.layoutRoom=function(){
var s:Spawn=this.spawns()[0]
var c:Controller=this.controller;
//get path from spawn to controller
var path = this.findPath(s.pos, c.pos, {ignoreDestructibleStructures: true});
//place container on last part of path -3 to stay 1 away from controller, and closest to spawn
//length-1= on endpoint, -2 is one step away, -3 is two steps away
var loc=path[path.length-3]
console.log('layout room, put container: '+loc.x+' '+loc.y)
this.createConstructionSite(loc.x, loc.y, STRUCTURE_CONTAINER);
}
多次运行上述代码(这是必需的)会导致多个建筑工地:
Smart猫小萌
相关分类