您当前的位置: 首页 >  游戏

(NO.00001)iOS游戏SpeedBoy Lite成形记(二十二)

发布时间:2015-10-26 15:22:14 ,浏览量:0

自己的游戏自己更需要多玩,这样才能首先发现不足的地方。所以本猫到现在已经忍一个地方很久了,就是弹出moneyLayer后每次都要输入数字才能关闭,这多少让人不爽。于是本篇我们就修正这个小小的不便。

首先在第一次弹出该窗口时我们随机设置一个合适的数字,如果是第二次弹出该窗口我们只是保持原先的值不便即可。

我们打开PopupLayer.m修改didLoadFromCCB方法:

-(void)didLoadFromCCB{ if (_moneyText) {
        _moneyText.textField.keyboardType = UIKeyboardTypeNumberPad; NSInteger money = [self autoMoney];
        _moneyText.string = [NSString stringWithFormat:@"%d",money];
    } if (_recordsLabel) {
        [self initRecordsLabel];
    }
}

添加autoMoney方法:

-(NSInteger)autoMoney{
    GameState *gameState = [GameState sharedInstance]; NSInteger money; if (gameState.money == 0) {
        money = gameState.totalMoney/10; if (money == 0) {
            money = 1;
        }
    }else money = gameState.money; return money;
}

这里的判断条件为如果gameState.money为0表示用户还未设置值,取总金额的1/10,最低值为1,否则返回上一次的值.因为每次比赛结束后matchRun会将该该值设为0,所以逻辑是正确的.

为了照顾一些疯狂的赌徒,考虑到他们的要输光的渴望,我们再添加一个他们大爱的功能:全压!

在SpriteBuilder中修改PopupMoneyLayer.ccb文件布局如下:

这里写图片描述

即添加一个按钮,然后设置回调方法为:allMoney.

我们回到Xcode中实现该方法:

-(void)allMoney{
    GameState *gameState = [GameState sharedInstance]; gameState.money = gameState.totalMoney; [self.gameScene removePopup]; }

好了,修改了这2个小问题后方便了许多,本猫不禁的又多玩了几把 ;)

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    108697博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.2262s