cocos2d学习笔记----调度器

240 阅读1分钟

调度器:处理随时间变化的过程

例如:背景滚动/发射子弹/检测碰撞等

  • 默认调度器:每一帧调用update函数(默认1秒60帧) 实现默认调度器:

    • 第一步:开启默认调度器(所有继承于Node的类都可以开启调度器) scheduleUpdate();//Node
    • 第二步:重写Node的update方法;
  • 自定义调度器:每隔多少s调用1次某个函数

    • 第一步:开启自定义调度器 schedule();
      • 参数一:填要调用的函数:schedule_selector(类名::函数名)
      • 参数二:间隔时间
      • 参数三:重复次数,如果要一直重复,则填CC_REPEAT_FOREVER或者-1
      • 参数四:第一次调用前的等待时间
    • 第二步:写一个方法,返回值为void,形参为float类型;
  • 单次调度器:延时调用某个函数(单次)

    • 第一步:开启单次调度器 scheduleOnce();
      • 参数一:填要调用的函数:schedule_selector(类名::函数名)
      • 参数二:延时的时间
    • 第二步:写一个方法,返回值为void,形参为float类型;
  • 关闭调度器:

    • unschedule():关闭自定义调度器参数:要取消调用的函数:schedle_selector(类名::函数名)
    • unscheduleUpdate:关闭默认调度器
    • unscheduleAllCallbacks:关闭所有调度器