蓝懿iOS编写小游戏实现新功能

今天是练习日,通过几天的系统学习,我对基础的一些知识有了简单的了解,今天用了一天的时间通过整理几天所学到的东西,成功编写了一个简单的小游戏。游戏中几乎用到了学到的所有控件功能,Label,text,UiImageView,UiButton,NsTimer等。
  今天我自己编写的游戏是实现一个角色图片通过设置好的四个button 按钮点击控制它的移动,中间有三个障碍图片,碰到障碍会减少血量,并且回到起始点。检测碰撞的地方用到了NsTimer的知识,其中还有一个雷区,雷区里通过问李国斌老师学会了新知识,[Image removeFromSubview];实现了把之前的产生图片抹除。
虽然是一个很简单的小游戏,虽然是一个很多BUG的游戏,但是我还是很高兴,毕竟是自己独立编写的
下面是其中一段代码:

//实现边框左右的排布

    for (int j=0; j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">700; j=j+367) {

        for (int i=0; i<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">500; i++) {

            UILabel*biankuang2=[[UILabel alloc]initWithFrame:CGRectMake(j, i*1088)];

            if (i%3==0) {

                biankuang2 .backgroundColor=[UIColor redColor];

                

            }else if (i%3==1){

                biankuang2 .backgroundColor=[UIColor blueColor];

                

            }else{

                biankuang2 .backgroundColor=[UIColor blackColor];

                

            }

            [self.view addSubview:biankuang2];

            

        }

        

    }

    

    

    //    下面的_time1是控制三个障碍图片运动

    

    _time1=[NSTimer scheduledTimerWithTimeInterval:.1 target:self selector:@selector(move1) userInfo:nilrepeats:YES];

    //   下面的_time2时控制雷区出现地雷

    _time2=[NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(diLei)userInfo:nil repeats:YES];

    

    //判断是否相撞

    _time3=[NSTimer scheduledTimerWithTimeInterval:.02 target:self selector:@selector(crash)userInfo:nil repeats:YES];

}

///跳出页面程序

//        碰撞检测


-(void)fly{

    _snowFlake.center=CGPointMake(_snowFlake.center.x-_qq, _snowFlake.center.y+_qq);

    if (_snowFlake.center.x<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">5) {

        _snowFlake.center=CGPointMake(388, _snowFlake.center.y);

        

    }else if (_snowFlake.center.y>666){

        _snowFlake.center=CGPointMake(_snowFlake.center.x, 66);

    }

}


-(void)crash{

    if (CGRectIntersectsRect(_iv4.frame, _iv3.frame)||CGRectIntersectsRect(_iv4.frame,_iv2.frame)||CGRectIntersectsRect(_iv4.frame, _iv.frame)||CGRectIntersectsRect(_iv4.frame, _iv5.frame)) {

        _iv4.center=CGPointMake(120650);

        //实现了发生碰撞一次剩余血量就减一

        _blood--;

        //这里的text一定要放在这里写。显示剩余剩余血量。

        

        

        _lb1.text=@(_blood).stringValue;

        if (_blood<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">1) {

            UILabel*over=[[UILabel alloc]initWithFrame:CGRectMake(00400666 )];

            over.text=@"大菜逼,重来吧!";

            over.font=[UIFont systemFontOfSize:50 weight:33];

            over.textColor=[UIColor redColor];

            over.backgroundColor=[UIColor blueColor]

            ;

            [self.view addSubview:over];

        }

        

        _level++;

        _lb2.text=@(_level).stringValue;

        // ********每个_kk的值在控制图片运动的时候有负值,所以在这里加上

        //         if判断是否为正数,如果是正数就加,负的就减

        

        

        if (_kk>0) {

            _kk+=10;

        }else{

            _kk+=-10;

        }

        if (_kk2>0) {

            _kk2+=10;

        }else{

            _kk2+=-10;

        }

        if (_kk3>0) {

            _kk3+=10;

        }else{

            _kk3+=-10;

        }

        

        if (_level>=2) {

            UIImageView*good=[[UIImageView alloc]initWithFrame:CGRectMake(00380666)];

            good.image=[UIImage imageNamed:@"08.jpg"];

            [self.view addSubview:good];

        }

        

    }

    

}


分享到:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值