栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

看!一个彩色的贪吃蛇(Java贪吃蛇小游戏)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

看!一个彩色的贪吃蛇(Java贪吃蛇小游戏)

来源

今天在整理资料的时候无意中发现了,曾经学习Java的时候写的一个贪吃蛇小项目;
于是心血来潮,打开idea运行一波。emm,不错还可以运行!

但是之前的样式有点丑,单一颜色。所以呢,就顺手进行了一波优化。
所以一个彩色的贪吃蛇就出现了!
看图


还可以吧,哈哈哈。
总之感觉还挺好玩的!

项目结构


就很简单,就6个类。
其中蛇的身体使用自定义链表的形式进行储存

	private class Node{
		int rows;//行
		int cols;//列
		String dir;//方向
		Node pre;//前一个节点
		Node next;//后一个节点
		private Node(int rows,int cols,String dir){
			this.rows=rows;
			this.cols=cols;
			this.dir=dir;
		}
		public void drowHead(Graphics g) {
			g.setColor(Color.BLUE);
			g.fillOval(cols*Config.span, rows*Config.span, Config.span, Config.span);
		}
	}

使用随机数在绘制的时候,变化蛇的颜色

public void drow(Graphics g) {
		double select = Math.random();
		if(select<=0.2){
			g.setColor(new Color(255,69,0));
		}else if(select<=0.4){
			g.setColor(new Color(218,112,214));
		}else if(select<=0.6){
			g.setColor(new Color(0,238,0));
		}else if(select<=0.8){
			g.setColor(new Color(0,191,255));
		}else {
			g.setColor(new Color(234,235,0));
		}
		g.fillOval(cols*Config.span, rows*Config.span, Config.span, Config.span);
	}
}

开启一个单独的线程,刷新蛇的绘制

class SnackPanelThread extends Thread {
        boolean flag = true;

        @Override
        public void run() {
            while (Config.isLive && flag) {
                try {
                    Thread.sleep(300);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

                if (Config.isLive && Config.pause) {
                    repaint();//利用线程  每隔一定的时间  就调用一次画的方法  让蛇移动一次
                }

            }
            //加一个判断  如果是手动关闭的话  就不加提示了
            if (flag) {
                JOptionPane.showMessageDialog(SnackPanel.this, "游戏结束了");
            }
        }

        public void stopIt() {
            flag = false;
        }
    }
总结

总体来说不难,比较适合Java初学者作为一个练手的项目进行夺实基础。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/337740.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号