5

我只知道 CCNode 的旋转属性可能与它有关。但我想水平翻转精灵,而不是旋转。

4

4 回答 4

13

接受的答案是错误的(或过时的)。您实际应该使用的是:

sprite.flipX=YES;

sprite.flipX=NO;

扭转它

于 2014-02-26T06:29:16.040 回答
12

如果您的意思是要水平翻转 a CCNode,您只需执行以下操作:

sprite.scaleX *= -1;

(或:)sprite.scaleX = -sprite.scaleX;如果你的精灵一开始就没有缩放,你可以简单地做:

sprite.scaleX = -1;

该类CCSprite有一个flipX/flipY方法可以满足您的目的。但请记住以下行为差异

@note 翻转不会翻转任何精灵的子精灵,也不会改变锚点。

如果这是您想要的,您应该尝试反转 CCNode scaleX 属性:sprite.scaleX *= -1.0;

于 2013-02-17T11:48:47.043 回答
1

你可以试试这个:

CCSprite* heroSprite = (CCSprite*) _character.children[0];

然后以 heroSprite 为例:

    heroSprite.flipX = YES;

它适用于节点。

于 2015-03-25T11:49:18.883 回答
1

在当前版本 cocos2d-js (3.8) 中:试试,

sprite.flippedX = true; //for flipping horizontally.
sprite.flippedY = true; //for flipping vertically.
于 2015-10-26T16:12:49.943 回答