⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shootinggame.java

📁 Java Shooting Game !
💻 JAVA
字号:
import java.applet.Applet;  // for Applet
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import javax.swing.*;

public class ShootingGame extends Applet implements Runnable {

	Thread animationThread = null;
	
	int appletW=300, appletH=350;
	int pokerW=71, pokerH=96;
	int delay = 100;
	int nx, ny, px=20, py=20;
	int left=0, top=0;
	Image bgBuffer, img;
	Graphics bgGC;
	boolean jumping = false;
	float dx=3, dy, vx=10, vy=0, dvy, acc=1;
	Bullet[] bullet = new Bullet[12];
	int index = 0;
	
	Image image;
	int steps;
	boolean isVerticle=false;
	Explosion[] explosion = new Explosion[12];
	
	//This method is called when the applet becomes visible
	public void init()
	{		
		setSize(appletW, appletH);
		
		bgBuffer = createImage(appletW, appletH);
		bgGC = bgBuffer.getGraphics();
		
		int maxSpeed = 3; 
		Color color;
		for (int k=0; k<bullet.length; ++k)
		{
			bullet[k] = new Bullet();
			bullet[k].setRange(appletW, appletH);
			bullet[k].setXY(Math.random()*appletW, Math.random()*appletH);
			bullet[k].vx = Math.random()* maxSpeed;
			bullet[k].vy = Math.random()* maxSpeed;
			
			color = new Color((int)(255*Math.random()), (int)(255*Math.random()), (int)(255*Math.random()));
			bullet[k].setColor(color);
			
			bullet[k].setVisible(true);
		}
		
		image = new ImageIcon(getClass().getResource("Explosion.png")).getImage();
        steps = 4;
        isVerticle = true;
		for (int k=0; k<explosion.length; ++k)
		{
			explosion[k] = new Explosion(image);
			explosion[k].setSteps(steps);
			explosion[k].isVerticle = false;
		}
		
		addKeyListener(
				  new KeyAdapter()  // anonymous class 
				  {		
					public void keyPressed(KeyEvent e)
					{
						int key = e.getKeyCode();
						ny = appletH;
						if ( key==KeyEvent.VK_LEFT )
						{
							--nx;
							if ( nx<0 )  nx=0;
						}
						else if ( key==KeyEvent.VK_RIGHT )
						{
							++nx;
							if ( nx>=appletW )  nx=appletW-1;
								
						}
						else if ( key==KeyEvent.VK_SPACE )
						{
							bullet[index].setVisible(true);
							bullet[index].setV(0, -Math.random()*5);
							bullet[index].setXY(nx, ny);
							index = (index+1) % bullet.length;							
						}
						repaint();
					}
				  }	
				);
		
		addMouseListener(
			new MouseAdapter()
			{ //public void mouseClicked(MouseEvent e)
			  //public void mouseReleased(MouseEvent e)	
			  public void mousePressed(MouseEvent e)	
			  {
				int button = e.getButton();
				
				if ( button==MouseEvent.BUTTON1 ) // 1,2,3: from left to right 
				{
					//System.out.println("Mouse's left button pressed!");
					nx = px = e.getX();
					ny = py = e.getY();
									
					//repaint();  // 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -