2

你好真棒开发社区。几天来我一直在寻找这个问题的答案,但似乎找不到句柄,所以决定自己发布 Q。

我有一个游戏,其中包含用于选择项目的菜单。菜单可以有 2 -> 30 多个项目,因此它们需要滚动。还有类别菜单,当单击一个项目时,会出现一个包含该类别项目的新菜单。

我认为最有效的方法是在专用层上创建菜单所需的所有元素。问题是我不知道如何从包含菜单的 CCLayer 调用主游戏场景中定义的 addNewItems:itemsArray 函数。

或者,我应该只使用一层吗?将多个项目一起移动有点混乱和困难。

非常感谢您提供的任何帮助 - 或者为我指出一个清晰的教程或如何做到这一点的示例,因为我真的找不到任何帮助。

下面是我要创建的流程图。

谢谢!!

哈南

替代文字

4

1 回答 1

5

终于得到了David994A的回答(cocos2d论坛)

答案是给图层传递一个指向它的父图层的指针,我像这样初始化 CCLayer:

-(id) initWithParent:(CCLayer *)parentLayer;

并这样称呼它:

ItemsMenuLayer *tempLayer = [[ItemsMenuLayer alloc] initWithParent:self];

然后,从 CClayer 内部,我可以调用任何父层的函数,如下所示:

[父层函数名称];

于 2010-11-16T03:36:48.850 回答