【发布时间】:2017-01-26 00:09:50
【问题描述】:
一旦圆圈接触到 rect , rect 应该是 alpha=0.1 。但如果语句不起作用。它变成 0.1 的不透明度而没有命中
/* js
var circle = new lib.mycircle();
stage.addChild(circle);
var rect = new lib.myrect();
stage.addChild(rect);
rect.x=200;
rect.y=300;
circle.addEventListener('mousedown', downF);
function downF(e) {
stage.addEventListener('stagemousemove', moveF);
stage.addEventListener('stagemouseup', upF);
};
function upF(e) {
stage.removeAllEventListeners();
}
function moveF(e) {
circle.x = stage.mouseX;
circle.y = stage.mouseY;
}
if(circle.hitTest(rect))
{
rect.alpha = 0.1;
}
stage.update();
*/
【问题讨论】:
-
在这个演示中,hitTest 只运行一次(在开始时)。这是故意的吗?
-
另外,您使用的是什么版本的 CreateJS? /*js */ 代码语法来自相当老的 CreateJS Toolkit 版本(与支持 JavaScript 代码的 Flash/Animate HTML5 文档格式相比)
-
我更新了最新的托管库。没有任何问题 。但意图是使代码“当圆接触矩形时,矩形应该变为 alpha 0.1。
-
请注意 CreateJS 中的 hitTest 只是基于点的。它会告诉你一个特定的点是否击中了一个物体。如果您想要基于形状的碰撞,则必须构建它,或使用 Box2D (demo) 之类的东西
标签: createjs