飞机大战-MyPlane自己飞机的实现


自己的飞机类,先判断他的isAlive为true和isExplosion为false如果满足再把他进行绘制,以及帧动画,游戏过程中两张图片不停的切换形成动画效果,当死亡是也有一个动

画。


package com.example.qgns;

import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;

public class MyPlane extends GameObject {
	private Bitmap myPlane[]=new Bitmap[2];//定义数组图片
	private Bitmap myPlaneExplosion[]=new Bitmap[4]; //爆炸数组图片
	private float middle_x;//因为子弹的位置与飞机位置有关
	private float middle_y;//这两个参数传给子弹的
	
	public MyPlane(Resources res) {
		super(res);
		isAlive=true;//设为存活状态
		initBitmap();
	}
	
	@Override
	public void initScreen(float screen_width, float screen_height) {//初始化开始位置
		super.initScreen(screen_width, screen_height);
		object_x=screen_width/2-object_width/2;
		object_y=screen_height-object_height*2;
		
		middle_x=object_x+object_width/2;
		middle_y=object_y;
	}

	@Override
	public void initBitmap() {//初始化图片
		for(int i=0;i=myPlane.length){
					currentFrome=0;
				}
			}else{
				canvas.drawBitmap(myPlaneExplosion[currentFrome], object_x, object_y, paint);
				currentFrome++;
				if(currentFrome>=myPlaneExplosion.length){
					currentFrome=0;
					isAlive = false;
				}
			}
		}
	}
	
	public void initObject_xy(float x,float y){//到时候触摸屏幕时调用的方法,随手指移动而移动
		this.middle_x=x;
		this.object_x=x-object_width/2;
		this.middle_y=y-object_height;
		this.object_y=y-object_height;
	}
		
	public float getMiddle_x(){
		return middle_x;
		
	}
	
	public float getMiddle_y(){
		return middle_y;
	}

	@Override
	public void release() {//图片回收操作
		for(int i=0;i



你可能感兴趣的:(Android飞机大战游戏开发)