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

📄 piece.java

📁 几个不错的手机程序例子
💻 JAVA
字号:
/*
 * Piece.java
 *
 * Copyright 2001 SkyArts. All Rights Reserved.
 */

import javax.microedition.lcdui.Graphics;

/**
 * 显示Cube方块的类 
 *
 * @author  Hideki Yonekawa
 * @version 1.0
 */
class Piece {
	/** 储存红色的常量 */
	static final int		RED			= 0x00FF0000;
	/** 储存绿色的常量 */
	static final int		GREEN			= 0x0000FF00;
	/** 储存蓝色的常量 */
	static final int		BLUE			= 0x000000FF;
	/** 储存黄色的常量 */
	static final int		YELLOW			= 0x00FFFF00;

	/** 储存现在颜色的变量 */
	int				currentColor		= 0x00FFFFFF;

	/** 代表是否与上方方块凑成同样颜色的标志变量 */
	boolean				isMatchUp		= false;
	/** 代表是否与左方方块凑成同样颜色的标志变量 */
	boolean				isMatchLeft		= false;
	/** 代表是否与下方方块凑成同样颜色的标志变量 */
	boolean				isMatchDown		= false;
	/** 代表是否与右方方块凑成同样颜色的标志变量 */
	boolean				isMatchRight		= false;

	/** 储存宽度的常量 */
	static final int		WIDTH			= 12;
	/** 储存高度的常量 */
	static final int		HEIGHT			= 12;

	/**
	 * 进行描绘的方法
	 * 进行@param	g	描绘时所用的Graphics对象
	 * 开始@param	x	描绘的X坐标
	 * 开始@param	y	描绘的Y坐标
	 */
	void doDraw(Graphics g, int x, int y) {
		//以现在所储存的颜色来描绘内侧
		g.setColor(this.currentColor);
		g.fillRect(x, y, WIDTH, HEIGHT);

		//描绘外侧(与隔壁凑在一起的话就不描绘)
		g.setColor(0x00000000);
		if(! isMatchUp) {
		//没有和上面凑成同色时
			g.drawLine(x, y, x+WIDTH, y);
		}else {
			if(isMatchLeft) {
			//细微调整
				g.drawLine(x, y, x, y);
			}
		}

		if(! isMatchRight) {
		//没有和右方凑成同色时
			g.drawLine(x+WIDTH, y, x+WIDTH, y+HEIGHT);
		}

		if(! isMatchDown) {
		//没有和下方凑成同色时
			g.drawLine(x, y+HEIGHT, x+WIDTH, y+HEIGHT);
		}

		if(! isMatchLeft) {
		//没有和左方凑成同色时
			g.drawLine(x, y, x, y+HEIGHT);
		}
	}
}

⌨️ 快捷键说明

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