(NO.00001)iOS游戏SpeedBoy Lite成形记(二十一)
来源:互联网 发布:java线程超时控制 编辑:程序博客网 时间:2024/05/16 06:26
现在游戏中如果钱用光了赌场也是不管的,所以我们要加上Game Over的逻辑。
出现游戏结束条件很简单,就是GameState的totalMoney <= 0.而在游戏结束时我们要做些什么呢?有很多种展现的形式,我们这里就弹出一个菜单,然后让玩家选择重新开始或是回到游戏主菜单。
打开SpriteBuilder,新建一个GameOverLayer.ccb文件,类似于PopupMoneyLayer.ccb的设置,这里不再赘述。我们添加2个按钮,按合适的位置布局它们的位置,设置Root节点自定义类为PopupLayer。然后分别设置按钮的的回调方法为gameRetry和gameReturnMain,做好的窗口界面如下:
打开Xcode,在PopupLayer.m中实现上述2个方法:
-(void)gameRetry{ GameState *gameState = [GameState sharedInstance]; gameState.totalMoney = 1000; [self.gameScene removePopup];}-(void)gameReturnMain{ CCScene *mainScene = [CCBReader loadAsScene:@"MainScene"]; CCTransition *trans = [CCTransition transitionCrossFadeWithDuration:1]; [[CCDirector sharedDirector] replaceScene:mainScene withTransition:trans];}
同样我们要在适当的时候弹出该菜单窗口,自然在每场比赛结束的时候判断,即在matchRun中block里:
if ([self isGameOver]) { CCLOG(@"Game Over"); [self showPopupNamed:@"Layers/GameOverLayer"]; }
在GameScene.m补全isGameOver方法:
-(BOOL)isGameOver{ GameState *gameState = [GameState sharedInstance]; if (gameState.totalMoney <= 0) { return YES; } return NO;}
好了,现在游戏结束时玩家可以选择重试或者是返回主界面鸟。
请先忽略背景超大的大头贴和万丈光辉,我们后面自会提及。
当然这只是简单的App,在真实的游戏中我们可以消耗宝石,降低难度,提示玩家充值,加入可恶的广告等等诸多大法。
0 0
- (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成形记(九)
- http和socket之长连接和短连接区别
- ssoj2454愉快的logo设计(dp)
- android studio 断点调试
- spring整合hibernate(注解、xml)applicationContext.xml配置
- IOS--JSON解析之JSONKit使用
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二十一)
- 四种强制类型转换的总结
- JAVA事务
- LeetCode:Ugly Number
- linux因MySQL数据量激增而磁盘空间爆满的解决方案
- Mysql FIND_IN_SET函数
- oracle 透明网关 to sql server
- Javascript use strict模式和对象
- 音视频软件助力智能门禁技术发展