objective-c - 实现类似场景的最有效方法

标签 objective-c ios cocos2d-iphone

所以我正在用 cocos2d 创建一个游戏,我的很多场景(不是全部,但很多),都会有一个你可以称之为“记分板”的东西,它们会有基本的原理。我想知道如何才能让“游戏场景”都实现记分牌呢?

我想这可以使用像类别这样的东西,但我对 iOS/obj-c 相当陌生,所以我不知道这是否是正确的方法。

在 Java 中,我可能可以将所有场景子类化,并让父类(super class)完成所有记分板处理,但我不知道如何在 iOS/obj-c 中做到这一点。

谢谢

最佳答案

子类 CCNode 或任何其他合适的类(CCScene、CCLayer,这并不重要)。将此类命名为 MyScoreboard。像任何其他场景一样设计您的记分板节点,通过向其添加节点并定位它们。

然后,无论您在哪里需要记分板,只需创建一个实例并将其添加到节点层次结构中即可:

MyScoreboard* scoreboard = [[MyScoreboard alloc] init];
[self addChild:scoreboard];

根据需要修改 init 参数 (initWithScore:Player:WhatNot:)。

关于objective-c - 实现类似场景的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10687459/

相关文章:

ios - Realm :结果<T> 和列表<T>

objective-c - 如何正确使用 CCSpriteFrameCache 和 CCSpriteBatchNode?

cocos2d-iphone - Cocos2d 手写识别....如何...?

objective-c - 如何在 ARC 下释放带有 block 完成处理程序的对象?

ios - 使用自定义委托(delegate)与 NSNotification 与 NSUserDefaults 状态

iphone - 如何在一个 View 中显示两个图像 - iphone

objective-c - IOS:默认属性值

ios - UIDragPreviewParametersvisiblePath 自定义形状

ios - 用户先前注销后使用无效数据错误地登录

iphone - Cocos2d 抖动/加速度计问题