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

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

?? dynamic.java

?? 手機上小巧的挖雷游戲
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
    Marv the Miner for Nokia Series 30, 40 and 60 and for selected MIDP 1.0 supported phones
    Copyright (C) 2003-2004  Digital Entertainment Europe AS (http://www.digiment.no)

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
	
    If you have any questions, please contact support@digiment.no
*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;
import java.util.*;

class Dynamic
{
	static int T_A = 0;		// alien type
	static int T_M = 1;		// man type
	static int T_B = 2;		// bonus  type
	static int T_D = 3;		// default type
	static int T_T = 11;	// trap type
	static int image_index = 0;
	static int tx,ty,i,j,n,delay;

	int start_x,start_y;

	int phase = -1;

	int class_type;
	int type;
	int x,y,min_y;
	int dx,dy,sdx,sdy;
	int new_x,new_y;
	int jump_x,jump_y;
	int jumpIndex = -1;
	int last_dx,last_dy,y_border,bw;
	int timeUse;
	boolean visible, started;
	Vector v1,v2;

	int delay_range = 10;
	int delay2;
	boolean isFalling = false;
	boolean isFallen = false;

	boolean inUse = false;
	boolean alarm = false;

	CObject curObj = null,obj;
	CObject startObj = null;

	// animation variables
	int a[][] = null;
	int b[] = null;
	int a1;
	int a2;
	int time;
	int disp;
	boolean finished;
	boolean loop = true;

	Frame frame = null;

	Dynamic(int class_type,int type,int x,int y,CObject obj,Frame frame,String animation_name)
	{
		this.class_type = class_type;
		this.type = type;
		this.x = start_x = new_x = x;
		this.y = start_y = new_y = min_y = y;
		dx = dy = sdx = sdy = 0;
		curObj = startObj = obj;
		this.frame = frame;
		if (class_type == T_A) dx = 1;
		time = disp = 0;
		a1 = 0;
	    delay2 = 0;
		a2 = 1;
 		v1 = (Vector)Main.hAnims.get(animation_name);
 		a = null;
 		loop = true;
 		timeUse = 0;
	    bw = frame.fw >> 1;
	    if ((class_type == T_M) || (class_type == T_A)) bw = 0;
 		if (v1 != null)
 			if (v1.size() > 0)
 			{
		 		a = new int[v1.size()][];
		 		for (i = 0; i < a.length; i++)
		 		{
		    		v2 = (Vector)v1.elementAt(i);
		    		a[i] = null;
		    		if (v2 != null)
		    			if (v2.size() > 0)
		    			{
				    		a[i] = new int[v2.size()];
		 			        for (j = 0; j < a[i].length; j++)
		 			        {
		 			        	a[i][j] = ((Integer)v2.elementAt(j)).intValue();
		 			        	if (j > 0) a[i][j] *= frame.fw;
		 			        }
						}
		 		}
		 		v1 = null;
		 		v2 = null;
				a2 = 1 + Main.rnd(a[0].length - 1);
		    	time = Main.rnd(a[0][0]);
			}
		visible = true;
		isFalling = true;
		finished = false;
		started = false;
		inUse = false;
		phase = -1;
		restart();
	}

	void restart()
	{
		x = new_x = start_x;
		y = new_y = min_y = start_y;
		curObj = startObj;
		loop = true;
		inUse = false;
		isFalling = true;
		isFallen = false;
		visible = true;
		started = false;
		a1 = 0;
		if (class_type == T_M)
		{
			last_dx = Main.step;
			last_dy = 0;
			a1 = 1;
		}
	}

    void jump(int dir_x)
    {
   		if ((jumpIndex == -1) && (!isFalling) && (phase == -1))
    	{
			jumpIndex = 0;
			if (dir_x != 99) last_dx = dir_x;
			jump_x = x;
			jump_y = y;
			curObj = null;
		}
    }

    void shift(int delta_x,int delta_y)
    {
    	if (phase == -1)
    	{
   			if (jumpIndex == -1)
	    	{
    			last_dx = dx = delta_x;
   				last_dy = dy = delta_y;
	    	}
			dx = delta_x;
			dy = delta_y;
		}
    }

    void stop()
    {
    	if ((phase == -1) && (!isFalling)) dx = dy = 0;
    }

	void update()
	{
//		regenerate the monster
//		if (timeUse > 0)
//		{
//			timeUse --;
//			if (timeUse == 0)
//			{
//				restart();
//			}
//		}
		isFallen = false;
		if (inUse && (class_type == T_B))
		{
			new_x = x = Main.man.x;
			new_y = y = Main.man.y - 19;
		}
		if (((class_type == T_B) || (class_type == T_D)) && started) return;
		// if jumping
		if (jumpIndex != -1)
		{
           	tx = Main.fxp[jumpIndex];
           	ty = Main.fyp[jumpIndex];
           	if (last_dx < 0) tx = -tx;
           	if (last_dx == 0) tx = 0;

    		if (dx > 0 ) jump_x ++;
    		if (dx < 0 ) jump_x --;

           	new_x = jump_x + tx;
           	new_y = jump_y - ty;

           	sdx = dx = new_x - x;
           	sdy = dy = new_y - y;

           	if (++jumpIndex >= Main.fxp.length)
           	{
           		jumpIndex = -1;
           		isFalling = true;
           	}
		}

		// update position
    	if (curObj != null)
    	{
    		if (curObj.type == Main.C_P)
    		{
			    new_x = x + dx;
			    if (class_type == T_A)
			    {
			    	if (dx > 0)
			    	{
			    		if ((dx < 3) && (x - curObj.x1 > 5)) dx ++;
			    	}
			    	else
			    	{
			    		if ((dx > -3) && (curObj.x2 - x > 5)) dx --;
			    	}
			    }
            	if ((new_x - bw >= curObj.xmin) && (new_x + bw <= curObj.xmax))
            	{
        	    	new_y = (new_x - curObj.x1) * curObj.dy / curObj.dx + curObj.y1;
                   	if (class_type == T_M)
                   	{
                   		if (Main.state == 0)
                   		{
	            			n = (new_x - curObj.xmin) / 10;
            				if (n < curObj.blocks.length)
        	    			{
    	        				if (!(curObj.blocks[n]))
	            				{
	            					curObj.blocks[n] = true;
     								Main.obj = curObj;
     								Main.closed_blocks --;
     								Main.p_num = n;
     								Main.drawP();       					
    	        				}
	            			}
            			}
               			// search for a stair
               			for (i = 0; i < Main.aObj.length; i++)
           	    		{
               				obj = Main.aObj[i];
               				if ((obj.type == Main.C_Lift))
               				{
				            	if ((obj.x1 - (obj.fw >> 1) <= new_x) && (obj.x1 + (obj.fw >> 1) >= new_x) &&
				            		(new_y >= obj.my - 6) && (new_y <= obj.my + 2))
				            	{
				            		new_y = obj.my - 6;
           							curObj = obj;
          							break;
				            	}
               					
               				}
               				if (obj.type == Main.C_Slope)
               				{
               					if ((obj.y1 - 4 <= new_y) && (obj.y2 - 10 >= new_y))
               					{
           							tx = obj.x1 + (new_y - obj.y1) * obj.k;
               						if ((tx - 4 <= new_x) && (tx + 4 >= new_x))
               						{
               							dy = Main.step;
               							new_x = tx;
               							curObj = obj;
               							phase = 4;
               							break;
               						}
               					}

               				}
               				if (dx != 0)
               				{
        	       				if (obj.type == Main.C_Press)
        	       					if ((new_y - frame.fh <= obj.my) && (new_y - frame.fh >= obj.ymin) && 
        	       						(new_x + 15 > obj.x1) && (new_x - 15 < obj.x1))
        	       					{
        	       						new_x = x;
        	       						new_y = y;
//        	       						if (dx > 0) new_x += dx;
//        	       						if (dx < 0) new_x += dx;
        	       						dx = 0;
        	       					}
               				}
               				if (dy != 0)
               				{
        	       				if ((obj.type == Main.C_Teleport) && (dy < 0))
    	           				{
									if ((obj.x1 - 3 <= new_x) && (obj.x1 + 3 >= new_x) && 
										(obj.y1 - 2 <= new_y) && (obj.y1 + 2 >= new_y))
									{
										curObj = obj;
										x = new_x = obj.x1;
										y = new_y = obj.y1;
										dy = 0;
    									a1 = 14;
			    						finished = false;
		    							Main.state = 33;
										break;
									}
               					}
               					else
        	       				if (obj.type == Main.C_S)
    	           				{
	               					if ((((dy < 0) && (obj.ymax - 10 <= new_y) && (obj.ymax + 10 >= new_y)) ||
               						     ((dy > 0) && (obj.ymin - 10 <= new_y) && (obj.ymin + 10 >= new_y))) &&
               					    	 (obj.x1 - 8 <= new_x) && (obj.x1 + 8 >= new_x))
           	    					{
               							new_x = obj.x1;
               							new_y = dy < 0 ? obj.ymax: obj.ymin;
            	   						curObj = obj;
        	       						break;
    	       	    				}
	               				}
               				}
               			}
               			if (curObj != null)
							if ((dy < 0) && (curObj.type == Main.C_P)) jump(0);
                   	}
            	}
            	else
            	// check platform end
            	{
            	    if (class_type == T_M)
            	    {
            			isFalling = true;
            			curObj = null;
            		}
            		else
            	    if (class_type == T_A) 
            	    {
            			dx = (dx > 0) ? -1 : 1;
            			if (new_x - bw < curObj.x1)
            			{
            				new_x = curObj.x1 + bw;
            				new_y = curObj.y1;
            			}
            			if (new_x + bw > curObj.x2)
            			{
            				new_x = curObj.x2 - bw;
            				new_y = curObj.y2;
            			}
            	    }
            	}
    	    }
    	    else
    		if (curObj.type == Main.C_S)
    		{
            	if ((y >= curObj.ymin) && (y <= curObj.ymax))
            	{
				    new_y += dy;
				    new_x += dx;
				    if ((curObj.x1 - 5 > new_x) || (curObj.x1 + 5 < new_x))
				    {
				    	// falling from stair
				    	curObj = null;
				    	isFalling = true;
				    	new_x = x;
				    }
				    else
				    {
				   		if (dy < 0) a1 = 4;
			   			else
						if (dy > 0) a1 = 5;
						if (curObj.ymin + 12 >= y) a1 = 6;
				    }
            	}
            	else curObj = null;
    		}
    	    else
    		if (curObj.type == Main.C_M)
    		{
			    new_x += dx;
            	if ((curObj.mx - 5 <= new_x) && (curObj.mx + 5 >= new_x))
            	{
            	}
            	else
            	{
            		curObj = null;
            		isFalling = true;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区中文在线观看| 欧美日韩国产小视频| 日韩一区精品视频| 亚洲成a天堂v人片| 偷窥国产亚洲免费视频| 亚洲国产另类av| 亚洲国产成人91porn| 一二三四区精品视频| 图片区小说区国产精品视频| 丝袜美腿亚洲色图| 韩国视频一区二区| 成人av影院在线| 91丨porny丨首页| 欧美无砖砖区免费| 日韩欧美视频一区| 国产日韩精品一区| 中文字幕一区二区三区精华液| 亚洲精品视频在线看| 亚洲成av人片在线| 国产乱码精品一区二区三区五月婷| 九色综合国产一区二区三区| 国产一区二区三区蝌蚪| 国产精品888| 日本韩国一区二区| 欧美tickle裸体挠脚心vk| 国产欧美日韩另类一区| 亚洲一区成人在线| 国内精品国产成人国产三级粉色| 高清不卡在线观看| 欧美日韩精品综合在线| 国产亚洲综合性久久久影院| 亚洲欧美一区二区三区极速播放 | 91精品国产综合久久精品图片| 欧美一区二区在线不卡| 国产欧美精品一区aⅴ影院| 一区二区三区在线影院| 久久er99精品| 欧美性色综合网| xvideos.蜜桃一区二区| 一区二区三区高清在线| 激情综合色综合久久综合| 色婷婷精品久久二区二区蜜臂av | 亚洲日本护士毛茸茸| 三级影片在线观看欧美日韩一区二区| 国产一区高清在线| 欧美日韩国产一区二区三区地区| 国产欧美1区2区3区| 午夜精品久久久久久久久久| 成人免费高清视频在线观看| 日韩精品专区在线影院重磅| 亚洲久草在线视频| 成人午夜伦理影院| 亚洲精品一区二区三区四区高清 | 制服丝袜一区二区三区| 亚洲欧洲成人精品av97| 国产一区二区h| 欧美精品一二三区| 亚洲综合偷拍欧美一区色| 成人免费毛片a| 日韩精品一区二区三区在线| 亚洲午夜视频在线观看| 97久久人人超碰| 国产精品私房写真福利视频| 国产乱码精品一区二区三区忘忧草 | 欧美国产精品v| 奇米色777欧美一区二区| 欧美三区在线视频| 亚洲国产日韩一级| 欧美网站大全在线观看| 一区二区三区精品| 日本电影亚洲天堂一区| 亚洲精选在线视频| 欧美日韩一区二区三区四区五区 | 7777精品伊人久久久大香线蕉的 | 久久久美女毛片| 国产精品中文字幕日韩精品| 精品国产电影一区二区| 国产一区二区三区久久悠悠色av| 久久综合精品国产一区二区三区 | 色噜噜狠狠成人网p站| 亚洲免费在线看| 欧美影院一区二区三区| 午夜成人在线视频| 日韩视频在线你懂得| 九九**精品视频免费播放| 精品精品国产高清a毛片牛牛| 麻豆免费看一区二区三区| 欧美tk—视频vk| 福利一区福利二区| 一区二区三区自拍| 9191久久久久久久久久久| 激情综合色综合久久综合| 国产清纯白嫩初高生在线观看91 | 亚洲三级电影全部在线观看高清| 91视频精品在这里| 日韩黄色免费网站| xfplay精品久久| 99re66热这里只有精品3直播| 亚洲综合激情网| 日韩你懂的电影在线观看| 国产成人在线网站| 亚洲国产日韩精品| 久久一区二区视频| 91国在线观看| 国产精品亚洲第一区在线暖暖韩国| 国产精品久久久久久福利一牛影视 | 国产91精品入口| 亚洲国产日韩精品| 欧美激情在线一区二区三区| 91黄色小视频| 99亚偷拍自图区亚洲| 丝袜亚洲另类欧美| 国产精品久线在线观看| 欧美高清视频在线高清观看mv色露露十八| 经典三级一区二区| 亚洲va欧美va人人爽| 国产精品妹子av| 日韩一区二区电影在线| 97成人超碰视| 激情六月婷婷久久| 午夜不卡在线视频| 亚洲乱码国产乱码精品精的特点 | 在线看国产一区二区| 韩国三级电影一区二区| 亚洲v精品v日韩v欧美v专区| 国产欧美精品一区aⅴ影院| 在线播放欧美女士性生活| 91视频你懂的| 风间由美一区二区av101| 日韩av中文字幕一区二区三区| 18成人在线观看| 国产日韩v精品一区二区| 日韩午夜中文字幕| 337p亚洲精品色噜噜狠狠| 色综合久久久久久久久| 成人中文字幕电影| 国产呦精品一区二区三区网站| 日本不卡免费在线视频| 亚洲风情在线资源站| 一区二区视频免费在线观看| 国产精品毛片高清在线完整版| 久久众筹精品私拍模特| 日韩免费看的电影| 精品国产乱子伦一区| 精品精品国产高清a毛片牛牛 | 国产精品高潮呻吟久久| 久久色在线观看| 久久免费视频色| 欧美电视剧免费观看| 欧美一级在线视频| 欧美一区永久视频免费观看| 欧美一区二区久久久| 91麻豆精品91久久久久同性| 91精品国产色综合久久不卡电影 | 久久精品欧美日韩精品| 久久久亚洲高清| 欧美激情一区二区| 国产精品久久久久久久久搜平片 | 日本精品裸体写真集在线观看| 波多野结衣在线aⅴ中文字幕不卡| 国产精品原创巨作av| 成人视屏免费看| 一本色道久久综合亚洲精品按摩| 99视频一区二区| 在线观看国产日韩| 欧美人牲a欧美精品| 欧美一区二区三区喷汁尤物| 精品国产乱码91久久久久久网站| 国产亚洲成aⅴ人片在线观看| 国产精品丝袜在线| 亚洲综合区在线| 六月丁香婷婷色狠狠久久| 国产在线不卡一区| 97se狠狠狠综合亚洲狠狠| 欧美日本一道本在线视频| 精品国产电影一区二区| 国产人成一区二区三区影院| 国产精品九色蝌蚪自拍| 亚洲一本大道在线| 国产米奇在线777精品观看| 国产成人免费视| 欧美亚洲国产一区二区三区va| 欧美一区二区黄| 亚洲国产激情av| 亚洲成人精品一区二区| 国产一本一道久久香蕉| 在线观看视频一区二区| 日韩免费性生活视频播放| 日本一区二区动态图| 亚洲123区在线观看| 国产精品羞羞答答xxdd| 一本色道久久综合亚洲精品按摩| 欧美一区二区黄色| 亚洲美女视频在线| 另类综合日韩欧美亚洲| 色婷婷综合久久久中文一区二区 | 免费高清在线视频一区·| 亚洲精品福利视频网站| 精品久久人人做人人爽| 综合色中文字幕|