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

📄 linkgame.java

📁 小游戏
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		setLayout(null);
		jFramePane=new BackGroundPane();
		jFramePane.setLayout(null);
		jFramePane.setBounds(0,0,800,600);
		ImageIcon imageP = new ImageIcon("40.jpg");		
		jFramePane.setImageIcon(imageP);
		super.add(jFramePane);
		bmt=new BackMusicThread();
	
		//MenuBar
		MonitorMenu mm=new MonitorMenu();
	    JMenuBar menubar=new JMenuBar();
		setJMenuBar(menubar);
		JMenu gameMenu=new JMenu("Game");
		JMenu optionMenu=new JMenu("Option");
	//	gameMenu.setMnemonic('G');
	//	optionMenu.setMnemonic('O');
		//GameMenu	
		startItem=gameMenu.add("Start");
		startItem.addActionListener(mm);
		pauseItem=gameMenu.add("Restart");
		pauseItem.addActionListener(mm);
		gameMenu.addSeparator();
		exitItem=gameMenu.add("Help");
		exitItem.addActionListener(mm);
	   //startItem.setAccelerator(KeyStroke.getKeyStroke('S',CTRL_DOWN_MASK));
	   //pauseItem.setAccelerator(KeyStroke.getKeyStroke('P',CTRL_DOWN_MASK));
		//OptionMenu
		//Background
		JMenu backgroundMenu=new JMenu("Backgroud");
		optionMenu.add(backgroundMenu);
		backgroundMenu.add(DefaultItem=new JRadioButtonMenuItem("Default",true));
		DefaultItem.addActionListener(mm);
		backgroundMenu.add(QItem=new JRadioButtonMenuItem("Q Pattern",false));
		QItem.addActionListener(mm);
		backgroundMenu.add(viewItem=new JRadioButtonMenuItem("Saftine",false));
		viewItem.addActionListener(mm);
		ButtonGroup types=new ButtonGroup();
		types.add(DefaultItem);
		types.add(QItem);
		types.add(viewItem);
		//syzItem.setAccelerator(KeyStroke.getKeyStroke('S',CTRL_DOWN_MASK));
		//QItem.setAccelerator(KeyStroke.getKeyStroke('Q',CTRL_DOWN_MASK));
		//viewItem.setAccelerator(KeyStroke.getKeyStroke('V',CTRL_DOWN_MASK));
		//LevelMenu	
		JMenu levelMenu=new JMenu("Level");
		optionMenu.add(levelMenu);
		levelMenu.add(easyItem=new JRadioButtonMenuItem("Easy",false));
		easyItem.addActionListener(mm);
		levelMenu.add(normalItem=new JRadioButtonMenuItem("Normal",false));
		normalItem.addActionListener(mm);
		levelMenu.add(hardItem=new JRadioButtonMenuItem("Hard",true));
		hardItem.addActionListener(mm);
		ButtonGroup type1=new ButtonGroup();
		type1.add(easyItem);
		type1.add(normalItem);
		type1.add(hardItem);
		//easyItem.setAccelerator(KeyStroke.getKeyStroke('E',CTRL_DOWN_MASK));
	    //normalItem.setAccelerator(KeyStroke.getKeyStroke('N',CTRL_DOWN_MASK));
	    //hardItem.setAccelerator(KeyStroke.getKeyStroke('H',CTRL_DOWN_MASK));

	    JMenu musicMenu=new JMenu("Music");
	    optionMenu.add(musicMenu);
	    musicMenu.add(onItem=new JRadioButtonMenuItem("On",true));
		musicMenu.add(offItem=new JRadioButtonMenuItem("Off",false));
		ButtonGroup type2=new ButtonGroup();
		type2.add(onItem);
		type2.add(offItem);
		menubar.add(gameMenu);
		menubar.add(optionMenu);
		
		
		//top
		//JLabel timeLabel=new JLabel("Time");
		//timeLabel.setOpaque(true);
		//timeLabel.setBounds(85,25,30,20);
		//jFramePane.add(timeLabel);
		progress.setStringPainted(true);
    	progress.setBorderPainted(false);
   		progress.setString("Hurry Up");
   		progress.setBackground(Color.YELLOW);
   		progress.setSize(350,30);
   		splash.add(progress);
    	splash.setBackground(Color.YELLOW);
    //	setContentPane(splash);
    	splash.setBounds(150,25,150,25);
		jFramePane.add(splash);
		
	
