Cocos2D:塔防游戏制作之旅(十六)
来源:互联网 发布:抓取ajax动态网页java 编辑:程序博客网 时间:2024/05/16 14:19
编译运行你的app,放置一些炮塔在你的地图上吧!你将看到炮塔在敌人移动如攻击范围时如何立即开始攻击,并且敌人的血条将随着攻击不断减少知道它们被人道毁灭!胜利即将来临了!
哦!Okay,这里只有少数细节还未实现你就可以得到一个完整特性的塔防游戏啦!音效应该是一个不错的尝试.并且尽管不可战胜和极端富裕很好,你的基地还是应该有能力持续抗打的能力 - 并且你需要限制玩家的金币供给.
闪耀着的炮塔:Gotta Polish It All!
开始实现显示玩家剩余的命数 - 以及当玩家失败时发生什么!
打开HelloWorldLayer.h并且添加如下3个实例变量:
int playerHp;CCLabelBMFont *ui_hp_lbl;BOOL gameEnded;
playerHP确定玩家有多少条命,CCLabelBMFont标签用来显示它们的数量.gameEnded在游戏结束时被设置!同样添加以下方法定义:
-(void)doGameOver;
现在打开HelloWorldLayer.m文件,完成以下修改:
// At the end of init, add the following lines of code:// 7 - Player livesplayerHp = 5;ui_hp_lbl = [CCLabelBMFont labelWithString:[NSString stringWithFormat:@"HP: %d",playerHp] fntFile:@"font_red_14.fnt"];[self addChild:ui_hp_lbl z:10];[ui_hp_lbl setPosition:ccp(35,winSize.height-12)];// Add the following methods-(void)getHpDamage { playerHp--; [ui_hp_lbl setString:[NSString stringWithFormat:@"HP: %d",playerHp]]; if (playerHp <=0) { [self doGameOver]; }}-(void)doGameOver { if (!gameEnded) { gameEnded = YES; [[CCDirector sharedDirector] replaceScene:[CCTransitionRotoZoom transitionWithDuration:1 scene:[HelloWorldLayer scene]]]; }}
这里添加了一个方法去减少玩家的生命,更新标签的显示以及检查是否玩家耗完了所有的生命.如果是,则游戏结束.
0 0
- Cocos2D:塔防游戏制作之旅(十六)
- Cocos2D:塔防游戏制作之旅(一)
- Cocos2D:塔防游戏制作之旅(二)
- Cocos2D:塔防游戏制作之旅(三)
- Cocos2D:塔防游戏制作之旅(四)
- Cocos2D:塔防游戏制作之旅(五)
- Cocos2D:塔防游戏制作之旅(六)
- Cocos2D:塔防游戏制作之旅(七)
- Cocos2D:塔防游戏制作之旅(八)
- Cocos2D:塔防游戏制作之旅(九)
- Cocos2D:塔防游戏制作之旅(十)
- Cocos2D:塔防游戏制作之旅(十一)
- Cocos2D:塔防游戏制作之旅(十二)
- Cocos2D:塔防游戏制作之旅(十三)
- Cocos2D:塔防游戏制作之旅(十四)
- Cocos2D:塔防游戏制作之旅(十五)
- Cocos2D:塔防游戏制作之旅(十七)
- Cocos2D:塔防游戏制作之旅(十八)
- 【Java并发编程】之十四:图文讲述同步的另一个重要功能:内存可见性
- 使用struts的Ajax支持
- 想要一个开源的深度学习构架吗? 挑选你的
- Linux上相对路径问题
- vmvare上hadoop2.6的伪分布环境搭建
- Cocos2D:塔防游戏制作之旅(十六)
- O06 - proc
- yii2 save update 数组赋值操作
- 数据结构、算法与应用 (C++描述) 第二版 1.23
- NSURLSession简介
- Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)
- 深copy,浅copy
- asterisk realtime更新错误
- java当中的定时器的4种使用方式