如何在使用C++的cocos2dx游戏中创建计时器

7

我正在开发游戏,遇到了创建计时器的问题。我需要一些逻辑,例如时间应该从60秒开始,当它达到0时游戏应该结束。我是这个平台的新手。


谷歌搜索,我的朋友 -> http://www.cocos2d-x.org/forums/6/topics/12050?r=12053 - Iosif Murariu
有许多方法可以创建计时器和时间事件,例如使用std::thread并编写一个计时器类。我通常会创建一个std::vectorstd::threads,它们都在其适当的间隔运行,我可以轻松地操纵它们。如果您接受更多答案,人们可能会给您更多帮助。 - GameDeveloper
我找到了这个帖子。http://iphonedevsdk.com/forum/iphone-sdk-development/19607-is-there-any-simple-c-timer-around.html 我试过了,但没能让它正常工作,但可能会帮助其他人 :-) 我自己会尝试使用像被接受的答案那样的调度来解决它。 - Jonny
1个回答

14

我通常使用scheduler来实现这个功能,你可以使用它在固定的时间间隔内调用一个方法,就像这样:

this->schedule(schedule_selector(Game::UpdateTimer),1.0f);

在这种情况下,它每秒调用一次“Game:UpdateTimer”。在更新计时器中,您只需将计数器减少一,当它达到零时停止计时器,如下所示:

this->unschedule( schedule_selector(Game::UpdateTimer));

在下面添加一个方法,以便调用

void Game::UpdateTimer(float dt)
{

}

干得好,伙计!谢谢! - Tai Le

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接