You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Xiao 6792549662
introduce
2 years ago
.idea exe 2 years ago
imgs imgs 2 years ago
out/production/SheepASheep/META-INF exe 2 years ago
src example 2 years ago
wavs wavs 2 years ago
.gitignore Initial commit 2 years ago
README.md introduce 2 years ago
SheepASheep.ico exe 2 years ago
SheepASheep.iml iml 2 years ago
双击运行.exe exe 2 years ago
开发期间遇到的问题及解决方法.docx introduce 2 years ago
羊了个羊设计报告.docx introduce 2 years ago

README.md

SheepASheep

组长:肖成康

组员:钱会茶、张娅娟、濮清素

代码库由Git提交统一使用的管理员权限所以提交贡献者只有最高权限管理者一个人为代码简洁test类并没有上传

介绍

玩法

点击开始游戏即可打开游戏界面,单击彩色图标即可将图标转移到下面消除栏中,当消除栏中相同图标达到三个,即可消除,目标清除所有图标,消除栏满了即为游戏失败,被遮盖的图标为灰色,不可被点击

运行

  1. 下载

    • 压缩包

      下载 -> 下载ZIP -> 本地解压

    • git

      下载 -> 复制网址 -> 在本地文件夹中git push here -> git clone 网址

  2. 编译运行

    1. exe运行

    2. 将Java17的jre复制到src同级文件目录下

    3. 双击文件“双击运行exe”

    4. idea

    5. 打开idea

    6. 打开文件

    7. 找到下载的目录

    8. 打开SheepASheep

    9. 信任项目

    10. 找到开始文件src/com.sheep/view/Start

    11. 右键 -> 运行'Start.main()'

    12. 点击开始游戏

    13. eclipse

    14. 打开eclipse

    15. file -> Import -> General -> Project from Folder or Archive

    16. Next

    17. Directory -> 选择SheepASheep文件夹 -> 选择文件夹

      PS文件夹下一级是src、imgs等文件及文件夹并单击选中文件夹

    18. Finish

    19. Windows -> Preferences

    20. 搜索works

    21. 选择第二个Workspace

    22. 左下角的Text file encoding -> 选择Other -> 选择UTF-8

    23. 右下角Apply -> Apply and Close

    24. 文件目录 -> sheepasheep/src/com.sheep.view.Start.java

    25. 右键 -> Run As -> Java Application

    26. 点击开始游戏

运行逻辑

界面view

主界面start

继承JFrame图形框架实现放置背景和按钮的放置按钮链接游戏界面的创建函数实现开始游戏

游戏界面game

继承JFrame图形框架实现放置背景创建map并调用layer初始化列阵调用mapUtil的渲染图层添加背景并添加自动刷新

模型model

牌Brand

每个图标(牌),拥有牌的基础属性,名称,是否灰色,图片资源,坐标和图标大小,有绘制功能,点击事件和构造初始化

单元格Cell

用于存储牌的单元格,主要判断是否被点击

图层Layer

存放二维单元格的图层,用于存放每个单元格,存储当前图层的位置偏移量,行列数量,牌剩余数量,提供图层的初始化

地图Map

存放三张图层的地图,存放所有的牌数据,用于判定遮挡和是否点击

消除框EliminateBox

存放已经点击牌的消除框,做消除判定和游戏结束的判定

工具util

牌工具brandUtil

存储牌的名称数组,用于给牌的名字赋值,通过随机数得到随机消除牌组,再通过随机函数打乱牌组

图层工具layerUtil

创建图层,将打乱的牌组放置到图层中

地图工具mapUtil

创建地图将三层layer放到地图中并做是否可以点击的函数