1 Star 0 Fork 0

放线菌的味道i / SnakeGame

Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
This repository doesn't specify license. Without author's permission, this code is only for learning and cannot be used for other purposes.
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

GluttonousSnake

作者lostblackknighttyroguozuo-riguojiaqiang201314 转载请标明作者和出处


引言

  • 编写目的:方便开发小组进行阅读与参考,合理分配任务,安排时间。
  • 预期读者:项目小组人员。
  • 参考资料:Google,CSDN,GitHub等。

项目概述

  • 项目开发背景: 贪吃蛇游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎。
  • 意义: 提高团队开发的合作能力,对所学的知识进行巩固,体验开发软件的过程。
  • 应用现状: 操作简单、娱乐性强而广受欢迎。
  • 目标: 实现两种模式游戏模式:经典模式、冒险模式。
  • 范围: 不同年龄段的人。
  • 作用: 丰富人们的日常生活,给人们带来快乐。

游戏策划

  • 游戏基本描述
    1. 游戏名称: GluttonousSnake
    2. 游戏主题: 益智、休闲
    3. 游戏类型: 单机游戏
    4. 游戏风格: 像素风格
    5. 游戏运行环境: Windows客户端
  • 游戏世界设定
    1. 游戏背景故事: 在遥远的未来世界,人类科技发达,人类逐渐体会到了科技带来的便捷,一些心怀不轨的人类想要利用科技控制地球。为了对抗他们,科学家研究了蛇,在无穷尽的对抗中,蛇的能量逐渐耗尽,体态逐渐残缺。为了补充能源,恢复体态,人类需要控制蛇不断进食增强蛇的体态,来对抗邪恶。
    2. 游戏角色定义: 蛇、食物、墙
    3. 游戏过程描述: 玩家使用W、A、S、D键操控一条蛇不断地吃食物,蛇身随着吃掉的食物数量不断变长,当蛇头撞到蛇身或墙时游戏结束,达到一定分数后游戏胜利。
    4. 游戏控制描述: 通过W、A、S、D方向键控制蛇的移动方向,通过U、I控制蛇的加速减速。
    5. 游戏关卡设定: 关卡越高,障碍物越多,难度越大。
  • 游戏素材描述
    1. 游戏界面:
      • 加载界面
      • 登录界面
      • 注册界面
      • 找回密码界面
      • 主菜单界面
      • 游戏界面
    2. 游戏动画:
      • 加载界面的动画
      • 蛇移动的动画
      • 菜单弹出的动画
    3. 游戏音效:
      • 主菜单界面的音乐
      • 单击的音乐
      • 游戏界面的音乐
      • 蛇吃食物的音乐
      • 蛇死亡的音乐
      • 游戏结束的音乐
      • 游戏胜利的音乐

技术选择

java,JavaFX,java poi

游戏展示

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

找不到了

数据源设计

  1. 用户表User

    uid username password mobilephone
    int String String String
  2. 游戏表Game

    uid type sid fid wid
    int int int int int
  3. 蛇表Snake

    sid headX headY dir
    int int int int
  4. 身体表SnakeBody

    sid bodyX bodyY
    int int int
  5. 食物表Food

    fid foodX foodY
    int int int
  6. 墙表Wall

    wid wallX wallY
    int int int

