我在试着做一个“比赛3”的游戏。而不是只有一个类型的每个宝石匹配,我想有2个不同类型的每个宝石,然后将匹配。我将我的电影剪辑设置为12帧,由6对不同的宝石组成,并随机选择播放哪一帧。我使用Gary Rosenzweig的代码(Actionscript游戏编程大学)作为基础。
我有6个不同的数组来保存匹配的组合(例如,m1 = 1,2,m2 =3,4...m6 = 11,12)。我像这样设置了匹配条件:
帧编号直接匹配的标准匹配:
if (mc1.currentFrame == mc2.currentFrame) {
match.push(mc2);匹配帧编号不同的地方,但它们是同一对的一部分,应该匹配:
} else if (mc1.currentFrame in m1 && mc2.currentFrame in m1) {
match.push(mc2);问题是我没有从第二个条件中得到任何匹配。我已经为每个条件设置了跟踪,显示正在比较的两个帧编号,但应该匹配的对却不是。
救命!作为一个彻头彻尾的AS3新手,我已经尝试过所有可能的方法来解决这个问题,但是到目前为止还没有成功。任何帮助都将不胜感激。
发布于 2014-03-20 17:44:19
呃,我从来没用过"in",所以这可能有点奇怪。
而不是
} else if (mc1.currentFrame in m1 && mc2.currentFrame in m1) {你可以试试
} else if (m1.indexOf(mc1.currentFrame)>-1 && m1.indexOf(mc2.currentFrame)>-1) {哦,你也是在根据m1而不是m2来检查mc2当前帧。你想这么做吗?
https://stackoverflow.com/questions/22525314
复制相似问题