piecemove.java

来自「一个简单的Java Swing 游戏Blokus~方块圈地~Eclipse3.0」· Java 代码 · 共 104 行

JAVA
104
字号
/*
 * 创建日期 2005-4-14
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package frame;

import java.awt.Cursor;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
/**
 * @author Robert
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class PieceMove extends MouseMotionAdapter{
	private CreateGame game;
	private boolean mouseIn = false; 
	int x,y;
	
	public PieceMove(CreateGame game){
		this.game = game;
	}
	
	public void mouseMoved(MouseEvent e){
		if(game.getPOnMouse() == true){
			try{
				move(e);
				Thread.sleep(10);
				game.setKeyX(e.getX());
				game.setKeyY(e.getY());
			}
			catch(InterruptedException evt){
					
			}
		}else{
			try{
				menuChoose(e);
				Thread.sleep(10);
			}
			catch(InterruptedException evt){
					
			}
		}
	}
	
	public void move(MouseEvent e){
		x = e.getX();
		y = e.getY();
		//System.out.println("x:" + x + " y:" + y);
		game.setPx(x);
		game.setPy(y);
		game.repaint();
	}
	
	public void menuChoose(MouseEvent e){
		x = e.getX();
		y = e.getY();
		if(mouseIn == true){
			if(!(x >= 20 && x <= 200 && y >= 480 && y <= 540)
					&& game.getStartC() == true){
				mouseIn = false;
				game.setStartC(false);
			}
			if(!(x >= 240 && x <= 420 && y >= 480 && y <= 540)
					&& game.getOptionC() == true){
				mouseIn = false;
				game.setOptionC(false);
			}
			if(!(x >= 20 && x <= 200 && y >= 580 && y<= 640)
					&& game.getExitC() == true){
				mouseIn = false;
				game.setExitC(false);
			}
			if(!(x >= 240 && x <= 420 && y >= 580 && y<= 640)
					&& game.getGiveUpC() == true){
				mouseIn = false;
				game.setGiveUpC(false);
			}
			
		}
		
		if(mouseIn == false){
			if(x >= 20 && x <= 200 && y >= 480 && y <= 540
					&& game.getStartC() == false){
				mouseIn = true;
				game.setStartC(true);
			}else if(x >= 240 && x <= 420 && y >= 480 && y <= 540){
				mouseIn = true;
				game.setOptionC(true);
			}else if(x >= 20 && x <= 200 && y >= 580 && y<= 640){
				mouseIn = true;
				game.setExitC(true);
			}else if(x >= 240 && x <= 420 && y >= 580 && y<= 640){
				mouseIn = true;
				game.setGiveUpC(true);
			}
		}
		game.repaint();
	}
}

⌨️ 快捷键说明

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