【计分板】根据5个CCSprite“00000”,(通过每个位数来动态修改图片); 通过CCLabelBMFont 修改;
2014-05-14 20:15
267 查看
代码中用到纹理
解释下纹理:纹理就是一块内存,这块内存中存放的是按照指定的像素格式填充的图片像素信息。
CCTexture2D: 纹理,即图片加载入内存后供CPU和GPU操作的贴图对象。
CCTexturePVR:处理PVR文件生成纹理的类,提示:微笑 大家可以用它解析愤怒的小鸟中的图片。
CCTextureCache:纹理管理器,负责加载图片并对生成的纹理进行管理。通过“字典”来进行快速的查询。
CCTextureAtlas:纹理块管理器,如果图片是由多个小图块组成的,则纹理块管理器用来存储这些小图块的相关信息,以方便绘制相应图块。
bool GameMain::init() { if ( !CCLayer::init() ) { return false; } CCSize size = CCDirector::sharedDirector()->getWinSize(); this->setContentSize(size); // bits = CCArray::create(5); bits=new CCArray(5); CCSprite *title= CCSprite::create("score.png"); title->setPosition(ccp(size.width/2 + 120,size.height - 15)); title->setScale(0.5); addChild(title); for(int i = 0;i < 5;i ++){ CCSprite * shu = CCSprite::create("shu.png"); ui = shu->getTexture(); //获得指定纹理 shu->setScale(0.5); shu->setTextureRect(CCRectMake(234,0,26,31)); shu->setPosition(ccp(size.width - 15 - i * 15,size.height - 15)); bits->addObject(shu); //增加一个现有指定object addChild(shu); } bits->retain(); mark = 999; //按位设置数字 int temp = mark % 10; if(temp > 0){ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(0))->setTextureRect(CCRectMake((temp - 1) * 26,0,26,31)); }else{ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(0))->setTextureRect(CCRectMake(234,0,26,31)); } temp = (mark % 100) / 10; if(temp > 0){ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(1))->setTextureRect(CCRectMake((temp - 1) * 26,0,26,31)); }else{ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(1))->setTextureRect(CCRectMake(234,0,26,31)); } temp = (mark % 1000) / 100; if(temp > 0){ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(2))->setTextureRect(CCRectMake((temp - 1) * 26,0,26,31)); }else{ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(2))->setTextureRect(CCRectMake(234,0,26,31)); } temp = (mark % 10000) / 1000; if(temp > 0){ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(3))->setTextureRect(CCRectMake((temp - 1) * 26,0,26,31)); }else{ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(3))->setTextureRect(CCRectMake(234,0,26,31)); } temp = mark / 10000; if(temp > 0){ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(4))->setTextureRect(CCRectMake((temp - 1) * 26,0,26,31)); }else{ ((CCSprite *)bits->objectAtIndex(0))->setTexture(ui); ((CCSprite *)bits->objectAtIndex(4))->setTextureRect(CCRectMake(234,0,26,31)); } //游戏结束 //菜单项 return true; }
--------------------------------------------------2014/5/17更-----------------------------------------------
CCLabelBMFont:CCLabelBMFont 相当于每次改变只改变了图片坐标,而CCLabelTTF要重新渲染.这个类使用之前,需要添加好字体文件,包括一个图片文件 (**.png) 和一个 字体坐标文件 (**.fnt)( .fnt
文件定义了 图像文件的名称,以及每个字符对应的位置信息)。只能用 scale 属性进行缩放来调整大小。
所需资源:font.png
font.fnt
//加入积分板
CCLabelBMFont * _scoreDisplay = CCLabelBMFont::create("00000", "font.fnt", _screenSize.width * 0.3f, kCCTextAlignmentCenter); _scoreDisplay->setAnchorPoint(ccp(1,0)); _scoreDisplay->setPosition(ccp(_screenSize.width * 0.95f, _screenSize.height * 0.88f)); this->addChild(_scoreDisplay, 0);
相关文章推荐
- 通过修改ajaxFileUpload.js实现多图片动态上传并实现预览
- 使用Qt将一系列图片通过网络发送到客户端动态显示的参考代码(修改一下可以用作远程网络监控)
- 使用Qt将一系列图片通过网络发送到客户端动态显示的参考代码(修改一下可以用作远程网络监控)。
- dskinlite(uieasy mfc界面库)使用记录3:绘制动态元素(按钮控件通过隐藏方式修改图片显示)
- dskinlite(uieasy mfc界面库)使用记录3:绘制动态元素(按钮控件通过隐藏方式修改图片显示)
- [原创]通过动态Sql语句,一次性彻底删除或者修改SBO的某个字段对应内容的信息
- asp.net通过实现IHttpHandler接口方法给图片添加水印图片(动态添加,不破坏原图片,但是耗资源)
- c# 通过修改图片对象的文件的字节 变相"加密""解密"图片在磁盘的存储
- c# 通过修改图片对象的文件的字节 变相"加密""解密"图片在磁盘的存储
- ACCESS中通过VBA动态修改传递查询的SQL串
- jsp/servlet使用ajax动态加载dtree, dtree样式/图片修改 (java 生成dtree servlet json)
- c# 通过修改图片对象的文件的字节 变相"加密""解密"图片在磁盘的存储
- 在QT中通过摄像头动态显示图片
- jQuery通过滚轮滚动动态加载图片
- tabHost动态改标题文字,动态修改图片
- IE下上传图片时预览图片(1.IE7/IE8测试通过; 2.能根据比例缩放图片 )
- jsp/servlet使用ajax动态加载dtree, dtree样式/图片修改 (java 生成dtree servlet json)
- codebehind动态修改表格的背景图片
- 动态修改的图片滚动效果(asp.net版本)
- 哎,今天头都大了好多。不写了,明天再继续写根据Xml中的内容动态生成图片!