我正在开发游戏并遇到了一个问题:我不知道如何从canvas/stage中删除一个Shape对象.例如 - 在一个例子中,我用这段代码添加形状:
var bullet = new createjs.Shape();
bullet.graphics.beginFill("white").drawRect(0, 0, playerSize/5, playerSize);
bullet.x = x+playerSize/2;
bullet.y = y-playerSize;
stage.addChild(bullet);
bullets.push(bullet);
Run Code Online (Sandbox Code Playgroud)
最后一行将形状对象添加到数组中,因此我可以稍后操作每个对象(使用Tick移动项目符号)
现在我想删除某些对象,但我不知道如何:我知道你可以用stage.removeAllChildren()删除部分阶段,但这不是我想要的.我对子弹进行了有效的碰撞检测,但是在我想要的时候不知道如何在画布上摆脱它们.
我也试过stage.removeChild(bullet); 但这似乎没有用?如果我只在数组中有这些对象,我将如何使用removeChild?
欢迎任何建议/意见!如果我不够清楚,请告诉我更新问题:)
谢谢
我想到了; 不知道你能做到这一点.我只是通过所有子弹循环使用stage.removeChild(bullet),如下所示:
stage.removeChild(bullets[i]);
Run Code Online (Sandbox Code Playgroud)
这很有趣,因为我认为你必须将子名传递给这种方法,但显然我错了; 你传递了实际的对象,就是这样.
| 归档时间: |
|
| 查看次数: |
5721 次 |
| 最近记录: |