【发布时间】:2014-08-21 01:51:21
【问题描述】:
我在设置碰撞检测时遇到问题。我已经关注了这个论坛和网络上的一些帖子,但似乎无法让它发挥作用。我正在尝试使用位于函数中的方形边界框方法。
Square 是随着用户输入在画布上移动的形状,impactSquare 是我试图测试影响的静止形状。我似乎无法弄清楚是什么部分导致它不起作用。
//square bounding box
if (impactSquare.x < square.x + square.width &&
impactSquare.x + impactSquare.width > square.x &&
impactSquare.y < square.y + square.height &&
impactSquare.height + impactSquare.y > square.y) {
// collision detected!
//square.graphics.beginFill("#F4F4F4");
console.log("Collision Detected");
} else {
// no collision
//square.graphics.beginFill("#FF0000");
console.log("No Collision");
}
//stage.update();
感谢您提供的帮助!
【问题讨论】:
-
您能否提供jsfiddle.net(和/或)控制台中出现的任何错误消息?仅从该代码中,我看不到碰撞问题。这段代码多久调用一次?
-
就是这样,我没有收到任何错误 =) 如果我添加一个 Ticker 调用,它只会一遍又一遍地写“无影响”,即使应该有碰撞。我正在调用函数 detectCollision();在我的 init() 中;功能。
-
但是这个碰撞函数并没有什么问题(假设其他一切都正确),请看这里的 Fiddle:jsfiddle.net/AniHouse/zxe2a5aL。
标签: javascript createjs