亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? carprotected.java

?? 一款java 非常適合初學者學習和模仿的簡單賽車游戲
?? JAVA
字號:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.Menu;
import java.awt.Toolkit;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JProgressBar;
import javax.swing.JWindow;


public class Carprotected extends JWindow{

	public static void main(String[] args) {
		new Loadframe();
	}
}
//加載頁面
class Loadframe extends JWindow implements Runnable
{
	JProgressBar jprogress=null;
	Image flashimg=null;
	int i=0;
	public Loadframe()
	{
		jprogress=new JProgressBar(JProgressBar.HORIZONTAL,1,300);//初始化進度條
		Toolkit tk=Toolkit.getDefaultToolkit();
		flashimg=tk.createImage("Cg0430.jpg");
		this.add(new JLabel(new ImageIcon(flashimg)),BorderLayout.CENTER);
		this.setSize(400,300);
		//this.pack();
		jprogress.setString("now loading....");
		jprogress.setStringPainted(true);
		jprogress.setForeground(Color.gray);
		jprogress.setBackground(Color.GREEN);
		this.add(jprogress,BorderLayout.SOUTH);
		this.setLocation((1024-400)/2,(768-300)/2);
		this.setVisible(true);
		new Thread(this).start();		
	}
	public void run() {
		while(i<=300)
		{
			try {
				Thread.sleep(8);
			} catch (InterruptedException e) {
				// TODO 自動生成 catch 塊
				e.printStackTrace();
			}
			jprogress.setValue(i);
			i++;
		}
		this.dispose();
		new Menudemo();
	}
}
//菜單頁面
class Menudemo extends JFrame implements KeyListener,Runnable
{
	int gamestate=0;//0:菜單;1:主場景;2:關于游戲
	String s1[]={"開始游戲","關于游戲","游戲幫助","退出游戲"};
	int y=80;
	int y1=70;
	int num = 200;
	BufferedImage bg=null;
	Graphics g1=null;
	Image imgred=null;
	Image imgblue=null;
	Image imggreen=null;
	Image imgS = null;
	Image eximg[] = new Image[8];
	Boom ex = new Boom(eximg,this);
	Car redcar=null;
	Car enemy[];
	boolean isE;
	boolean isR = true;
	int index=0;
	int road=-100;
	int ly[]={-500,-200,-600,-100,-550,-650,-700,-200,-500};
	public Menudemo()
	{
		MediaTracker mt= new MediaTracker(this);
		bg=new BufferedImage(250,300,BufferedImage.TYPE_INT_RGB);
		g1=bg.getGraphics();
		Toolkit t1=Toolkit.getDefaultToolkit();
		imgred=t1.createImage("Red_Car.gif");
		imgblue=t1.createImage("Blue_Car.gif");
		imggreen=t1.createImage("Green_Car.gif");
		imgS = t1.createImage("stop.gif");
		mt.addImage(imgS, 0);
		mt.addImage(imgred, 0);
		mt.addImage(imggreen, 0);
		mt.addImage(imgblue, 0);
		for(int i = 0; i < eximg.length; i++)
		{
			eximg[i] = t1.createImage("z"+(i+1)+".png");
			mt.addImage(eximg[i],0);
		}
		try {
			mt.waitForAll();
		} catch (InterruptedException e) {
			// TODO 自動生成 catch 塊
			e.printStackTrace();
		}
		redcar=new Car(100,250,imgred,this);
		enemy=new Car[6];
		for(int i=0;i<3;i++)
		{
			enemy[i]=new Car(i*60,ly[i],imgblue);
			enemy[i+3]=new Car(i*40,ly[i+3],imggreen);
		}
		this.setSize(250,300);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setLocation((1024-250)/2,(768-300)/2);
		new Thread(this).start();
		this.addKeyListener(this);
		this.setVisible(true);
	}
	public void paint(Graphics g)
	{
		g1.clearRect(0,0,250,300);
		if(gamestate==0)//菜單
		{
			drawMenu(g1);
		}
		else if(gamestate==1)
		{
			drawMain(g1);
		}
		else if(gamestate==2)
		{
			drawAbout(g1);
		}
		else if(gamestate==3)
		{
			drawHelp(g1);
		}
		g.drawImage(bg,0,0,this);
	}
	//繪制菜單
	public void drawMenu(Graphics g)
	{
		g.setColor(Color.RED);
		g.setFont(new Font("幼圓",Font.BOLD,20));
		y=80;
		for(int i=0;i<s1.length;i++)
		{
			g.drawString(s1[i],80,y);
			y+=50;
		}
		g.setColor(Color.orange);
		g.fillOval(55,y1,15,15);		
	}
	//繪主場景
	public void drawMain(Graphics g)
	{
		
		for(int i=0;i<enemy.length;i++)
		{
			enemy[i].setDir(2);
			enemy[i].drawCar(g);
			enemy[i].move();
			if(enemy[i].y>300)
				this.setEnemy(i);
			if(enemy[i].isP(redcar))
			{
				int tmp1 = enemy[i].x;
				int tmp2 = enemy[i].y;
				ex.setLoc(tmp1, tmp2);
				ex.setE(true);
				ex.start1();
				enemy[i].setLocation(-500,-100);
				num-=20;
				if(num <= 0)
				{
					num = 0;
					isE = false;
					isR = false;	
				}
			}
		}
		if(ex.getE())
			ex.drawE(g1);
		
		redcar.drawCar(g);
		this.drawRoad(g);
		if(isR==false)
		{
			g.drawImage(imgS, (250-imgS.getWidth(null))/2,(300-imgS.getHeight(null))/2,this);
		}
	}
	public void setEnemy(int en)
	{
		int x=(int)(Math.random()*212);
		int y=0;
		if(en>0)
			y=(int)(Math.random()*(-500)+enemy[en-1].y+(-200));
		else if(en==0)
			y=(int)(Math.random()*(-500)+enemy[5].y+(-200));
		enemy[en].setLocation(x,y);
	}
	//繪制關于界面
	public void drawAbout(Graphics g)
	{
		g.setColor(Color.WHITE);
		g.drawString("關于游戲",30,50);
	}
	//繪制幫助界面
	public void drawHelp(Graphics g)
	{
		g.setFont(new Font("宋體",Font.BOLD,10));
		g.setColor(Color.YELLOW);
		g.drawString("游戲幫助",10,50);
	}
	public void keyTyped(KeyEvent e) {		
	}
	public void keyPressed(KeyEvent e) {
		int key=e.getKeyCode();
		//主菜單
		if(gamestate==0)
		{
			switch(key)
			{
				case KeyEvent.VK_UP:
					y1-=50;
					if(y1<70)
						y1=220;
					break;
				case KeyEvent.VK_DOWN:
					y1+=50;
					if(y1>=270)
						y1=70;
					break;
				case KeyEvent.VK_ENTER:
					if(y1==70)
						gamestate=1;
					if(y1==120)
						gamestate=2;
					if(y1==170)
						gamestate=3;
					if(y1==220)
						System.exit(0);
					break;
			}		
			repaint();
		}//游戲界面
		else if(gamestate==1)
		{
			if(key==KeyEvent.VK_ENTER)
				gamestate=0;
			if(key==KeyEvent.VK_LEFT)
				redcar.setDir(0);
			if(key==KeyEvent.VK_RIGHT)
				redcar.setDir(1);
			redcar.move();
		}//關于界面
		else if(gamestate==2)
		{
			if(key==KeyEvent.VK_ENTER)
				gamestate=0;
			repaint();
		}
		//幫助界面
		else if(gamestate==3)
		{
			if(key==KeyEvent.VK_ENTER)
				gamestate=0;
			repaint();
		}			
	}
	public void keyReleased(KeyEvent e) 
	{	
	}
	public void drawRoad(Graphics g)
	{
		g.setColor(Color.WHITE);
		g.fillRect(120,road,10,60);
		g.setColor(Color.blue);
		g.drawRect(30,40,201,10);
		g.setColor(Color.red);
		g.fillRect(31,41,num,9);
	}
	public void run() 
	{
		while(isR)
		{
			road+=60;
			if(gamestate==1)
			{
				try {
					Thread.sleep(50);
				} catch (InterruptedException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
			repaint();
			if(road>=350)
				road=-100;
		}
	}
	
	//汽車類
	class Car 
	{
		int x;
		int y;
		Menudemo game;
		Image img;
		int dir=0;
		public Car(int x,int y,Image img,Menudemo game)
		{
			this.x=x;
			this.y=y;
			this.img=img;
			this.game=game;
		}
		public Car(int x,int y,Image img)
		{
			this.x=x;
			this.y=y;
			this.img=img;
		}
		public void setLocation(int x,int y)
		{
			this.x=x;
			this.y=y;
		}
		public void drawCar(Graphics g)
		{
			g.drawImage(img,x,y,game);
		}
		public void setDir(int dir)
		{
			this.dir=dir;
		}
		public void move()
		{
			switch(dir)
			{
				case 0:
					x-=8;
					if(x<=0)
						x=0;
					break;
				case 1:
					x+=8;
						if(x>=210)
					x=210;
					break;
				case 2:
					y+=12;
					break;
			}
		}
		public Rectangle2D getR()
		{
			return new Rectangle2D.Float(x,y,img.getWidth(game),img.getHeight(game));
		}
		public boolean isP(Car c)
		{
			return getR().intersects(c.getR());
		}
	}
	class Boom implements Runnable
	{
		Menudemo game;
		Image img[];
		int x; 
		int y;
		boolean isE;
		
		public Boom(Image img[], Menudemo game)
		{
			this.img = img;
			this.game = game;
		}
		public void setLoc(int x, int y)
		{
			this.x = x;
			this.y = y;
		}
		public void setE(boolean isE)
		{
			this.isE = isE;
		}
		public boolean getE()
		{
			return isE;
		}
		public void start1()
		{
			new Thread(this).start();
		}
		public void run() 
		{
			while(isE)
			{
				try {
					Thread.sleep(50);
				} catch (InterruptedException e) {
					// TODO 自動生成 catch 塊
					e.printStackTrace();
				}
				index++;
				if(index > 6)
				{
					index = 0;
					isE = false;
				}
			}
		}
		public void drawE(Graphics g)
		{
			g.drawImage(img[index],x,y,game);
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美福利电影网| 亚洲欧美日韩一区| 国产精品夫妻自拍| 秋霞影院一区二区| 色久优优欧美色久优优| 欧美一区二区不卡视频| 国产精品欧美久久久久无广告 | 一本色道久久综合精品竹菊| 日韩一区二区免费电影| 怡红院av一区二区三区| 国产不卡免费视频| 日韩欧美不卡在线观看视频| 中文字幕制服丝袜成人av| 久久成人免费网| 9191久久久久久久久久久| 亚洲欧美精品午睡沙发| 国产高清视频一区| 日韩欧美一区在线| 日日摸夜夜添夜夜添国产精品 | 无码av免费一区二区三区试看 | 日本aⅴ免费视频一区二区三区| 懂色av一区二区三区免费看| 日韩精品一区二区三区老鸭窝| 亚洲国产另类av| 91国偷自产一区二区使用方法| 欧美国产精品劲爆| 大尺度一区二区| 久久午夜电影网| 国产一二三精品| 久久久久久久性| 国产激情一区二区三区| 久久久av毛片精品| 国产成人精品在线看| 337p粉嫩大胆噜噜噜噜噜91av | 亚洲综合一区二区精品导航| 99精品久久久久久| 亚洲精品va在线观看| 色婷婷国产精品久久包臀| 亚洲激情自拍偷拍| 欧美在线色视频| 偷拍亚洲欧洲综合| 日韩一级黄色片| 狠狠色综合日日| 国产区在线观看成人精品| 岛国精品在线播放| 亚洲欧洲无码一区二区三区| 色综合久久综合| 午夜欧美大尺度福利影院在线看| 欧美日韩视频在线一区二区| 日本成人在线一区| 精品国产a毛片| 成人视屏免费看| 亚洲女同一区二区| 欧美欧美欧美欧美| 国产一区二区影院| 国产欧美日韩综合精品一区二区| 国产一区不卡视频| 亚洲精品国久久99热| 在线不卡中文字幕播放| 九一九一国产精品| 亚洲欧洲精品一区二区精品久久久 | 久久婷婷色综合| jlzzjlzz亚洲日本少妇| 一区二区高清在线| 欧美一区二区三区四区五区| 国产一区二区三区在线观看精品| 成人免费一区二区三区视频| 欧美日韩一区二区三区在线| 国产在线精品一区二区夜色| 亚洲人精品一区| 日韩免费高清视频| av在线播放成人| 蜜臀av亚洲一区中文字幕| 国产精品沙发午睡系列990531| 欧美午夜片在线看| 精品一区二区三区在线播放| 亚洲视频每日更新| 日韩午夜在线影院| 色婷婷国产精品综合在线观看| 极品美女销魂一区二区三区| 亚洲免费在线电影| 久久视频一区二区| 精品视频在线免费| 成人免费视频一区| 蜜臀av一级做a爰片久久| 日韩电影在线免费看| 久久久久久久久久久久电影| 欧美色图免费看| 成人免费毛片嘿嘿连载视频| 美女视频网站黄色亚洲| 亚洲乱码日产精品bd | 欧美日韩激情一区| 成人精品国产福利| 国内精品嫩模私拍在线| 亚洲第一会所有码转帖| 国产精品久久久久久福利一牛影视| 日韩亚洲欧美高清| 欧美日韩日日骚| 欧美性感一类影片在线播放| gogo大胆日本视频一区| 国产精品主播直播| 免费观看一级特黄欧美大片| 亚洲一二三四久久| 亚洲卡通欧美制服中文| 国产欧美日韩麻豆91| 久久亚洲私人国产精品va媚药| 日韩欧美在线1卡| 7777精品久久久大香线蕉| 91国产成人在线| 91免费在线播放| av午夜一区麻豆| 成人精品一区二区三区中文字幕| 国产一区三区三区| 精品写真视频在线观看| 日本欧美在线观看| 男女性色大片免费观看一区二区 | 欧美日韩你懂得| 欧美日韩国产欧美日美国产精品| 欧美专区日韩专区| 精品视频999| 欧美群妇大交群中文字幕| 在线播放欧美女士性生活| 欧美日韩国产高清一区二区三区 | 亚洲精品国产品国语在线app| 中日韩免费视频中文字幕| 日本一区二区三区dvd视频在线| 久久女同精品一区二区| 久久久电影一区二区三区| 国产天堂亚洲国产碰碰| 国产精品乱码人人做人人爱 | 国产精品美女久久久久久久久久久 | 亚洲国产精品成人综合| 国产精品狼人久久影院观看方式| 国产精品久久久久久久久久免费看| 亚洲欧洲色图综合| 亚洲成人自拍一区| 另类小说图片综合网| 国产白丝网站精品污在线入口| www.在线成人| 欧美日韩国产成人在线91| 日韩精品一区二区三区老鸭窝 | 欧美日本国产视频| 亚洲午夜精品网| 91美女在线观看| 日本丶国产丶欧美色综合| 欧美日韩精品一区二区在线播放| 欧美精品日韩综合在线| 久久亚洲精品国产精品紫薇| 亚洲欧洲综合另类在线| 亚洲v中文字幕| 国产一区在线观看视频| 一本大道久久a久久精二百| 91麻豆精品国产91久久久久| 久久久噜噜噜久久中文字幕色伊伊 | 六月丁香综合在线视频| www.色精品| 欧美二区在线观看| 国产精品入口麻豆原神| 午夜精品免费在线观看| 国产91精品入口| 欧美日韩国产精选| 国产精品萝li| 久久精品国产精品青草| 91久久精品网| 久久精品亚洲精品国产欧美| 亚洲成人精品一区二区| 成人激情av网| 欧美大片日本大片免费观看| 亚洲男同性视频| 国产激情一区二区三区四区| 欧美三级蜜桃2在线观看| 中文字幕免费不卡在线| 秋霞午夜av一区二区三区| 色综合网色综合| 国产日韩欧美精品在线| 日日骚欧美日韩| 在线精品观看国产| 国产精品福利一区二区三区| 久久av资源站| 欧美一区二区三区在线看| 亚洲午夜av在线| 91在线观看成人| 国产精品热久久久久夜色精品三区 | 色av成人天堂桃色av| 国产欧美一区二区三区沐欲| 美女看a上一区| 欧美老女人在线| 亚洲午夜视频在线| 色先锋aa成人| 综合久久一区二区三区| 成人在线视频一区二区| 26uuu亚洲综合色| 精品在线播放午夜| 日韩片之四级片| 天堂蜜桃一区二区三区| 精品视频123区在线观看| 一区二区三区日韩精品| 色婷婷亚洲综合| 亚洲男人天堂av| 欧美一区二区日韩|