(NO.00001)iOS游戏SpeedBoy Lite成形记(六)
来源:互联网 发布:三国杀程昱淘宝 编辑:程序博客网 时间:2024/05/17 02:14
为了能让玩家可以在比赛结束时清楚看到每位选手的成绩,我们需要在GameScene场景的track对象中添加一些新的元素.
在SpriteBuilder中打开GameScene.ccb,创建1个标签对象,使其成为track的子对象.注意不是GameScene根节点的子对象哦.
修改该标签的位置使其差不多位于第1赛道的后半场跑道中,比如我将其放在相对于父对象的(60%,3%)位置上.按照个人喜好修改字体和文字大小.
觉得比较满意时,将该label复制7次,同样是它们成为track的子对象.这样track一共包含了8个标签对象.
修改新添加标签的位置,按照1/8的倍数累加,别忘了最后要加上3%,最后的效果如下:
给这8个标签设置代码链接,分别为:_labelTrack1至_labelTrack8.
因为链接位置是Doc root var,所以它们都成为GameScene的实例对象而不是track的实例变量.再说我们也没有创建Track类.
下面回到Xcode中,打开GameScene.m新增对应的实例变量:
CCLabelTTF *_labelTrack1; CCLabelTTF *_labelTrack2; CCLabelTTF *_labelTrack3; CCLabelTTF *_labelTrack4; CCLabelTTF *_labelTrack5; CCLabelTTF *_labelTrack6; CCLabelTTF *_labelTrack7; CCLabelTTF *_labelTrack8; NSMutableArray *_labelArray;
顺便说一句,这里只有8个变量,所以手动添加还过得去.如果在SpriteBuilder中建立了成百上千的变量,还在这一个个手动添加就太傻了.
这时,一种办法是我们可以使这些变量成为某一自定义类的实例,然后在GameScene初始化方法中用Obj-C类的比较方法遍历其所有子对象,从而将所有符合该自定义类的对象过滤出来.以后有机会可以展示一下,这里就手动添加吧.
在GameScene的didLoadFromCCB方法中将这些标签添加到数组中去:
[_labelArray addObject:_labelTrack1]; [_labelArray addObject:_labelTrack2]; [_labelArray addObject:_labelTrack3]; [_labelArray addObject:_labelTrack4]; [_labelArray addObject:_labelTrack5]; [_labelArray addObject:_labelTrack6]; [_labelArray addObject:_labelTrack7]; [_labelArray addObject:_labelTrack8]; [self invisibleAllLabels];
因为这些标签应该只在比赛结束时显示出来,所以游戏开始和每次比赛开始需要将其设为不可见,所以单独写一个方法干这事:
-(void)invisibleAllLabels{ for (CCLabelTTF *label in _labelArray) { label.visible = NO; }}
下面我们要改动matchRun方法了,待会见 ;)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(六)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(一)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(三)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(四)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(五)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(七)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(八)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(九)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十一)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十二)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十三)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十四)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十五)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十六)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十七)
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十八)
- 第8周 项目1 - 建立顺序串的算法库
- 黑马程序员——基础知识-成员方法和成员变量
- jQuery的deferred对象详解
- netsh 操作实践
- 爱贝云计费接口契约鉴权说明
- (NO.00001)iOS游戏SpeedBoy Lite成形记(六)
- Sprite使用setScale后getContentSize().width的值为多少
- HDU 1251 统计难题 字典树
- 数据库连接数和数据库连接池的连接数区别?
- ALLJOYN® STANDARD CORE
- 二分法查找有序数组
- jQuery获取字符串末尾字符
- Android自定义动画之实现3D翻转的动画
- Qt4.8.5 、Qt Creator、MinGW 4.4在win7 sp1 x64 下安装(也含Qt5.0以上版本windows下安装)