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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cgame.java

?? 貪吃蛇升級版本
?? JAVA
字號:
//////////////////////////////////////////////////////////////////////////////////// cGame.java//// Project: Minesweeper// Author(s): Gao Lei// Create: 2007-10-12////////////////////////////////////////////////////////////////////////////////package code;import java.util.Random;import javax.microedition.lcdui.*;////////////////////////////////////////////////////////////////////////////////class cGame extends Canvas implements Runnable{	private static final int STATEPLAY		= 0;	private static final int STATELOST		= 1;	private static final int STATEWIN		= 2;	private static final int KEY_UP 		= 1;	private static final int KEY_DOWN 		= 2;	private static final int KEY_LEFT 		= 3;	private static final int KEY_RIGHT 	= 4;	private static final int KEY_FIRE 		= 5;		public static int 	s_width 	= 0;	public static int 	s_height	= 0;	public static long	updates		= 0;	public static Random rand;					private int maxRand = 1000;	private int map_x 	= 10;	private int map_y 	= 10;	private int map_w 	= 16;	private int map_h 	= 16;		private int key_x 	= map_x / 2;	private int key_y 	= map_y / 2;	private int snake_w	= 8;	private int snake_h	= 8;    private int pos_x 	= map_x / 2;    private int pos_y 	= map_y / 2;    private int aspect_x= 0;    private int aspect_y= 1;    private int	snake_max	= 50;    private int	snake_min	= 5;    private int	snake_n		= snake_min;    private int	gameState 	= STATEPLAY;    private int level		= 1;    private long sleepTime	=300;        private int[]	snake_x		= new int[ snake_max ];    private int[]	snake_y		= new int[ snake_max ];    	private int[][] map;	private boolean isShowInfo	= false;	private Font 	font 		= Font.getFont( Font.FACE_SYSTEM, Font.STYLE_BOLD, Font.SIZE_LARGE );	private Thread	thread;							private Image[] imgGameBg	= new Image[4];	private Image[] imgItem		= new Image[3];	private Gif[]	gold		= new Gif[5];	private Gif[]	dung		= new Gif[2];	private Gif		fungus;		cGame()    {		setFullScreenMode(true);		s_width = getWidth();			s_height= getHeight();			rand	= new Random( System.currentTimeMillis() );		try		{	    	for( int i=0; i<gold.length; i++ )	    	{	    		gold[i]= new Gif("gold", 5, 19, 15 );	    	}	    	for( int i=0; i<dung.length; i++ )	    	{	    		dung[i]= new Gif("dung", 6, 21, 30 );	    		dung[i].life = -2;	// --life	    	}	    		    	fungus = new Gif("fungus", 12, 25, 23 );	    	fungus.setFormTime	    	( 	    		new int[] { 2000,  150,  150,  150,	    				     150,  200,  100,  100,	    				     200,  150,  200,  200	    		} 	    	);	    	fungus.life = 5;		// --life +5	    	fungus.isShow = false;	    				for( int i=0; i<imgItem.length; i++ )			{				imgItem[i]=Image.createImage("/pics/item_16_"+i+".png");			}			Image temp 	= Image.createImage("/pics/bg_tile_0.png");			Graphics gn;														for( int i=0; i<imgGameBg.length; i++ )				{				imgGameBg[i] = Image.createImage(16, 16);				gn = imgGameBg[i].getGraphics();				gn.drawImage(temp, -i*16, 0, gn.LEFT|gn.TOP);			}			gn	 = null;			temp = null;				System.gc();		}catch(Exception e){ e.printStackTrace(); }		rePlay( level );		thread  = new Thread(this);		thread.start();		}        public void run()    {    	while( true )    	{    		try    		{    			updates++;			    			repaint();    			serviceRepaints();    			thread.sleep(sleepTime);    		}catch(Exception e)    		{    			e.printStackTrace();    		}    	}    }        public void paint(Graphics g)    {    	g.setClip(0, 0, s_width, s_height);    	g.setColor(0x000000);				    	g.fillRect(0, 0, s_width, s_height);    	for( int i=0; i<map_x; i++ )			    	{    		for( int j=0; j<map_y; j++ )        	{    			g.drawImage(imgGameBg[ map[i][j] ], j*map_h, i*map_w, g.LEFT|g.TOP);        	}	    	}    	for( int i=0; i<gold.length; i++ )    	{    		gold[i].paint(g);    	}    	for( int i=0; i<dung.length; i++ )    	{    		dung[i].paint(g);    	}    	if( snake_n>20 )    	{    		fungus.isShow = true;    		fungus.paint( g );    	}    	    	paintSnake( g );    	if( isShowInfo || gameState != STATEPLAY )	    	{    		g.setColor(0xFFFFFF);				        	for( int i=0; i<=map_y; i++ )	// |||	        	{        		g.drawLine(i*map_w, 0, i*map_w, map_h*map_x);        	}        	for( int i=0; i<=map_x; i++ ) 	// ===	        	{        		g.drawLine(0, i*map_h, map_y*map_w, i*map_h);        	}    		g.setFont( font );    	}    	g.setColor( 0xff0000 );    	g.setFont( font );    	g.drawString( "life:"+snake_n, 2,  2, 0 );    	g.drawString( "level:"+level,  2, 18, 0 );    }    void paintSnake( Graphics g )    {    	g.setColor(0x0000FF);			        for( int i=snake_n; i>0; i-- )        {        	snake_x[i] = snake_x[i-1];         	snake_y[i] = snake_y[i-1];    		g.fillRect(snake_x[i]-snake_w/2, snake_y[i]-snake_h/2, snake_w, snake_h);    	}        snake_x[0] += aspect_x*8;        snake_y[0] += aspect_y*8;        g.setColor(0x6666FF);	        g.fillRect(snake_x[0]-snake_w/2, snake_y[0]-snake_h/2, snake_w, snake_h);    	if( snake_x[0]<0 || snake_x[0]>s_width || snake_y[0]<0 ||snake_y[0]>s_height )    	{    		rePlay(level);    	}    		    	for( int i=snake_min; i<snake_n; i++ )    	{        	if( isIntersect(snake_x[0], snake_y[0],	snake_w, snake_h,         					snake_x[i], snake_y[i],	snake_w, snake_h )         		)        	{        		rePlay(level);        	}        		    	}    	    	for( int i=0; i<gold.length; i++ )        {        	if( isIntersect(snake_x[0],		snake_y[0],		snake_w,	snake_h,         					gold[i].pos_x,	gold[i].pos_y,	gold[i].w, 	gold[i].h )         	  )        	{        		addSnake( gold[i].life );        		gold[i].setPos();        	}        }    	for( int i=0; i<dung.length; i++ )        {        	if( isIntersect(snake_x[0],		snake_y[0],		snake_w,	snake_h,         					dung[i].pos_x,	dung[i].pos_y,	dung[i].w, 	dung[i].h )         	  )        	{        		addSnake( dung[i].life );        		dung[i].setPos();        	}        }    	    	if( fungus.isShow && isIntersect(snake_x[0],		snake_y[0],		snake_w,	snake_h,     			fungus.pos_x,	fungus.pos_y,	fungus.w, 	fungus.h ) 		  )		{			addSnake( fungus.life );//			fungus.isShow =false;			fungus.setPos();		}    	    }        boolean isIntersect(int x1,int y1, int w1, int h1, int x2, int y2, int w2, int h2)    {    	if( Math.abs(x2-x1) < (w1+w2)/2 && Math.abs(y2-y1) < (h1+h2)/2 )    	{    		return true;    	}    	else    		return false;    }        public void keyPressed(int key)    {    	key = Math.abs(key);    	System.out.println("key="+key);    	switch( key )    	{	    	case KEY_NUM2:	    	case KEY_UP:	    		if( gameState != STATEPLAY )		    			break;	    		else	    		{	    			if( aspect_y <= 0)	    			{	    				aspect_x =  0;	    				aspect_y = -1;	    			}	    		}	    	break;	    	case KEY_NUM8:	    	case KEY_DOWN:	    		if( gameState != STATEPLAY )	    			break;	    		else	    		{	    			if( aspect_y >= 0)	    			{	    				aspect_x =  0;		    			aspect_y = +1;	    			}	    		}	    	break;	    	case KEY_NUM4:	    	case KEY_LEFT:	    		if( gameState != STATEPLAY )		    			break;	    		else	    		{	    			if( aspect_x <= 0)	    			{	    				aspect_y =  0;		    			aspect_x = -1;	    			}	    		}	    	break;	    	case KEY_NUM6:	    	case KEY_RIGHT:	    		if( gameState != STATEPLAY )	    			break;	    		else	    		{	    			if( aspect_x >= 0)	    			{	    				aspect_y =  0;		    			aspect_x = +1;	    			}	    		}	    	break;	    	case KEY_FIRE:	    	case KEY_NUM5:	    		if( gameState == STATEPLAY )	    		{//	    			addSnake();//	    			System.out.println("snake_n="+snake_n);	    		}	    	break;	    	case KEY_NUM1:			    	break;	    	case KEY_NUM3:			    		isShowInfo = !isShowInfo;	    	break;	    	case KEY_NUM0:			    		rePlay( level );			    	break;    	}    	this.repaint();    }        private void addSnake(int life)    {    	int s_n = snake_n;    	snake_n += life;		if( snake_n >= snake_max )		{			level++;			rePlay(level);		}		else if( snake_n < snake_min )		//game over		{			rePlay(level);		}		else if( life>0 )		{			for( int i=s_n; i<snake_n; i++ )			{				snake_x[i] = -snake_w;				snake_y[i] = -snake_h;			}		}    }    public void rePlay( int level )    {    	sleepTime 	= 300-level*20;    	map_x		= s_height/16;    	map_y		= s_width/16;    	key_x 		= map_x>>1;    	key_y 		= map_y>>1;		gameState	= STATEPLAY;		map 	 	= new int[map_x][map_y];		isShowInfo	= false;		snake_n		= snake_min;		aspect_x	= 0;		aspect_y	= 0;		try		{			Image temp 	= Image.createImage("/pics/bg_tile_"+(level%2)+".png");			Graphics gn;														for( int i=0; i<imgGameBg.length; i++ )				{				imgGameBg[i] = Image.createImage(16, 16);				gn = imgGameBg[i].getGraphics();				gn.drawImage(temp, -i*16, 0, gn.LEFT|gn.TOP);			}			gn	 = null;			temp = null;				System.gc();		}catch(Exception e){ e.printStackTrace(); }				for( int i=0; i<map_x; i++ )	//draw bg		{			for( int j=0; j<map_y; j++ )			{				int r = rand.nextInt(maxRand);				for( int k=0; k<imgGameBg.length; k++ )				{					if( r < maxRand>>k+1  )					{						map[i][j] = k;					}				}			}		}    	for( int i=0; i<snake_n; i++ )	//init snake    	{    		snake_x[i] = s_width >>1;    		snake_y[i] = s_height>>1;//-(i*snake_h);    	}    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区电影| 欧美电影在哪看比较好| 欧美午夜精品理论片a级按摩| 91麻豆精品国产91久久久久久久久 | 国产一区二区不卡| 欧美影院午夜播放| 国产精品久久久一本精品| 91免费版在线看| 日韩一级完整毛片| 亚洲图片欧美色图| 99久久免费国产| 久久―日本道色综合久久| 亚洲高清不卡在线| 色噜噜久久综合| 国产精品麻豆一区二区 | 欧美日韩精品一区二区在线播放| 国产农村妇女精品| 极品销魂美女一区二区三区| 欧美精品v国产精品v日韩精品| 亚洲天堂2014| 97se亚洲国产综合自在线| 国产亚洲综合av| 国产原创一区二区三区| 精品国产乱码91久久久久久网站| 亚洲成av人片| 欧美羞羞免费网站| 一区二区三区欧美日| 99久久久无码国产精品| 国产精品成人免费| 成人av高清在线| 国产精品女人毛片| 99久久综合精品| 1区2区3区欧美| 不卡的看片网站| 亚洲欧洲av在线| 91视视频在线直接观看在线看网页在线看| 国产嫩草影院久久久久| 懂色av中文字幕一区二区三区| 国产婷婷色一区二区三区| 国产精品一品视频| 国产精品网站导航| 色婷婷综合久久久中文字幕| 一区二区在线观看免费视频播放| 91久久精品国产91性色tv| 亚洲精品成人精品456| 91福利在线看| 青青草国产成人av片免费| 欧美成人一区二区三区片免费| 国产真实乱对白精彩久久| 久久久久久久精| 99视频国产精品| 亚洲成人激情自拍| 久久这里只有精品首页| 成人激情校园春色| 亚洲成av人片| 精品免费日韩av| av影院午夜一区| 午夜久久久久久| 久久色中文字幕| 91麻豆成人久久精品二区三区| 亚洲一区国产视频| 亚洲精品一区二区三区香蕉| 不卡的电影网站| 偷拍与自拍一区| 国产无一区二区| 精品视频一区 二区 三区| 精品一区二区三区视频在线观看| 中文字幕欧美激情一区| 欧美在线你懂得| 国产九色sp调教91| 视频在线在亚洲| 中文字幕av一区二区三区免费看 | 日韩一级免费观看| 成人永久aaa| 日韩福利视频网| 国产精品私人自拍| 91麻豆精品国产91久久久 | 免费高清成人在线| 中文字幕亚洲不卡| 日韩欧美中文字幕公布| 91视频91自| 国产精品一二三| 亚洲成国产人片在线观看| 欧美激情一区不卡| 欧美成人一区二区三区片免费| 色综合天天天天做夜夜夜夜做| 精品一区二区三区免费观看| 亚洲国产精品一区二区尤物区| 国产精品嫩草影院av蜜臀| 日韩一级视频免费观看在线| 欧美在线一二三四区| 成人av在线资源网| 九九国产精品视频| 水野朝阳av一区二区三区| 亚洲乱码中文字幕| 国产精品国产三级国产普通话99| 日韩三级免费观看| 91精品国产品国语在线不卡| 欧美伊人久久大香线蕉综合69 | 国产一区二区免费看| 婷婷中文字幕一区三区| 国产美女主播视频一区| 欧美三级在线播放| 成人av午夜电影| 国产69精品一区二区亚洲孕妇| 日韩电影免费在线看| 亚洲成av人片| 一区二区三区日韩欧美精品| 中文字幕制服丝袜成人av| 久久亚洲二区三区| 欧美精品一区二区精品网| 日韩一区二区免费视频| 欧美日韩二区三区| 欧美日韩一区不卡| 欧美日韩国产小视频在线观看| 欧美视频一区二| 欧美亚洲禁片免费| 欧美在线小视频| 精品视频资源站| 91精品婷婷国产综合久久性色 | 丁香激情综合五月| 国产成人久久精品77777最新版本| 国产精品影视在线观看| 亚洲影院在线观看| 日韩欧美中文字幕精品| 欧美一区二区成人| 日韩一区二区在线观看视频| 欧美一区二区三区视频| 日韩免费高清视频| 国产日韩视频一区二区三区| 久久精品人人爽人人爽| 国产精品九色蝌蚪自拍| 亚洲色欲色欲www| 亚洲在线视频一区| 日本va欧美va欧美va精品| 国产一区二区在线看| 成人性生交大片免费看在线播放| 国产成人午夜99999| 一本大道久久精品懂色aⅴ| 欧美视频一区二区三区在线观看| 制服.丝袜.亚洲.另类.中文| 欧美精品一区二区久久婷婷| 国产精品久久久久婷婷二区次| 亚洲精品中文在线影院| 亚洲成av人影院| 精品一区精品二区高清| 成人性视频网站| 欧美日韩的一区二区| 久久久精品免费免费| 一区二区三区免费在线观看| 中文字幕一区二区三区视频| 亚洲免费在线观看| 亚洲福利视频导航| 国产一区二三区| 日本乱人伦aⅴ精品| 日韩欧美激情四射| 中文字幕亚洲在| 久久99久久精品欧美| 成人国产一区二区三区精品| 欧美日韩一区 二区 三区 久久精品| 精品国产乱码久久久久久久久| 亚洲日本va在线观看| 精品一区二区三区影院在线午夜| 色婷婷av一区二区三区软件| 欧美精品一区二区久久婷婷| 亚洲一区二区黄色| 国产69精品久久99不卡| 日韩一级二级三级精品视频| |精品福利一区二区三区| 久久成人免费网站| 欧美日本免费一区二区三区| 中文字幕久久午夜不卡| 美腿丝袜一区二区三区| 精品视频999| 亚洲美女区一区| 成人国产一区二区三区精品| 久久综合九色综合97婷婷女人 | 亚洲精品久久久久久国产精华液| 石原莉奈在线亚洲三区| 99在线热播精品免费| 久久女同互慰一区二区三区| 性做久久久久久| 一本到一区二区三区| 国产精品久久久久久久蜜臀| 久久99久久精品| 91精品国产色综合久久ai换脸| 一区二区视频在线| 成人黄色电影在线| 亚洲国产精品精华液ab| 国产一区日韩二区欧美三区| 欧美一区二区三区不卡| 亚洲成人免费视| 在线观看日韩av先锋影音电影院| 国产精品视频一区二区三区不卡| 精久久久久久久久久久| 欧美一区二区三区视频免费| 青青草国产成人av片免费| 欧美麻豆精品久久久久久| 亚洲成人自拍一区| 欧美在线观看18|