【求助】如何实现精灵按住持续几秒出响应?

各位:
刚开始接触cocos2d-x,网上的文档和教程都不是很多,所以问题比较弱。

我现在想实现一个 精灵,一直按住2秒后,响应一个事件,请问有什么好的方法可以直接使用吗?

下列是我实现的伪代码:

onTouchBegan
{
_pressed = true;
_lasttime = 当前时间戳; (不知道如何获取)
}

onTouchEnd
{
_pressed = flase;
}

updateSchedul (ccTime dt)
{
if (_pressed)
{
if(当前时间戳 - _lasttime > 2)
{
foo ();
_lastime = 当前时间戳;
}

 ....(略,处理不到时间内,如果松开了。)
}

}

方法一: 定义一个类成员变量用于计算累计时间 onTouchBegan进入赋值为0,update函数中不断累加delta,onTouchEnd中判断变量数值。
方法二:可以获取onTouchBegan时的系统时间和onTouchEnd时的系统时间,判断中间累计时间。

— Begin quote from ____

jinnaluo 发表于 2012-4-28 10:58 url

转别人的代码,发给你做参考:
static inline float millisecondNow() {
struct cc_timeval now;

— End quote

呵呵。就这个了。很实用。谢谢你

但是不知道为什么,包含了下面的文件,#include “cocos2d.h”。并且命名空间USING_NS_CC;

依然找不到cc_timeval和CCTime。其他一切正常,就这个出问题!

#include “platform.h” 包含了这个,就解决了。