Cocos2d iphone Cocos2D:使用自定义间隔运行父更新方法
我试图为我的游戏建立一个小的关卡系统。我想要一个更新的方法,照顾我的游戏主要逻辑。因此,我在父类.h文件中声明了一个方法: h级:Cocos2d iphone Cocos2D:使用自定义间隔运行父更新方法,cocos2d-iphone,Cocos2d Iphone,我试图为我的游戏建立一个小的关卡系统。我想要一个更新的方法,照顾我的游戏主要逻辑。因此,我在父类.h文件中声明了一个方法: h级: -(void)gameLogicTick:(ccTime)dt; 然后我在Level.m中进行实现,不认为确切的代码是相关的 我创建了一个名为Forest的Level子类。在Forest init方法中,我想指定gameLogicTick的间隔,我这样做了: [self schedule:@selector(gameLogicTick:)interval:5.0f
-(void)gameLogicTick:(ccTime)dt;
然后我在Level.m中进行实现,不认为确切的代码是相关的
我创建了一个名为Forest的Level子类。在Forest init方法中,我想指定gameLogicTick的间隔,我这样做了:
[self schedule:@selector(gameLogicTick:)interval:5.0f];
这使得我的游戏崩溃(5秒后),没有调试消息
那么,如何创建一个计划更新方法,在其中可以指定当前类中的间隔呢?不要尝试与父类混为一谈
gameLogicTick:
方法。让它全速运转。在你的森林里。m,只要打个电话
[self schedule:@selector(update:) interval: 5.0f];
然后确保在林实现中有适当的
更新:(ccTime)
增量。只要不要将其命名为与父类的方法相同的名称,您就不会有任何问题。您所做的一切都可以。可能林对象被解除分配(例如,因为它从未作为子节点添加到父节点),下次CCScheduler更新计划的方法时,它将尝试在已发布的实例上运行您的方法
您应该在Xcode中启用全局异常断点,以获取更多的崩溃信息和崩溃发生的确切位置。那么,我必须在每个级别的子类中使用该方法,也许我必须找到另一种方法。是的,我在更新方法中使用它,没有间隔<代码>[self schedule:@selector(勾选:)]代码>这很好。更新:问题似乎是我在实现中调用的方法。