if (character.hitTestObject(walls)){
character.x = //something
character.y = //something
}
所有这一切都是当它击中影片剪辑的任何部分时,(甚至是空格)它会移动我的角色,
我可以使用任何类型的代码来检测撞到某种颜色吗?
答案 0 :(得分:0)
你可以做到这一点的一种方法是使用hitTestPoint()
方法来测试是否有任何角撞到你的墙上。
hitTestPoint()
只测试一个位置,以查看该点是否与对象发生碰撞。这就是你如何测试角色的左上角以查看它是否在触摸墙壁:
// I am assuming that x,y is the top left corner of your character
if (wall.hitPointTest(character.x, character.y, true))
{
// top left collided with wall
{
因此,您可以对所有角落执行相同操作,或者如果需要,您可以确定要检查角色的任何碰撞点。
根据您的精确程度,此方法可能适合您的需要。但如果您想要像素完美碰撞,可以查看以下链接:
http://www.freeactionscript.com/2011/08/as3-pixel-perfect-collision-detection/