From fd754d96d870a18d081cbd908151c18cfe053601 Mon Sep 17 00:00:00 2001 From: Xiao <2985385632@qq.com> Date: Fri, 5 May 2023 17:17:05 +0800 Subject: [PATCH] README reWrite --- README.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f5c69d8..65b1728 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,14 @@ 组员:钱会茶、张娅娟、濮清素 - +代码库由Git提交,统一使用的管理员权限,所以提交贡献者只有最高权限管理者一个人,为代码简洁,test类并没有上传 ## 介绍 +### 玩法 + +点击开始游戏即可打开游戏界面,单击彩色图标即可将图标转移到下面消除栏中,当消除栏中相同图标达到三个,即可消除,目标清除所有图标,消除栏满了即为游戏失败,被遮盖的图标为灰色,不可被点击 + ### 运行 1. 下载 @@ -63,5 +67,51 @@ 13. 点击开始游戏 +## 运行逻辑 + +### 界面view + +#### 主界面start + +继承JFrame图形框架,实现放置背景和按钮的放置,按钮链接游戏界面的创建函数,实现开始游戏 + +#### 游戏界面game + +继承JFrame图形框架,实现放置背景,创建map,并调用layer初始化列阵,调用mapUtil的渲染图层,添加背景并添加自动刷新 + +### 模型model + +#### 牌Brand + +每个图标(牌),拥有牌的基础属性,名称,是否灰色,图片资源,坐标和图标大小,有绘制功能,点击事件和构造初始化 + +#### 单元格Cell + +用于存储牌的单元格,主要判断是否被点击 + +#### 图层Layer + +存放二维单元格的图层,用于存放每个单元格,存储当前图层的位置偏移量,行列数量,牌剩余数量,提供图层的初始化 + +#### 地图Map + +存放三张图层的地图,存放所有的牌数据,用于判定遮挡和是否点击 + +#### 消除框EliminateBox + +存放已经点击牌的消除框,做消除判定和游戏结束的判定 + +### 工具util + +#### 牌工具brandUtil + +存储牌的名称数组,用于给牌的名字赋值,通过随机数得到随机消除牌组,再通过随机函数打乱牌组 + +#### 图层工具layerUtil + +创建图层,将打乱的牌组放置到图层中 + +#### 地图工具mapUtil +创建地图,将三层layer放到地图中,并做是否可以点击的函数