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

📄 map.java

📁 飞行棋固定地图板,模拟飞行棋游戏的java编程游戏
💻 JAVA
字号:
package com.hlfly.entity;

public class Map {
	
	/**
	 * @map 地图
	 * @luck 幸运轮盘 ¤1
	 * @time 时空隧道 〓2
	 * @landmine 地雷 ★3
	 * @pause 暂停 ■4
	 */
	public int[] map=new int[100];
	int[] luck={6,9,21,27,56,66,78,96};
	int time[]={22,52,61,86,90};
	int landmine[]={5,14,23,32,53,71,91};
    int pause[]={4,15,19,42,67,81};
    
    /**
     * 构造函数(初始化地图)
     *
     */
    public Map(){
    	
    	//定义幸运轮盘的位置
    	for(int i=0;i<luck.length;i++){
    		map[luck[i]]=1;
    	}
    	//定义时间隧道的位置
    	for(int i=0;i<time.length;i++){
    		map[time[i]]=2;
    	}
		//定义地雷的位置
    	for(int i=0;i<landmine.length;i++){
    		map[landmine[i]]=3;
    	}
    	//定义暂停的位置
    	for(int i=0;i<pause.length;i++){
    		map[pause[i]]=4;
    	}
    	
    }
    
    /**
     * 显示地图关卡位置对应的图形
     * @param index       地图上当前位置的编号
     * @param type		   地图上对应位置的关卡类型
     * @param playpost1   玩家1的位置
     * @param playpost2   玩家2的位置
     * @return
     */
    public String getGraph(int index,int type,int playpost1,int playpost2){
    	String temp="";
    	if(playpost1==index&&playpost1==playpost2){	
    		temp="@@";
    	}else if(playpost1==index){
    		temp=" A";
    	}else if(playpost2==index){
    		temp=" B";
    	}else{
    		
    		switch(type){
    		
    		case 1:
    			temp="¤";
    			break;
    		case 2:
    			temp="〓";
    			break;
    		case 3:
    			temp="★";
    			break;
    		case 4:
    			temp="■";
    			break;
    		default:
    			temp="∷";
    		
    		}
    		
    	}
        
    	return temp;
    }
    
    /**
     * 输出奇数行(第一,三行)
     * @param start     输出的起始点在地图上的位置
     * @param end       输出的终点在地图上的位置
     * @param playpost1 玩家1在地图上的位置
     * @param playpost2 玩家2在地图上的位置
     */
    public void showLine13(int start,int end,int playpost1,int playpost2){
    	
    	for(int i=start-1;i<end;i++){
    		System.out.print(getGraph(i,map[i],playpost1,playpost2));
    	}
    	
    }
    
    /**
     * 输出偶数行(第二行)
     * @param start     输出的起始点在地图上的位置
     * @param end       输出的终点在地图上的位置
     * @param playpost1 玩家1在地图上的位置
     * @param playpost2 玩家2在地图上的位置
     */
    public void showLine2(int start,int end,int playpost1,int playpost2){
   
    	for(int i=end-1;i>=start-1;i--){
    		System.out.print(getGraph(i,map[i],playpost1,playpost2));
    	}
    }
    
    /**
     * 输出右竖列
     * @param start     输出的起始点在地图上的位置
     * @param end       输出的终点在地图上的位置
     * @param playpost1 玩家1在地图上的位置
     * @param playpost2 玩家2在地图上的位置
     */
    public void showLineRight(int start,int end,int playpost1,int playpost2){
    	
    	for(int i=start-1;i<end;i++){
    		for(int j=0;j<27;j++){
    			System.out.print("  ");
    		}
    		System.out.println(getGraph(i,map[i],playpost1,playpost2));
    	}
    }
    
    /**
     * 输出左竖列
     * @param start     输出的起始点在地图上的位置
     * @param end       输出的终点在地图上的位置
     * @param playpost1 玩家1在地图上的位置
     * @param playpost2 玩家2在地图上的位置
     */
    public void showLineLeft(int start,int end,int playpost1,int playpost2){
  
    	for(int i=start-1;i<end;i++){
    		System.out.println(getGraph(i,map[i],playpost1,playpost2));
    	}
    }
    /**
     * 得到对战地图的方法
     * @param playpost1  玩家1在地图上的位置
     * @param playpost2  玩家2在地图上的位置
     */
    public void getMap(int playpost1,int playpost2){
    	
    	showLine13(1,30,playpost1,playpost2);
    	System.out.print("\n");
    	showLineRight(31,35,playpost1,playpost2);
    	showLine2(36,65,playpost1,playpost2);
    	System.out.print("\n");
    	showLineLeft(66,70,playpost1,playpost2);
    	showLine13(71,100,playpost1,playpost2);
    	
    }
    
}

⌨️ 快捷键说明

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