#pragma once
#include "CommonHead.h"
/**
* 全局定时器
*/
class GlobalSchedule : public TObject {
public:
// 开始全局定时器 fInterval: 时间间隔 ; fDelay: 延迟运行
static void start(float fInterval = 0.0f);
// 停止全局定时器
static void stop();
// 全局定时器暂停
static void pause();
// 全局定时器暂停恢复
static void resume();
// 全局定时器主逻辑实现
void globalUpdate(float dt);
// 如果是每一帧实现的话
void update(float dt);
private:
GlobalSchedule(float fInterval);
~GlobalSchedule();
static GlobalSchedule* m_pSchedule;
};
GlobalSchedule* GlobalSchedule::m_pSchedule = nullptr;
GlobalSchedule::GlobalSchedule(float fInterval) {
CCAssert(!m_pSchedule, "以定义,不能重复定义");
//SCHEDULE->schedule(
// schedule_selector(GlobalSchedule::globalUpdate),
// this, fInterval, false);
g_pDirector->getScheduler()->scheduleUpdateForTarget(this, 0, false);
m_pSchedule = this;
}
GlobalSchedule::~GlobalSchedule()