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

📄 hall.java

📁 J2ME实现得梭哈游戏联网程序
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
			Tool.drawImage(hallbg, imgbgpic[3], imgbgpic[0].getWidth(),
					imgbgpic[0].getHeight());
			imgbgpic = null;
			hallbg = null;
			Tool.gc();
			m_LoadingState = k_LoadingHallres1;
			m_LoadingProgress += 5;
			break;
		}
		case k_LoadingHallres1: {
			Tool.setDis(new DataInputStream(s_midlet.getClass()
					.getResourceAsStream("/hallres_1.png")));
			imgHallres = Tool.loadImages();
			Tool.setDis(new DataInputStream(s_midlet.getClass()
					.getResourceAsStream("/number.png")));
			imgNumber = Tool.loadImages();
			m_LoadingState = k_LoadingHallres2;
			m_LoadingProgress += 5;
			break;
		}
		case k_LoadingHallres2: {
			Tool.setDis(new DataInputStream(s_midlet.getClass()
					.getResourceAsStream("/hallres_2.png")));
			imgHallres2 = Tool.loadImages();
			m_LoadingState = k_LoadingHallmenu;
			m_LoadingProgress += 5;
			break;
		}
		case k_LoadingHallmenu: {
			Tool.setDis(new DataInputStream(s_midlet.getClass()
					.getResourceAsStream("/menu.png")));
			imgmenu = Tool.loadImages();
			m_LoadingProgress += 5;
			m_LoadingState = k_LoadingConnectNet;
			break;
		}
		case k_LoadingConnectNet: {
			_commu.connect();
			setDis(null);
			m_LoadingState = k_LoadingCheckServer;
			m_LoadingProgress += 5;
			break;
		}
		case k_LoadingCheckServer:// 特殊同步保护
		{
			if (_commu.isConnected && _commu.isThreadLive) {
			if(!b_logined){//暂时的判断条件
				s_player = Player.CreatePlayer(s_player);
				_commu.formatSendPack(GR_LOGON, LOGON_USERID);
			}
			else {
				resetGplayerAndTableChair();
				_commu.formatSendPack(GR_USER, USER_TABLE_INFO_REQ);
			}
			m_LoadingState = k_LoadingLogin;
			m_LoadingProgress += 5;
			} else
				return false;
			break;
		}
		case k_LoadingLogin: {
			if (b_logined) {
				bsendHeart = true;
				_commu.shakeHands = true;
				m_LoadingState = k_LoadingDataComplete;
				m_LoadingProgress += 5;
			} else
				return false;
			break;
		}
		case k_LoadingDataComplete: {
			if (tableDataComplete) {
				if (chairsPerTable == 6) {
					longbutton_normal = Image.createImage(LONGBUTTON_WIDTH,
							LONGBUTTON_HEIGHT);
					longbutton_normal_g = longbutton_normal.getGraphics();
					longbutton_ingame = Image.createImage(LONGBUTTON_WIDTH,
							LONGBUTTON_HEIGHT);
					longbutton_ingame_g = longbutton_ingame.getGraphics();

					Tool.drawRegion(longbutton_normal_g, imghallbg, 39, 68,
							89, 36, 0, 0, 0);
					Tool.drawImage(longbutton_ingame_g, longbutton_normal, 0,
							0);
					for (byte i = 3; i >= 0; i--) {
						Tool.drawImage(longbutton_normal_g, imgHallres[0],
								15 + i * 15, 0);
						Tool.drawImage(longbutton_ingame_g, imgHallres[1],
								15 + i * 15, 0);
					}
					Tool.drawImage(longbutton_normal_g, imgHallres[0], 0, 0);
					Tool.drawImage(longbutton_ingame_g, imgHallres[1], 0, 0);
					Tool.drawRegion(longbutton_normal_g, imgHallres[0], 0, 0,
							15, 36, longbutton_normal.getWidth() - 15, 0,
							Def.FLAG_MIRROR);
					Tool.drawRegion(longbutton_ingame_g, imgHallres[1], 0, 0,
							15, 36, longbutton_normal.getWidth() - 15, 0,
							Def.FLAG_MIRROR);
				} else {
					longbutton_normal = null;
					longbutton_normal_g = null;
					longbutton_ingame = null;
					longbutton_ingame_g = null;
					Tool.gc();
				}
				
				_commu.formatSendPack(GR_USER,USER_TABLEPLAYER_INFO_REQ);//请求分页信息
				
				m_LoadingState = k_LoadingDataComplete_2;
				m_LoadingProgress += 5;
			} else
				return false;
			break;
		}
		case k_LoadingDataComplete_2: {
			if (true/*PlayerDataComplete*/) {
				Tool.setDis(new DataInputStream(s_midlet.getClass()
						.getResourceAsStream("/logo.png")));
				imglogo = Tool.loadImages();
				m_LoadingState = k_LoadingDrawHallbg;
				m_LoadingProgress += 5;
			} else
				return false;
			break;
		}
		case k_LoadingDrawHallbg: {
			// 往BG上画背景
			Tool.drawImage(bg, imghallbg, 0, 0);
			Tool.drawImage(bg, imglogo[0], 451, 6);
			// 画自动加入
			Tool.drawImage(bg, imgHallres[7], 450, 378);
			//翻页相关
			Tool.drawString(bg, "翻页", Def.COLOR_WHITE, Def.FONTMIDDLE, 484, 323);
			Tool.drawImage(bg, imgHallres[4], 454, 329);
			Tool.drawRegion(bg, imgHallres[4], 0, 0, imgHallres[4].getWidth(),
							  imgHallres[4].getHeight(), 537, 329, Def.FLAG_MIRROR);
			drawNumber(bg, 469, 346, Currentpage+1);
			drawNumber(bg, 496, 346, -1);
			drawNumber(bg, 509, 346, pagenumber);
			//人物信息
			drawSelfPlayerInfo();
			m_LoadingState = k_LoadingDataChairs;
			m_LoadingProgress += 5;
			break;
		}
		case k_LoadingDataChairs: {
			m_LoadingProgress += 5;
			m_LoadingState = k_LoadingEnd;
			break;
		}
		case k_LoadingEnd: {
			m_LoadingProgress += 5;
			if (m_LoadingProgress >= 100) {
				Tool.setDis(null);
				Tool.releaseTable();// 去掉读图片的CRC校验表
				return true;
			}
			break;
		}
		}
		return false;
	}

	void updateButton(boolean restore) {
		// System.out.println("BUTTON_SELECTED="+BUTTON_SELECTED);
		if (restore)
			flashButton(BUTTON_SELECTED, false, true);
		else
			flashButton(BUTTON_SELECTED, true, false);
	}

	int highLight;

	void flashButton(int buttonID, boolean flash, boolean restore) {
		int pos_x = -1, pos_y = -1, width = -1, height = -1;
		if (!OpenMenu&&!popMessage) // 不在菜单选择界面
		{
			if (buttonID >= 0 && buttonID < chairsPerTable * tablePerPage) // 座位按钮
			{
				pos_x = START_CHAIR_X
						+ (buttonID / chairsPerTable % tablePerLine)
						* DISTANCE_X
						+ chairsBounds[buttonID % chairsPerTable][0];
				pos_y = START_CHAIR_Y + DISTANCE_Y
						* (buttonID / (chairsPerTable * tablePerLine))
						+ chairsBounds[buttonID % chairsPerTable][1];
				width = 32;
				height = 32;
			} else // 特殊按钮 比如自动加入 系统设置等
			{

			}
			if (flash) {
				if (highLight++ % 5 > 2) {
					Tool.drawRect(s_g, Def.COLOR_BUTTON_SELECTED1, pos_x - 1,
							pos_y - 1, width + 2, height + 2);
					Tool.drawRect(s_g, Def.COLOR_BUTTON_SELECTED1, pos_x,
							pos_y, width, height);
				} else {
					Tool.drawRect(s_g, Def.COLOR_BUTTON_SELECTED2, pos_x - 1,
							pos_y - 1, width + 2, height + 2);
					Tool.drawRect(s_g, Def.COLOR_BUTTON_SELECTED2, pos_x,
							pos_y, width, height);
				}
			} else {
				// Vlutil.drawRect(s_g, Def.COLOR_BUTTON_SELECTED1, pos_x ,
				// pos_y , width,
				// height);
			}
			if (restore) {
				updateBg(true, pos_x - 1, pos_y - 1, width + (2 << 1), height
						+ (2 << 1));
			}
		}else if(popMessage){//信息选择框
			if((messagetype&0x01)!=0){//确定
				if (flash) {
					if (highLight++ % 5 > 2) {
						Tool.drawImage(s_g, imgHallres[9], Message_X +Button_Kind1_X ,
								Message_Y +Button_Kind1_Y);
					} else {
						Tool.drawRegion(s_g, MessageBuffer, Button_Kind1_X, Button_Kind1_Y, imgHallres[9].getWidth(),
								imgHallres[9].getHeight(), Message_X +Button_Kind1_X ,Message_Y +Button_Kind1_Y, 0);
					}
				}
			}else{
				byte picid=1;
				if((messagetype&0x02)!=0){//同意or不同意
					picid = (byte) (messageselect==0?2:4);
				}else if((messagetype&0x04)!=0){//是or不是
					picid = (byte) (messageselect==0?6:8);
				}
				if (flash) {
					if (highLight++ % 5 > 2) {
						if(picid==2||picid==6){
						Tool.drawImage(s_g, imgHallres2[picid], Message_X +
								Button_Kind2_X1,Message_Y +Button_Kind2_Y2);
						} else Tool.drawImage(s_g, imgHallres2[picid], Message_X +
								Button_Kind2_X2,Message_Y +Button_Kind2_Y2);
					} else {
						if(picid==2||picid==6){
							Tool.drawRegion(s_g, MessageBuffer, Button_Kind2_X1, Button_Kind2_Y1, imgHallres2[picid].getWidth(),
									imgHallres[picid].getHeight(), Message_X +Button_Kind2_X1 ,Message_Y +Button_Kind2_Y1, 0);
						}
						else Tool.drawRegion(s_g, MessageBuffer, Button_Kind2_X2, Button_Kind2_Y2, imgHallres2[picid].getWidth(),
								imgHallres[picid].getHeight(), Message_X +Button_Kind2_X2 ,Message_Y +Button_Kind2_Y2, 0);
					}
				}
			}
			if (restore) {
				Tool.drawRegion(s_g, MessageBuffer, 0, 0, MessageBuffer.getWidth(), MessageBuffer.getHeight(),
						Message_X,Message_Y, 0);
			}
		} else {
			switch (MENU_SELECTED) {
			case detail: {
				pos_x = 3;pos_y = 126;width = 49;height = 51;
				break;
			}
			case makefriend: {
				pos_x = 55;pos_y = 126;width = 101;height = 24;
				break;
			}
			case vip_kick: {
				pos_x = 55;pos_y = 153;width = 101;height = 24;
				break;
			}
			case invite: {
				pos_x = 3;pos_y = 181;width = 49;height = 24;
				break;
			}
			case close: {
				pos_x = 55;
				pos_y = 181;
				width = 49;
				height = 24;
				break;
			}
			case lookon: {
				pos_x = 107; pos_y = 181; width = 49; height = 24;
				break;
			}
			}
			if (flash) {
				if (highLight++ % 5 > 2) {
					Tool.drawImage(s_g, imgmenu[MENU_SELECTED + 1], pos_x
							+ menu_x, pos_y + menu_y);
				} else {
					Tool.drawRegion(s_g, imgmenu[0], pos_x, pos_y, width,
							height, pos_x + menu_x, pos_y + menu_y, 0);
				}
			}
			if (restore) {
				Tool.drawRegion(s_g, imgmenu[0], pos_x, pos_y, width, height,
						pos_x + menu_x, pos_y + menu_y, 0);
			}
		}

	}

	void getMovePath_Right() {
		if (!OpenMenu&&!popMessage) {
			switch (chairsPerTable) {
			case 2: {
				if (BUTTON_SELECTED % 2 == 0) {
					if (BUTTON_SELECTED == 4 || BUTTON_SELECTED == 10
							|| BUTTON_SELECTED == 16 || BUTTON_SELECTED == 22) {
						isCanMove(-3);
					} else {
						isCanMove(3);
					}
				} else {
					isCanMove(-1);
				}
				break;
			}
			case 3: {
				switch (BUTTON_SELECTED % 3) {
				case 0: {
					if (BUTTON_SELECTED == 6 || BUTTON_SELECTED == 15
							|| BUTTON_SELECTED == 24) {
						isCanMove(-4);
					} else {
						isCanMove(5);
					}
					break;
				}
				case 1: {
					if (BUTTON_SELECTED == 7 || BUTTON_SELECTED == 16
							|| BUTTON_SELECTED == 25) {
						isCanMove(-6);
					} else {
						isCanMove(3);
					}
					break;
				}
				case 2: {
					isCanMove(-2);
					break;
				}
				}
				break;
			}
			case 4: {
				if (BUTTON_SELECTED % 4 == 0) {
					if (BUTTON_SELECTED == 8 || BUTTON_SELECTED == 20
							|| BUTTON_SELECTED == 32) {
						isCanMove(-6);
					} else {
						isCanMove(6);
					}
				} else {
					isCanMove(-(BUTTON_SELECTED % 4));
				}
				break;
			}
			case 5: {
				switch (BUTTON_SELECTED % 5) {
				case 0: {
					if (BUTTON_SELECTED == 5 || BUTTON_SELECTED == 15
							|| BUTTON_SELECTED == 25) {
						isCanMove(-2);
					} else {
						isCanMove(8);
					}
					break;
				}
				case 1:
				case 4: {
					isCanMove(-(BUTTON_SELECTED % 5));
					break;
				}
				case 2: {
					isCanMove(-1);
					break;
				}
				case 3: {
					isCanMove(1);
					break;
				}
				}
				break;
			}
			case 6: {
				switch (BUTTON_SELECTED % 6) {
				case 0: {
					if (BUTTON_SELECTED == 6 || BUTTON_SELECTED == 18
							|| BUTTON_SELECTED == 30) {
						isCanMove(-3);
					} else {
						isCanMove(9);
					}
					break;
				}
				case 1:
				case 2: {
					isCanMove(-1);
					break;
				}
				case 3:
				case 4: {
					isCanMove(1);
					break;
				}
				case 5: {
					isCanMove(-5);
					break;
				}
				}
				break;
			}
			}
		} if(popMessage){
			if((messagetype&0x01) ==0) messageselect = 1;
		}else {
			switch (MENU_SELECTED) {
			case detail: {
				if (false)// 可以使用加为好友功能
					MENU_SELECTED++;
				else if (isMember()
						/*&& Gplayer[(tableChairs[BUTTON_SELECTED] & 0x3f)].Property == 0*/)// 可以使用踢人功能
					MENU_SELECTED += 2;
				break;
			}
			case invite: {
				MENU_SELECTED++;
				break;
			}
			case close: {
				if (false)// 有旁观
					MENU_SELECTED++;
				break;
			}
			}
		}
	}

	void getMovePath_Left() {

⌨️ 快捷键说明

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