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

📄 bgame.java

📁 gobee j2me
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					a++;
					break;
				// Solid Block
				case '#':
					rm.rmBlock[a].ID=20;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
					rm.rmBlock[a].animate();
					a++;
					break;
				// Solid Block Green Beetle
				case '+':
					rm.rmBlock[a].ID=47;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(47, 47, 47, 47, 47, 47, 47, 47, 47, 47);
					rm.rmBlock[a].animate();
					a++;
					break;

				// Solid Block Red Beetle Up/Down
				case 'u':
					rm.rmBlock[a].ID=49;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(48, 48, 48, 48, 48, 48, 48, 48, 48, 48);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].currentDir=1;
					a++;
					break;
				// Solid Block Red Beetle Left / Right
				case 'l':
					rm.rmBlock[a].ID=49;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(49, 49, 49, 49, 49, 49, 49, 49, 49, 49);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].currentDir=3;
					a++;
					break;

				// Solid
				case '@':
					rm.rmBlock[a].ID=21;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(6, 6, 6, 6, 6, 6, 6, 6, 6, 6);
					rm.rmBlock[a].animate();
					a++;
					break;
				// Spikey ball-to-be
				case 'X':
					rm.rmBlock[a].ID=46;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(18, 18, 18, 18, 18, 18, 18, 18, 18, 18);
					rm.rmBlock[a].animate();
					a++;
					break;
				// Half-Dead Flower
				case 'f':
					rm.rmBlock[a].ID=30;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(5, 5, 5, 5, 5, 5, 5, 5, 5, 5);
					rm.rmBlock[a].animate();
					a++;
					rm.numFlowers++;
					break;
				// Alive Flower
				case 'F':
					rm.rmBlock[a].ID=31;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(1, 2, 1, 2, 1, 2, 1, 2, 1, 2);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.numFlowers++;
					a++;
					break;
				// Blue Arrow Mover
				case 'b':
					rm.rmBlock[a].ID=40;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(15, 16, 9, 10, 13, 14, 11, 12, 9, 9);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.rmBlock[a].moves=true;
					rm.rmBlock[a].moveType=1;
					a++;
					break;
				// Green Arrow Mover
				case 'g':
					rm.rmBlock[a].ID=40;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(33, 34, 27, 28, 31, 32, 29, 30, 27, 27);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.rmBlock[a].moves=true;
					rm.rmBlock[a].moveType=2;
					a++;
					break;
				// Yellow Ball Mover
				case 'O':
					rm.rmBlock[a].ID=50;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(7, 8, 7, 8, 7, 8, 7, 8, 7, 8);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.rmBlock[a].moves=true;
					rm.rmBlock[a].moveType=1;
					rm.rmBlock[a].killer=true;
					a++;
					break;
				// Nasty Eater Mover
				case '<':
					rm.rmBlock[a].ID=50;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(21, 22, 19, 20, 23, 24, 25, 26, 21, 21);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.rmBlock[a].moves=true;
					rm.rmBlock[a].moveType=2;
					rm.rmBlock[a].killer=true;
					a++;
					break;
				// You - little bee
				case '%':
					yourBlock=a;
					rm.rmBlock[a].ID=99;
					rm.rmBlock[a].xpos=x;
					rm.rmBlock[a].ypos=y;
					rm.rmBlock[a].setAnimArray(41, 42, 37, 38, 43, 44, 39, 40, 41, 41);
					rm.rmBlock[a].animate();
					rm.rmBlock[a].animates=true;
					rm.rmBlock[a].moves=false;
					rm.rmBlock[a].moveType=4;
					a++;
					break;
				default:
					break;
			}
			// Adjust x and y positions
			x+=20;
			if (x>300)
			{
				x=0;
				y+=20;
			}
		}
		// New room size is number of blocks in room
		roomSize=a;

		// Change loop delay depending on number of animations to make levels seem
		// to run at the same speed.
		delay=45;
		for (int j=0; j<roomSize; j++)
		{
			if (rm.rmBlock[j].animates)
			{
				delay-=3;
				if (delay < 1) delay=1;
			}
		}
		drawStats();
	}



	// Keyboard events

	public void keyPressed(KeyEvent e)
	{
		// Called when the user has pressed a key
		int key = e.getKeyCode();

		// If we aren't in the game, change state to 1
		// to draw the room
		switch (gameState)
			{
			case 0:
				gameState=1;
				break;
			case 10:
				startOver();
				break;
			}

		switch (key)
			{
			case KeyEvent.VK_DOWN:
				rm.rmBlock[yourBlock].moves=true;
				rm.rmBlock[yourBlock].currentDir=2;
				break;
			case KeyEvent.VK_LEFT:
				rm.rmBlock[yourBlock].moves=true;
				rm.rmBlock[yourBlock].currentDir=3;
				break;
			case KeyEvent.VK_RIGHT:
				rm.rmBlock[yourBlock].moves=true;
				rm.rmBlock[yourBlock].currentDir=4;
				break;
			case KeyEvent.VK_UP:
				rm.rmBlock[yourBlock].moves=true;
				rm.rmBlock[yourBlock].currentDir=1;
				break;

			// Instructions
			case KeyEvent.VK_I:
				gameState=10;
				break;

			// Speed adjust
			case KeyEvent.VK_Z:
				delay+=1;
				if (delay>55) delay=55;
				drawStats();
				break;
			case KeyEvent.VK_X:
				delay-=1;
				if (delay<1) delay=1;
				drawStats();
				break;
			// secret advance level
			case KeyEvent.VK_TAB:
				rm.numFlowers=0;
				break;
			// Quit
			case KeyEvent.VK_ESCAPE:
				s_dead.play();
				startOver();
				break;
			default:
				break;
			}
	}

	public void keyTyped(KeyEvent e) { }
	public void keyReleased(KeyEvent e) { }

	// Draw flowers to collect etc on right of screen
	public void drawStats()
	{
		// clear stats
		paper.setColor(Color.black);
		paper.fillRect(325,50,xsize-325,ysize-80);

		// Draw a flower to collect
		int y=50;
		for (int a=0; a < rm.numFlowers; a++)
		{
			paper.drawImage(gfx, 325, y, 345, y+20,
				20, 0, 40, 20,
				null);
				y+=22;
		}

		paper.setColor(Color.white);
		paper.drawString("GoBee!",325,10);
		paper.setColor(Color.green);
		paper.drawString("(c)'03",325,21);
		paper.drawString("Ralph",325,32);
		paper.drawString("Capper",325,43);
		paper.drawString(" z & x",325,265);
		paper.drawString("Speed =",325,275);
		paper.drawString(" "+(55-delay),335,285);
		paper.drawString("ESC =",325,300);
		paper.drawString("  Quit",325,311);
	}

	// Draw instructions page
	public void drawInstructions()
	{
		paper.setColor(Color.black);
		paper.fillRect(0,0,xsize,ysize);
		paper.setColor(Color.green);

		paper.drawString("GoBee! (c)2003, Ralph Capper.  ralph_22@hotmail.com "	,40,10);
		paper.drawString("Overview: "	,40,30);
		paper.drawString(" You are this little guy"	,40,50);
		paper.drawString(" You must collect these."	,40,70);
		paper.drawString(" These can be changed into what you need to collect by making"	,40,90);
		paper.drawString(" these creatures move into them."	,40,110);
		paper.drawString(" These can be pushed around."	,40,130);
		paper.drawString(" These things will kill you."	,40,150);
		paper.drawString("Other:"	,40,180);
		paper.drawString(" You can adjust speed of each room with the z and x keys."	,40,200);
		paper.drawString(" Click on the adjust level to change level 'series'"	,40,220);
		paper.drawString(" Press ESC if you get stuck to return to title screen."	,40,240);
		paper.drawString(" Email me 4 details of how to get Java source code + ability 2"	,40,260);
		paper.drawString(" create your own levels."	,40,280);
		paper.drawString("(Press any key)",5,343);
		// Bee
		paper.drawImage(gfx, 12, 35, 30, 55,
			41*20, 0, 41*20+20, 20, null);
		// Flower
		paper.drawImage(gfx, 12, 55, 30, 75,
			20, 0, 40, 20, null);
		// Dead flower
		paper.drawImage(gfx, 12, 75, 30, 95,
			5*20, 0, 5*20+20, 20, null);
		// Beee Thing
		paper.drawImage(gfx, 12, 95, 30, 115,
			10*20, 0, 10*20+20, 20, null);
		// Pushy Thing
		paper.drawImage(gfx, 12, 115, 30, 135,
			3*20, 0, 3*20+20, 20, null);
		// Killer Thing
		paper.drawImage(gfx, 12, 135, 30, 155,
			19*20, 0, 19*20+20, 20, null);
	}
}

⌨️ 快捷键说明

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