• 大小: 30.72MB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2023-07-11
  • 语言: Java
  • 标签: 游戏  

资源简介

此小游戏基于java开发而来,虽然目前只是实现了文件上传,下载,开始游戏等。但是还是很适合想我这样的新手来练练手还是可以的啦。利用深度优先算法进行迷宫路径的设置与查找。有背景音乐,可自行设置迷宫难度。

资源截图

代码片段和文件信息

package com.game.migong;
//迷宫界面


import java.awt.*;
import java.awt.event.*;
import java.io.File;
import java.io.RandomAccessFile;

import javax.swing.*;


@SuppressWarnings(“serial“)
public class map extends Jframe implements ActionListener KeyListener Runnable {
  static int m n;
  static wrmPane[][] tp = null;        //显示动画同一包内类均可访问

  //时间限制
  static Thread timeThread;                //时间控制线程
  static int timelimit remaintime;
  static JPanel timePanel = new JPanel() {     //剩余时间显示面板
      public void paintComponent(Graphics g) {
          super.paintComponent(g);
          String rt;
          if (timelimit == 0) {
              rt = “无限制“;
              setForeground(Color.GREEN);    //青色表示无时间限制
          } else {
              rt = remaintime / 3600 + “ : “ + (remaintime - (remaintime / 3600) * 3600) / 60 + “ : “ + remaintime % 60;
              if (remaintime > 10)
                  setForeground(Color.BLUE);      //剩余时间充足时为绿色
              else
                  setForeground(Color.RED);      //剩余时间很少时为红色
          }
          g.drawString(“剩余时间:  “ + rt 220 16);
      }
  };

  // 菜单项
  private JMenuItem m_start = new JMenuItem(“开始新游戏(S)“);
  private JMenuItem m_time = new JMenuItem(“游戏时间限制(L)“);
  private JMenuItem m_return = new JMenuItem(“返回主界面(R)“);
  private JMenuItem m_exit = new JMenuItem(“退出游戏(Q)“);
  private JMenuItem m_savefile = new JMenuItem(“保存迷宫结构(W)“);
  private JMenuItem m_importfile = new JMenuItem(“导入迷宫结构(I)“);
  private JMenuItem m_selfconfig = new JMenuItem(“编辑当前迷宫(E)“);
  private JMenuItem m_randommake = new JMenuItem(“随机生成迷宫(Z)“);
  private JMenuItem m_sortpath = new JMenuItem(“显示最短路径(T)“);
  private JMenuItem m_DFSpath = new JMenuItem(“随意显示一个路径(K)“);
  private JMenuItem m_help = new JMenuItem(“游戏使用说明(H)“);
  private JMenuItem m_about = new JMenuItem(“关于迷宫游戏(A)“);
  private JButton btn_4 = new JButton(“音乐(F)“);
  @SuppressWarnings(“deprecation“)
  map(int x int y) {
      m = x;
      n = y;
      tp = new wrmPane[m][n];
      timelimit = remaintime = 0;                //初始化时,时间为0,代表没有时间限制

      timeThread = new Thread(this);
      timeThread.start();
      timeThread.suspend();

      //菜单
      JMenu game = new JMenu(“游戏选项“);
      JMenu file = new JMenu(“文件“);
      JMenu edit = new JMenu(“编辑“);
      JMenu tip = new JMenu(“提示“);
      JMenu help = new JMenu(“帮助“);
      game.add(m_start);
      game.add(m_time);
      game.add(m_return);
      game.add(m_exit);
      file.add(m_savefile);
      file.add(m_importfile);
      edit.add(m_selfconfig);
      edit.add(m_randommake);
      tip.add(m_sortpath);
      tip.add(m_DFSpath);
      help.add(m_help);
      help.add(m_about);
      
      //菜单栏
      JMenuBar menu = new JMenuBar();
      menu.add(game);
      menu.add(file);
      menu.add(edit);
      menu.add(tip);
      menu.add(help);

      //初始化迷宫组件并生成随机路径
      for (int i = 0; i < m; i++)
          for

评论

共有 条评论