在我的游戏中,我有一系列头像,目前每个头像都有一个小的矩形容器,表示这个图片是一个按钮,可以点击。
但是,我意识到我需要更改容器的颜色来表示视觉效果(例如按钮单击)。
例如:
关闭状态 = 灰色容器。开启状态 = 红色容器
与其在关闭/开启状态下重复每个化身,我想将容器和化身分开,有点像这张粗略的绘图;
+------+ +------+
| | | | O
| OFF | | ON | / \
| | | | ---
+------+ +------+
因此,我们将关闭容器、开启容器和化身分开。
然后,在我的游戏中,我希望能够使用我想要使用的图层重新构建精灵,此外我希望新构建的精灵像一个单一的 CCSprite 一样,所以我可以正确定位它,或者做其他事情与精灵。
有点像从相互叠加的各种 CCSprite 中创建 CCSprite。
因此,如何将多个 sprite 叠加在一起,然后使用分层的 CCSprite 创建一个 CCSprite?
谢谢。
/编辑:添加了一些代码。
我使用 CCLayer 创建了一些代码,然后将我的精灵添加为图层的一部分。
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:
@"avatars.plist"];
CCSpriteBatchNode *spriteSheet = [CCSpriteBatchNode
batchNodeWithFile:@"avatars.png"];
[self addChild:spriteSheet];
CCSprite *empty = [CCSprite spriteWithSpriteFrameName:@"hold_empty.png"];
CCSprite *boss1 = [CCSprite spriteWithSpriteFrameName:@"hold_boss_1.png"];
CCLayer *holderExample = [[CCLayer alloc] init];
[holderExample setContentSize:CGSizeMake(70, 72)];
[holderExample setPosition:CGPointMake(100, 100)];
[holderExample addChild:empty];
[holderExample addChild:boss1];
[self addChild:holderExample];
这似乎制作了一个里面有两个精灵的图层。这似乎是对的,但我不确定这是否正确,因为我不确定是否可以使其可点击或处理其他事件。
另外,我想为颜色添加一个图层。
在 Z 顺序中:
1) -2 空.png
2)-1个颜色层
3) 0个头像