zoukankan      html  css  js  c++  java
  • 6.cocos2d设置定时器

    • T1LayerAnchorPoint.h
       1 #pragma once
       2 #include "cocos2d.h"
       3 USING_NS_CC;
       4 
       5 class T1LayerAnchorPoint:public CCLayer
       6 {
       7 public:
       8     //create->init
       9     static T1LayerAnchorPoint*create();
      10     bool init();
      11     static CCScene *scene();
      12 
      13     //画线
      14     virtual void draw(cocos2d::Renderer *renderer, const cocos2d::Mat4& transform, uint32_t flags);
      15     //定时器函数
      16     void mySchedule(float dt);
      17 
      18     CCSprite *m_spr;
      19 };
    • T1LayerAnchorPoint.cpp
       1 #include "T1LayerAnchorPoint.h"
       2 
       3 //创建层
       4 T1LayerAnchorPoint*T1LayerAnchorPoint::create()
       5 {
       6     T1LayerAnchorPoint *pRet = new T1LayerAnchorPoint();
       7     if (pRet && pRet->init())
       8     {
       9         pRet->autorelease();
      10     }
      11     else
      12     {
      13         delete pRet;
      14         pRet = NULL;
      15     }
      16     return pRet;
      17 
      18 }
      19 
      20 //初始化层
      21 bool T1LayerAnchorPoint::init()
      22 {
      23     CCLayer::init();
      24 
      25     CCSize winSize = CCDirector::sharedDirector()->getWinSize();
      26     m_spr = CCSprite::create("anchor1.png");
      27     //设置锚点
      28     m_spr->setAnchorPoint(ccp(0.5, 0.5));
      29     //设置放大大小
      30     m_spr->setScale(5.0f);
      31     m_spr->setPosition(ccp(winSize.width / 2, winSize.height / 2));
      32     addChild(m_spr);
      33     //设置定时器,每隔0.1秒调用一次mySchedule函数 TILayerAnchorPoint是一个宏定义,见下
      34     schedule(schedule_se  lector(T1LayerAnchorPoint::mySchedule), 0.1);
      35 
      36     return true;
      37 }
      38 
      39 CCScene *T1LayerAnchorPoint::scene()
      40 {
      41     CCScene *scene = CCScene::create();
      42     T1LayerAnchorPoint *layer = T1LayerAnchorPoint::create();
      43     scene->addChild(layer);
      44     return scene;
      45 }
      46 
      47 void T1LayerAnchorPoint::draw(cocos2d::Renderer *renderer, const cocos2d::Mat4& transform, uint32_t flags)
      48 {
      49     CCSize winSize = CCDirector::sharedDirector()->getWinSize();
      50     ccDrawColor4B(255, 0, 0, 255);
      51 
      52     ccDrawLine(ccp(0, winSize.height / 2), ccp(winSize.width, winSize.height / 2));
      53     ccDrawLine(ccp(winSize.width / 2, 0), ccp(winSize.width / 2, winSize.height));
      54 }
      55 
      56 void T1LayerAnchorPoint::mySchedule(float dt)
      57 {
      58     static float ro = 0;
      59     ro += 1;//每隔0.1秒度数加1
      60     m_spr->setRotation(ro);
      61 }

    详解schedule_selector宏定义

  • 相关阅读:
    122. Best Time to Buy and Sell Stock II
    121. Best Time to Buy and Sell Stock
    72. Edit Distance
    583. Delete Operation for Two Strings
    582. Kill Process
    indexDB基本用法
    浏览器的渲染原理
    js实现txt/excel文件下载
    git 常用命令
    nginx进入 配置目录时
  • 原文地址:https://www.cnblogs.com/xiaochi/p/8343030.html
Copyright © 2011-2022 走看看