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

📄 board.java

📁 自己写的monopoly 游戏代码
💻 JAVA
字号:
package com.xmu.typot.domain;
import java.awt.Graphics2D;

import com.xmu.typot.constant.*;
public class Board {
	
	private Square[] squares = new Square[Constants.SIZE];
	
	public Board(MonopolyGame l)
	{
		buildSquares();
		initListenerSquares(l);
		linkSquares();
	}
	
	private void initListenerSquares(MonopolyGame l)
	{
		for(int i = 0; i < 40; i ++)
			squares[i].addListener(l);
	}
	private void linkSquares() {
		
		for(int i = 0; i < 39; i ++)
		{
			squares[i].setNextSquare(squares[i+1]);
		}
		squares[39].setNextSquare(squares[0]);
	}
	
	public Square getSquare(Square start,int distance)
	{
		int endIndex = (start.getIndex()+distance) % Constants.SIZE;
		return squares[endIndex];
	}
	
	public void draw(Graphics2D g2d)
	{
		for(int i = 0; i < Constants.SIZE; i ++)
			squares[i].draw(g2d);
	}
	
	private void buildSquares() {
		
		buildBank(0);
		buildOthers();
	}
	private void buildOthers() {
		
		for(int i = 1; i < 11; i ++)
		{
			squares[i] = new RentSquare("rentSquare"+i,i);
			squares[i].setStartX(i*50);
			squares[i].setStartY(0);
		}
		
		buildMarket(11);
		
		for(int i = 12; i < 20; i ++)
		{
			squares[i] = new RentSquare("rentSquare"+i,i);
			squares[i].setStartX(550);
			squares[i].setStartY((i-11)*50);
		}
		
		buildHospital(20);
		
		for(int i = 21; i < 31; i ++)
		{
			squares[i] = new RentSquare("rentSquare"+i,i);
			squares[i].setStartX((31-i)*50);
			squares[i].setStartY(450);
		}
		
//		buildStick(26);
		
//		for(int i = 27; i < 31; i ++)
//		{
//			squares[i] = new RentSquare("rentSquare"+i,i);
	//		squares[i].setStartX((31-i)*50);
	//		squares[i].setStartY(450);
	//	}
		
		buildPrison(31);
		
		for(int i = 32; i < 36; i ++)
		{
			squares[i] = new RentSquare("rentSquare"+i,i);
			squares[i].setStartX(0);
			squares[i].setStartY((39-i)*50+50);
		}
		
		buildQuestion(36);
		
		for(int i = 37; i < 40; i ++)
		{
			squares[i] = new RentSquare("rentSquare"+i,i);
			squares[i].setStartX(0);
			squares[i].setStartY((39-i)*50+50);
		}
	}
	
	private void buildQuestion(int i) {
		// TODO Auto-generated method stub
		squares[i] = new QuestionSquare("question",i);
		squares[i].setStartX(0);
		squares[i].setStartY((39-i)*50+50);
	}
	private void buildPrison(int i) {		
		squares[i] = new PrisonSquare("prison",i);
		squares[i].setStartX(0);
		squares[i].setStartY(450);
	}
	
	private void buildStick(int i) {
		
		squares[i] = new StickSquare("hospital",i);
		squares[i].setStartX((31-i)*50);
		squares[i].setStartY(450);
	}
	
	private void buildHospital(int i) {
		squares[i] = new HospitalSquare("hospital",i);
		squares[i].setStartX(550);
		squares[i].setStartY(450);
	}
	
	private void buildMarket(int i) {		
		squares[i] = new TaxtSquare("taxt",i);
		squares[i].setStartX(550);
		squares[i].setStartY(0);
	}
	
	private void buildBank(int i) {
		squares[i] = new BankSquare("bank",i);
		squares[i].setStartX(0);
		squares[i].setStartY(0);
	}
	public Square getSquares(int i) {
		return squares[i];
	}
	public void setSquares(Square[] squares) {
		this.squares = squares;
	}
	
}

⌨️ 快捷键说明

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