CocosX学习实录01

CocosX学习实录01

http://www.eoeandroid.com/thread-212558-1-1.html

AppDelegate

cocos2d中对触摸事件做出响应前需要首先把触摸点转化到GL坐标系

AppDelegate有2用:

1)设置贞数,iphone3是60,iphone4+是30.

2)#include "HelloWorldScene.h"  改称你的主程序名,BuildingController.h


CCTMXTiledMap对象

objectGroupNamed获得对象层,CCTMXObjectGroup对象。

layerNamed获得对象层


触摸的写法

location = CCDirector::sharedDirector()->convertToGL(location);

转换坐标

tileCoordForPosition 根据鼠标位置计算单元格坐标

fminf表示取最小值 Math.min(a,b)

fmaxf表示取最大值Math在。msc(a,b)












    //取部分的做法
    /*
    CCRect rect = CCRectZero;
    CCRect bounds = CCRectMake(0, 0, 320, 320);
    CCSprite* SPbg = CCSprite::create("FloorShow.png",bounds);
    */
下面这些没用
    //做法1 不能旋转喔,注册点在左下角,
    /*
    CCSprite* SPbg = CCSprite::create("FloorShow.png");
    SPbg->setAnchorPoint(ccp(0,0));
    //SPbg->setRotation(60.0);
     this->addChild(SPbg, 0);
     */

用Tile做地图,生成文件tmx,里面的路径,有斜杠,Resources/subArt/ ,会报错。

路径问题

地图有CC类,不用写成下面

  
    /*
    int a =6;
    int b = 9;
    int len=a*b;
    for (int i=0; i< len; i++) {
        CCSprite* mc = CCSprite::create("Sward128.png");
        mc->setAnchorPoint(ccp(0,0));
        
        
        int x = 110 * (i % a);		//50 水平间距,i 增量,a 水平数量
        int y = 110 * ((i - i % a) / a); //100 垂直间距
        
        x+=40;
        
        mc->setPosition(ccp(x, y) );
        this->addChild(mc, 0);
        
    }*/

地图

    CCTMXTiledMap* map  = CCTMXTiledMap::CCTMXTiledMap("demo.tmx");
    addChild(map, 1, tagTileMap);
    map->setPosition(ccp(0, 0));

设置this->setTouchEnabled(true);的位置,是在onENter里

this->setTouchEnabled(true);

不是在init。

float转char的写法

char buffer[100];
        //sprintf(buffer, "%d",(int)scale);
        /*
        char *buffer = (char *)malloc(1024);
         sprintf(buffer, "%f",scale);
         CCLog("%f",(int)scale*10000);





  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值