• Android基于box2d开发弹弓类游戏[六]移动的镜头&添加目标


    九.移动的镜头

    子弹的发射已经完成了。下一个就是要增进用户体验的时候了。现在运行游戏,当子弹发射以后,我们还需要拖动屏幕才能看到子弹运行的轨迹,这样的体验是非常差的。接下来完成,移动的镜头功能。就是屏幕显示区域跟随子弹运动。

    这个功能之需要计算发射出去的子弹时时的位置就可以了。比较好实现。

    logic方法的if((body.m_userDatainstanceof Bullet)逻辑末尾加入。

    if(moveing_flag)//判断子弹是否处于运动状态
             {
                //获取到移动的偏移量。(ScreenW/2.0f用于使子弹处于屏幕中间)
                 float ww=this.bullet.iterator().next().getPosition().x * RATE - ScreenW / 2.0f;
                 //防止镜头移出游戏场景
                 move_X=(ww<5)?0:(ww>580)?586:ww;
             }

    此时,移动的镜头就已经完成了。运行下游戏,是不是非常酷啊!

    十.创建目标

    此时所有的准备都已经就绪了,接下来就要引进需要攻击的目标了。

    有限创建一个Target.java类。并且实现BodyInterface接口。和之前创建子弹一样,在这里不再赘述了。

    回到MainView.java主类中,定义需要用到的变量。

    private Set<Body> targetBodies = new HashSet<Body>();//创建存放目标的集合

    然后在游戏世界中创建出目标物体。和之前创建子弹一样。不再赘述。

    当创建目标之后,可以运行游戏。查看下效果。

    最后发射子弹吧!

    写到在这里我们系列的文章就暂时告一段落了。但是我们只是完成了一个简单的游戏界面。距离真正的游戏还有一段的距离。接下来就要各位博友自己去拓展功能了。我也会不定期的更新最新的功能的。尽请关注!~~

     

     

     

     

  • 相关阅读:
    ex01 温度转换1
    12 字典的遍历在 Python2 与 Python3 中区别
    11 序列中有多个最值时会索引出哪个
    10 isalpha() 对于字母的定义
    09 Python3 的深拷贝与浅拷贝
    08 in
    07 len()
    06 “杠零”与空字符
    导航点击字体变色
    清除浮动
  • 原文地址:https://www.cnblogs.com/81du/p/2799186.html
Copyright © 2020-2023  润新知