gpt4 book ai didi

iPhone 游戏开发 : Achievement Framework?

转载 作者:行者123 更新时间:2023-12-03 20:07:55 24 4
gpt4 key购买 nike

我编写了一个简单的游戏,并希望将 GameCenter Achievements 与其集成。

我想尝试以一种干净整洁的方式来做到这一点,这样很容易添加额外的成就。

在我看来,成就包含以下内容:

  • 触发器“组”(例如,游戏结束时、碰撞时等)
  • 依赖性(例如,在获得“5 个金星”之前,您无法获得“10 个金星”)。

基于此,我尝试编写一个单例类,该类读取完整的成就列表(从 plist 中),每个成就都按触发器类及其依赖项分组。这个单例允许其他类向触发器组注册类似于@selector() 的回调(例如,“在‘game_end’触发器上,调用此函数”)。然后可以在我的游戏中的定制点干净地调用这些触发器。这产生了一个简洁的、几乎“抽象”的系统,我可以在未来的游戏中使用它。

然后是灾难;我最终遇到了 EXC_BAD_ACCESS 错误,我只能假设这是因为我将非静态类的 @selector 回调绑定(bind)到静态单例类中。错误出现在这一行:

GCAchievementsHelper *h = [GCAchievementsHelper sharedInstance];
[h addEventListener:@"game_end" target:self selector:@selector(achievementHandlerGameEnd:)];

我假设这是因为“self”(游戏层)无法传递到静态单例中?!

我真的不想在我的代码周围散布大量重复的 IF 语句来检查成就所需的所有条件...如果可能的话!

总而言之,我的问题是:

Does anybody know of an Achievement Framework? It doesn't have to be GC/OpenFeint or even ObjC compatible - even pseudo code would be great.

最佳答案

有几个 GameCenter 开源框架可以利用您的一些负载。

GameCenterManager它遵循单例模式并且非常“轻”

iOS Game Center Cache是一个功能齐全的游戏中心框架。

我建议你看看它们......

祝你好运:)

关于iPhone 游戏开发 : Achievement Framework?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7826963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com