javascript - 在文字游戏中使用数组

标签 javascript arrays

我正在创建一个文字游戏,用户可以将字母图 block 拖到占位符中并对其进行评估以查看他们是否制作了正确的单词。我需要打乱字母图 block ,这样它们就不会拼写出该单词。

目前,我正在按正确的顺序放置字母图 block ,然后添加一些字母。然后我想打乱字母 block 。当我放置字母和额外字母时,我将 x 位置插入数组中。

有没有一种方法可以让我循环遍历数组并定位字母图 block ,使它们不会彼此重叠? Math.floor(Math.random) 通常会产生重复项,因此字母图 block 会彼此叠置,如下所示。

<小时/>
var arr = [0,30,60,90];

for(i=0;i<arr.length;i++){
 var num = Math.floor(Math.random()*arr.length);
 var bmp = new createjs.Bitmap("image");
 stage.addChild(bmp);

 bmp.x = arr[num];

stage.update();
}
<小时/>

有没有办法只使用数组中的每个值一次,但每次都选择随机位置?

最佳答案

考虑制作一个平铺字母对象。

在此对象内跟踪其位置。然后添加碰撞检查并跟踪对象的所有位置。

还要考虑数组的 shuffle 方法。

帮助链接:

关于javascript - 在文字游戏中使用数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24019151/

相关文章:

javascript - 多维和关联数组正确语法

java - 我可以将一堆 if 语句组合成一个对象吗?

javascript - 如何等待 MongoDB 连接建立后再使用数据库

javascript - 如何创建一个随窗口调整大小的 div?

javascript - Javascript 初始化函数的外部化代码不起作用?

c++ - 使用 cout 后对象数组被破坏

android - Asynctask 无法将变量从 doInBackground 传递到 onPostExecute - 更改公共(public)变量。在执行后

c++ - 使用字符数组写入姓名的首字母

javascript - 如何在不访问 html 的情况下将 ng-app 添加到 html 元素

javascript - 使用 !== 运算符比较从下拉列表中获取的字符串 - Javascript