当前位置:   article > 正文

Android studio 飞机大战实训报告_android studio飞行的小鸟课程实训报告

android studio飞行的小鸟课程实训报告
1.游戏分析
飞机大战中的主要“角色”有:
1.玩家飞机
2.敌方飞机
3.玩家飞机发送的子弹
4.敌方Boss飞机发送的子弹
我们需要控制的有:
1.绘制屏幕内的角色
2.控制角色的逻辑,比如:敌方飞机与我方飞机的碰撞检测,我方飞机发射的子弹与敌方飞机之间的碰撞检测,敌方Boss飞机发射的子弹与我方飞机直接的碰撞检测等等。
资源:
要完成一个游戏,还要有资源的加载,比如飞机,子弹等图片的加载等,音效的加载。
游戏背景的绘制

其实是一张图,这张图可以首尾相接,也即是“卷轴”,原理就是卡马克卷轴算法的原理。


2、如何绘制循环滚动的背景图片

在MySurfaceView中创建run方法

调用mipmap中的背景图片 

再创建BackGround类

代码如下:

  1. package com.example.lenovo.myapplication;  
  2.   
  3. import android.graphics.Bitmap;  
  4. import android.graphics.Canvas;  
  5. import android.graphics.Paint;  
  6.   
  7. public class BackGround {  
  8.     private int y1;  
  9.     private  int y2;  
  10.     private Bitmap bitmap;  
  11.     public BackGround(Bitmap bitmap){  
  12.         this.bitmap = bitmap;  
  13.         y1 = 0;  
  14.         y2 = y1-bitmap.getHeight();  
  15.     }  
  16.     public void draw(Canvas canvas){  
  17.   
  18.         logic();  
  19.         Paint paint = new Paint();  
  20.         canvas.drawBitmap(bitmap,0,y1,paint);  
  21.         canvas.drawBitmap(bitmap,0,y2,paint);  
  22.     }  
  23.     public void logic(){  
  24.         y1+=5;  
  25.         y2+=5;  
  26.         if(y1>=MySurfaceView.Height){  
  27.             y1=y2-bitmap.getHeight();  
  28.         }  
  29.         if(y2>=MySurfaceView.Height){  
  30.             y2=y1-bitmap.getHeight();  
  31.         }  
  32.     }  
  33. }  
3、如何绘制飞机
绘制敌机:

  1. package com.example.lenovo.myapplication;  
  2.   
  3. import android.graphics.Bitmap;  
  4. import android.graphics.Canvas;  
  5. import android.graphics.Paint;  
  6.   
  7. import java.util.function.BooleanSupplier;  
  8.   
  9. public class BossPlane {  
  10.     private Bitmap bitmap;  
  11.     private int x,y;  
  12.     private int frameW,frameH;  
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/252017
推荐阅读
相关标签
  

闽ICP备14008679号