【发布时间】:2019-11-21 11:42:53
【问题描述】:
你好!
我正在尝试制作一个类似于 BlackThornProd 频道上的地牢生成程序,但 p5.js 除外。我有一个处理生成其他房间的生成器函数,我将所有房间作为函数,并且我有 4 个存储不同房间的数组。我的问题是,我必须访问 spawner 函数中的数组,但是 spawner 函数必须在房间函数之上,并且房间函数必须在数组之上。像这样:
var spawner = function(x, y, value) {
switch(value) {
case 1:
topRooms[random(0, topRooms.length)](x, y);
break;
case 2:
bottomRooms[random(0, bottomRooms.length)](x, y);
break;
case 3:
leftRooms[random(0, leftRooms.length)](x, y);
break;
case 4:
rightRooms[random(0, rightRooms.length)](x, y);
break;
}
};
var start = function(x, y) {
pushMatrix();
translate(x, y);
rect(-25, -25, 20, 1); //Top Left
rect(25, -25, -20, 1); //Top Right
rect(25, 25, -20, 1); //Bottom Right
rect(-25, 25, 20, 1); //Bottom Left
rect(25, -25, 1, 20); //Right Top
rect(25, 25, 1, -20); //Right Bottom
rect(-25, 25, 1, -20); //Left Bottom
rect(-25, -25, 1, 20); //Left Top
popMatrix();
};
var topRooms = [];
var bottomRooms = [];
var leftRooms = [];
var rightRooms = [];
如您所见,必须从位于数组上方的生成器访问数组。我不知道有没有办法访问代码下面的东西,但是我使用的环境不喜欢它。
如果您知道解决方案,请回复。谢谢!
【问题讨论】:
标签: javascript generator p5.js