///		pbt=new ProcessBarThread();
		
		
	

		jpcenter=new BackGroundPane();
		jpcenter.setBounds(25,75,600,400);
		//jpcenter.setOpaque(false);
		//jpcenter.setBackground(Color.PINK);
		GridLayout grid=new GridLayout(10,15);
		jpcenter.setLayout(grid);
		ImageIcon imagecen = new ImageIcon("41.jpg");
		jpcenter.setImageIcon(imagecen);
		jFramePane.add(jpcenter);
		
		//Gameinit
		
	//	initGame();
		//east
		MonitorFrame mf=new MonitorFrame();
		startButton=new JButton("Start");
		startButton.setBounds(650,50,125,75);
		startButton.addActionListener(mf);
		jFramePane.add(startButton);
		
		pauseButton=new JButton("Restart");
		pauseButton.setBounds(650,200,125,75);
		pauseButton.setEnabled(false);
		pauseButton.addActionListener(mf);
		jFramePane.add(pauseButton);
		
		exitButton=new JButton("Help");
		exitButton.setBounds(650,375,125,75);
		exitButton.addActionListener(mf);
		exitButton.setEnabled(false);
		jFramePane.add(exitButton);
		
		// bottom
		reSetButton=new JButton("reSet");
		reSetButton.setBounds(50,480,100,40);
		reSetButton.addActionListener(mf);
		jFramePane.add(reSetButton);
	    	
		}

	

class MyThread extends Thread
	{
		public void run(){
   			setVisible(true);
    		try {
      			for (int i=0;i<100;i++){
       			 Thread.sleep(2235);
        		 progress.setValue(progress.getValue() + 1);
     			}
   			}
   			catch (Exception ex) {
      			ex.printStackTrace();
    		}
    		gameOver();
   		    dispose();
 		}}
class MonitorFrame implements ActionListener{
	public void actionPerformed(ActionEvent e){
		if(e.getSource()==startButton){
			initGame();
			bmt.start();
			pauseButton.setEnabled(true);
			for(int i=0;i<150;i++){
				jButton[i].setEnabled(true);
				}
			progress.setValue(0);
	    	MyThread myThread = new MyThread();
			Thread t2  = new Thread(myThread);
			t2.start();
			startButton.setEnabled(false);
			exitButton.setEnabled(true);
		
			}
		if(e.getSource()==pauseButton){
			
			progress.setValue(0);
			mk=0;
			for(int i=0;i<(level*4);i++){
			a[i]=(i%level)+1;
			}
			for(int i=level*4;i<150;i++){
				a[i]=0;
				}		
			for(int i=0;i<1000;i++){
			int b=(int)(Math.random()*150);
			int index;
			index=a[0];
			a[0]=a[b]; 
			a[b]=index;
			}
			
			
			
		for(int i=0;i<150;i++){
			if(a[i]==0){
				jButton[i].setVisible(false);
				}
			else{
				jButton[i].setIcon(image[a[i]-1]);jButton[i].setVisible(true);
				}			
			
			}
    	int nu=0;  
    	for(int i=0;i<10;i++){
    		for(int j=0;j<15;j++){
    		b[i][j]=a[nu];
    			nu++;
    			}
    		}
			
				
				
			}
		if(e.getSource()==exitButton){
			int lk=0;
			for(int i=0;i<10;i++){
				for(int j=0;j<15;j++){
					a[lk]=b[i][j];
					lk++;
					}
				}
			int i=0;
			int j=0;
			ImageIcon ma=new ImageIcon("new.GIF");

			for(i=0;i<150;i++){
				for(j=0;j<150;j++){
					if(i!=j&&a[i]!=0&&a[j]!=0&&a[i]==a[j]){
						if(check(i/15,i%15,j/15,j%15)){
						
							jButton[i].setIcon(ma);
							jButton[j].setIcon(ma);
							
							System.out.print(i/15);
							System.out.println();
							System.out.print(i%15);
							System.out.println();
							System.out.print(j/15);
							System.out.println();
							System.out.print(j%15);
							i=1000;
							j=1000;
							
							}
						}
						
						}
				
					}
			i=0;
			j=0;
				}
			
			
	if(e.getSource()==reSetButton){
			resetMusic();
			reSet();
			}
		}
	}