用例描述

  • 加载游戏资源

    • 用例名称

      加载游戏资源

    • 场景

      Who:游戏应用

      Where:加载界面

      When:打开游戏应用,进入加载页面

    • 用例描述

      1. 玩家打开游戏应用,进入加载界面

      2. 在加载界面播放加载动画,后台加载游戏的地图资源

      3. 动画播放完后,进入登录界面

    • 用例价值

      加载资源,提高游戏运行效率


  • 玩家登录

    • 用例名称

      玩家登录

    • 场景

      Who:玩家

      Where:登陆界面

      When:加载界面加载完,进入登陆界面

    • 用例描述

      1. 玩家输入账号和密码,点击登录按钮

      2. 应用通过玩家输入的账号和密码,到数据源中进行验证

        1. 验证不成功,显示用户名或密码错误的提示信息

          1. 用户选择注册账号,进行注册,输入注册的账号再次验证
          2. 用户选择忘记密码,找回账号,输入找回的账号再次验证
        2. 验证成功

      3. 如果验证成功,加载主菜单界面的音频,进入主菜单界面

    • 用例价值

      玩家登录后,进入游戏的主菜单,对游戏进行基本的设置,获取相关的帮助,开始游戏


  • 玩家注册

    • 用例名称

      玩家注册

    • 场景

      Who:玩家

      Where:注册界面

      When:在登陆界面点击注册账号,进入注册界面

    • 用例描述

      1. 玩家按照提示的要求输入用户名、密码、手机号的正确的格式

        1. 格式不正确,提示用户名格式不正确、密码格式不正确、手机号格式不正确的信息
        2. 格式正确
      2. 如果格式正确,点击注册按钮进行注册

        1. 注册失败,提示用户名已存在的信息
        2. 注册成功
      3. 如果注册成功,点击返回回到登录界面,并将注册的信息回写到登录界面上

    • 用例价值

      注册游戏账号,有了账号后才能登录进入游戏


  • 玩家找回密码

    • 用例名称

      找回密码

    • 场景

      Who:玩家

      Where:找回密码界面

      When:在登陆界面点击忘记密码,进入找回密码界面

    • 用例描述

      1. 玩家输入注册时所用的手机号,点击找回按钮找回

        1. 找回失败,提示找回密码失败的信息
        2. 找回成功,提示找回密码成功的信息,并在显示密码的显示框中显示密码
      2. 如果找回成功,点击返回回到登录界面,并将找回的信息回写到登录界面上

    • 用例价值

      找回游戏账号,有了账号后才能登录进入游戏


  • 玩家查看游戏玩法和按键绑定以及对游戏进行设置

    • 用例名称

      玩家查看游戏玩法和按键绑定以及对游戏进行设置

    • 场景

      Who:玩家

      Where:主菜单的选项界面

      When:进入主菜单界面,点击选项后进入选项界面

    • 用例描述

      1. 玩家点击游戏玩法,可以查看游戏背景,还可以对游戏的音频进行设置
      2. 玩家点击按键绑定,可以查看游戏的按键绑定
      3. 点击返回回到主菜单
    • 用例价值

      了解游戏玩法,对游戏进行设置


  • 玩家选择休闲模式/冒险模式的新游戏,进入游戏

    • 用例名称

      玩家选择休闲模式/冒险模式的新游戏,进入游戏

    • 场景

      Who:玩家

      Where:主菜单的休闲模式/冒险模式的界面

      When:进入主菜单界面,点击休闲模式/冒险模式,进入休闲模式/冒险模式的界面

    • 用例描述

      1. 根据用户和游戏类型读取对应的游戏信息

        1. 如果存在旧的数据,将旧的数据清除,重新按默认数据初始化游戏
        2. 如果不存在旧的数据,按默认数据初始化游戏
      2. 初始化完成后,加载游戏界面的音频,设置游戏状态为开始状态,进入游戏

    • 用例价值

      玩家选择游戏模式进入游戏


  • 玩家选择休闲模式/冒险模式的继续,进入游戏

    • 用例名称

      玩家选择休闲模式/冒险模式的继续,进入游戏

    • 场景

      Who:玩家

      Where:主菜单的休闲模式/冒险模式的界面

      When:进入主菜单界面,点击休闲模式/冒险模式,进入休闲模式/冒险模式的界面

    • 用例描述

      1. 根据用户和游戏类型读取对应的游戏信息

        1. 如果存在旧的数据,用旧数据初始化游戏
        2. 如果不存在,按默认数据初始化游戏
      2. 初始化完成后,加载游戏界面的音频,设置游戏状态为开始状态,进入游戏

    • 用例价值

      玩家选择游戏模式进入游戏


  • 蛇移动

    • 用例名称

      蛇移动

    • 场景

      Who:玩家

      Where:游戏界面

      When:玩家选择游戏模式进入游戏界面

    • 用例描述

      1. 玩家通过W、A、S、D控制蛇的移动,通过U、I控制蛇的速度
      2. 如果蛇碰到了墙或自己的身体,蛇死亡,播放蛇死亡的音乐
      3. 如果蛇死亡了,设置游戏状态为游戏结束,播放游戏结束的音乐
      4. 如果蛇吃到了食物,播放蛇吃食物的音频,蛇的身体变长,让右上角显示的蛇的长度和当前得分增加
      5. 如果蛇超过了边界,让蛇回到界面中来
    • 用例价值

      蛇在移动过程中遇到的问题


  • 食物的生成

    • 用例名称

      食物的生成

    • 场景

      Who:食物

      Where:游戏界面

      When:玩家选择游戏模式进入游戏界面

    • 用例描述

      1. 进入游戏,食物在不是墙的位置上随机生成一个食物
      2. 当食物被吃时,播放蛇吃食物的音频,再在不是墙的位置上随机生成一个食物
    • 用例价值

      食物的问题


  • 按下ESC键暂停游戏/继续游戏

    • 用例名称

      游戏暂停

    • 场景

      Who:玩家

      Where:游戏界面的菜单界面

      When:玩家按下ESC键后进入游戏界面的菜单界面

    • 用例描述

      1. 按下ESC键,设置游戏界面为暂停状态,弹出菜单界面
      2. 再按下ESC键或点击菜单界面的继续回到游戏界面,继续游戏
    • 用例价值

      暂停游戏/继续游戏


  • 游戏结束

    • 用例名称

      游戏结束

    • 场景

      Who:玩家

      Where:游戏界面

      When:玩家选择游戏模式进入游戏界面

    • 用例描述

      1. 如果游戏状态为游戏结束弹出游戏结束界面,提示玩家按ESC键打开菜单
      2. 在菜单界面按下主菜单回到主菜单界面
    • 用例价值

      游戏结束


  • 游戏胜利

    • 用例名称

      游戏胜利

    • 场景

      Who:玩家

      Where:游戏界面

      When:玩家选择游戏模式进入游戏界面

    • 用例描述

      1. 如果游戏状态为游戏胜利弹出游戏胜利界面,提示玩家按ESC键打开菜单
      2. 在菜单界面按下主菜单回到主菜单界面
      3. 在菜单界面按下继续进入下一关
    • 用例价值

      游戏胜利


  • 游戏数据的保存

    • 用例名称

      游戏数据的保存

    • 场景

      Who:玩家

      Where:游戏窗口

      When:打开游戏应用

    • 用例描述

      1. 正常退出保存游戏数据

        1. 点击游戏界面中的菜单界面中的主菜单进行数据保存
        2. 点击游戏界面中的菜单界面中的退出至桌面进行数据保存
      2. 异常退出保存游戏数据

        1. 点击窗口右上角的叉号保存游戏数据
    • 用例价值

      游戏胜利


  • 应用退出

    • 用例名称

      应用退出

    • 场景

      Who:玩家

      Where:游戏窗口

      When:打开游戏应用

    • 用例描述

      1. 正常退出

        1. 点击游戏界面中的菜单界面中的退出至桌面
        2. 点击主菜单界面中的退出至桌面
      2. 异常退出

        1. 点击窗口右上角的叉号退出应用
    • 用例价值

      退出游戏应用

Comments ( 0 )

Sign in for post a comment

About

Cancel

Contributors

All

Activities

load more
can not load any more
1
https://gitee.com/lostblackknight/SnakeGame.git
git@gitee.com:lostblackknight/SnakeGame.git
lostblackknight
SnakeGame
SnakeGame
master

Search