4

我正在为一个游到屏幕上随机位置的应用程序创建一条鱼。在鱼开始向下一个位置游去之前,它会旋转到其起点和目标点之间的角度。

我想弄清楚的是:if (target.x < start.x),我需要水平翻转精灵。

问题是,在我创建精灵和addChild图层后,我无法flipX使用[sprite setFlipX].

精灵添加到图层后 setFlipX 是否被锁定?我怎样才能解决这个问题?动画是我唯一的解决方案吗?

4

2 回答 2

5

要翻转并保留任何先前的缩放,请使用:

sprite.scaleX *= -1.f;

完成此操作后,您不应再使用该属性sprite.scale,因为它包含scaleX == scaleY.

于 2012-02-09T12:36:25.417 回答
3

尝试通过将 scaleX 设置为 -1 来翻转它:

sprite.scaleX = -1;

此外,对于它的价值,您应该能够在将节点添加为子节点后设置 flipX 布尔值。如果你做不到,那肯定是有别的事情发生了。

于 2012-02-08T18:43:38.443 回答