码迷,mamicode.com
首页 > 移动开发 > 详细

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

时间:2015-12-22 21:11:26      阅读:329      评论:0      收藏:0      [点我收藏+]

标签:

今天是练习日,通过几天的系统学习,我对基础的一些知识有了简单的了解,今天用了一天的时间通过整理几天所学到的东西,成功编写了一个简单的小游戏。游戏中几乎用到了学到的所有控件功能,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*10, 8, 8)];

            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(120, 650);

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

        _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(0, 0, 400, 666 )];

            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(0, 0, 380, 666)];

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

            [self.view addSubview:good];

        }

        

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

标签:

原文地址:http://www.cnblogs.com/lanyisanqqi/p/5067864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!