项目实战---飞机大战---初学者学习使用详解

Posted A 小码农

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目实战---飞机大战---初学者学习使用详解相关的知识,希望对你有一定的参考价值。

面向对象项目实战---飞机大战day01---初学者很容易上手

需求分析


运行项目效果,进行分析。

  • 敌人分三种:小敌机、大敌机、小蜜蜂
    英雄机可以发射子弹,子弹可以打敌人
  • 子弹打掉小敌机----------玩家得1分
    子弹打掉大敌机----------玩家得3分
    子弹打掉小蜜蜂----------英雄机得奖励(1命、40火力值)
  • 英雄机的火力值为0,则为单倍火力(一发子弹)
    英雄机的火力值大于0,则为双倍火力(两发子弹)
    发射一次双倍火力,则火力值减2
  • 敌人可以和英雄机撞,撞上之后:
    英雄机减命,同时,英雄机清空火力值
    当英雄机的命数为0时,则游戏结束

day01

设计对象类:
1.找对象:英雄机、子弹、小敌机、大敌机、小蜜蜂、天空
2.抽类:Hero、Bullet、Airplane、BigAirplane、Bee、Sky
3.设计类中的成员变量和方法:
4.创建对象并测试:

创建包:
cn.tedu.shoot
创建类:
Hero
Airplane
BigAirplane
Bullet
Bee
Sky
World

代码实现:

Airplane类:

package cn.tedu.shoot;

//小敌机类
public class Airplane 

	//小敌机的属性
	int width;//宽
	int height;//高
	int x;//x轴
	int y;//y轴
	int step;//速度
	//构造方法
	public Airplane() 
	
	//有参构造
	public Airplane(int width,
		int height,int x,int y,int step) 
		//为属性赋值
		this.width=width;
		this.height=height;
		this.x=x;
		this.y=y;
		this.step=step;
	
	//编写一个输出小敌机信息的方法show
	public void show() 
		System.out.println("宽:"+width+",高:"+height);
		System.out.println("x:"+x+",y:"+y);
		System.out.println("速度:"+step);
	
	





Bee类:

package cn.tedu.shoot;

public class Bee 

	int width;
	int height;
	int x;
	int y;
	int xStep;//横向移动速度
	int yStep;//纵向移动速度

	public Bee() 
	
	public Bee(int width,int height,
			int x,int y,int xStep,int yStep) 
		this.width=width;
		this.height=height;
		this.x=x;
		this.y=y;
		this.xStep=xStep;
		this.yStep=yStep;
	

	public void show() 
		System.out.println("宽:"+width+
				",高:"+height);
		System.out.println("x:"+x+",y:"+y);
		System.out.println("x速度:"+xStep+
				",y速度"+yStep);
	




BigAirplane类:

package cn.tedu.shoot;

public class BigAirplane 

	int width;
	int height;
	int x;
	int y;
	int step;
	
    public BigAirplane() 
    	
    public BigAirplane(int width,int height,
    		int x,int y,int step) 
    	this.width=width;
    	this.height=height;
    	this.x=x;
    	this.y=y;
    	this.step=step;
    
    
    public void show() 
    	System.out.println("宽:"+width+
    			",高:"+height);
    	System.out.println("x:"+x+",y:"+y);
    	System.out.println("速度:"+step);
    
	


Bullet类:

package cn.tedu.shoot;

public class Bullet 
	
	int width;
	int height;
	int x;
	int y;
	int step;
	public Bullet() 
	
	public Bullet(int width,int height,
			int x,int y,int step) 
		this.width=width;
		this.height=height;
		this.x=x;
		this.y=y;
		this.step=step;
	
	
	public void show() 
		System.out.println("宽:"+width
				+",高:"+height);
		System.out.println("x:"+x+",y:"+y);
		System.out.println("速度:"+step);
	
		
	
	


Hero类:

package cn.tedu.shoot;

public class Hero 
	
	int width;
	int height;
	int x;
	int y;
	int life;//生命值
	int doubleFire;//火力值
	
	public Hero() 
	
	public Hero(int width,int height,int x,
			int y,int life,int doubleFire) 
		this.width=width;
		this.height=height;
		this.x=x;
		this.y=y;
		this.life=life;
		this.doubleFire=doubleFire;
	
	
	public void show() 
		System.out.println("宽:"+width
				+",高:"+height);
		System.out.println("x:"+x+",y:"+y);
		System.out.println("生命值:"+life);
		System.out.println("火力值:"+doubleFire);
		
	
	


Sky类:

package cn.tedu.shoot;

public class Sky 

	int width;
	int height;
	int x;
	int y;
	int step;
	int y1;//第二张背景图的y轴坐标
	public Sky() 
	
	public Sky(int width,int height,
			int x,int y,int step,int y1) 
		this.width=width;
		this.height=height;
		this.x=x;
		this.y=y;
		this.step=step;
		this.y1=y1;
	
	public void show() 
		System.out.println("宽:"+width
				+",高"+height);
		System.out.println("x:"+x+",y:"
				+y+",y1:"+y1);
		System.out.println("速度:"+step);
	
	
	


World类:

package cn.tedu.shoot;

public class World 

	public static void main(String[] args) 
		Airplane a1=new Airplane(50,40,220,400,4);
		a1.show();
		
	



*后续跟着继续学习,有用的话,点个赞,关注一下哈,欢迎博客留言~~~~!!!*

以上是关于项目实战---飞机大战---初学者学习使用详解的主要内容,如果未能解决你的问题,请参考以下文章

飞机大战项目

飞机大战——图文详解

python开发飞机大战

Python飞机大战项目终篇(一步一步实现---最全笔记)

Python笔记22——飞机大战(下)

javascript飞机大战-----006创建敌机