class MonitorMenu implements ActionListener{
			public void actionPerformed(ActionEvent e){
				if(e.getSource()==startItem){
			pauseItem.setEnabled(true);
			for(int i=0;i<150;i++){
				jButton[i].setEnabled(true);
				}	
			}
		        if(e.getSource()==pauseItem){
			for(int i=0;i<150;i++){
				jButton[i].setEnabled(false);}
			
			}
				if(e.getSource()==exitItem){
			System.exit(0);
			}
			    if(e.getSource()==DefaultItem){
					ImageIcon imagesyz = new ImageIcon("41.jpg");		
					jpcenter.setImageIcon(imagesyz);
					}
				if(e.getSource()==QItem){
					ImageIcon imageQ = new ImageIcon("38.jpg");		
					jpcenter.setImageIcon(imageQ);
					}
				if(e.getSource()==viewItem){
					ImageIcon imageV = new ImageIcon("39.jpg");		
					jpcenter.setImageIcon(imageV);
					}
				if(e.getSource()==easyItem){
					level=10;
						}
				if(e.getSource()==normalItem){
					level=30;	
					}
				if(e.getSource()==hardItem){
					level=37;
					}
					
				} 
			
			}
class MonitorButton implements ActionListener{
	private int[] record;
	private int re;
	
	public MonitorButton(){
		record=new int[2];
		re=0;
		}
	public void actionPerformed(ActionEvent e){
		    selectMusic();
				for(int i=0;i<150;i++){
					if(e.getSource()==jButton[i]){
						if(!(a[i]==0)){
						record[re]=i;
						re++;
						}
						}
			  }					

		   
		   if(re==2){
		   	if(!(record[0]==record[1])){
		   	
		   	if(a[record[0]]==a[record[1]]){
		   	int firstLine=record[0]/15;
		   	int firstRow=record[0]%15;
		   	int secondLine=record[1]/15;
		   	int secondRow=record[1]%15;
		   	if(check(firstLine,firstRow,secondLine,secondRow)){
		   		cancleMusic();
		   		jButton[record[0]].setVisible(false);
		   		jButton[record[1]].setVisible(false);
		   		b[firstLine][firstRow]=0;
		   		b[secondLine][secondRow]=0;
		   		System.out.println(b[firstLine][firstRow]);
		   		System.out.println(b[secondLine][secondRow]);
		   		mk++;
		    System.out.print("mkmk"+mk+"mkmk ");
		   		}

		   	} 
		   	}
		   	record[0]=record[1];
		   	re=1;
		    
		   	}
		   	if(mk==level*2){
		   		AudioPlayer.player.stop(as);
		   		winMusic();
		   		JOptionPane msg=new JOptionPane();
		   		msg.showMessageDialog(jFramePane,"You are Win","Winner",msg.INFORMATION_MESSAGE,image[36]);
		   		
		   		}
		   		
		   	
		   
	
	}

	}
class BackMusicThread extends Thread{
	boolean flg=true;
	public void run(){
		while(flg){			
			backMusic();
			try{
			
			sleep(223500);
			} catch ( InterruptedException exception ) {
         exception.printStackTrace();
      }
			}
		}

     
		
		

	
	}

		
	public static void main(String[] args){
		new LinkGame("LinkGame").setVisible(true);
		}
	
	
	
}	

⌨️ 快捷键说明

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