Lucky_tree

黄昏开始书写,黎明是无数扉页

我罗斯方块1

这个作业属于哪个课程 2020面向对象程序设计
这个作业要求在哪里 我罗斯方块
这个作业的目标 讲述设计、选用的渲染方法、收集到的资料,和游戏界面示意图
作业正文 我罗斯方块1
其他参考文献 VC写的双人版俄罗斯方块
 MFC双人版俄罗斯方块
 VC/MFC俄罗斯方块双人版(基于MFC单文档)
C/C++语言中头文件的使用心得
C++俄罗斯方块
项目地址 github
小组成员 031902344赵睿言
031902334董晓鸥
031902341邵明杰

游戏设计

双人对战模式俄罗斯方块详细代码在github项目中

      block.h //方块类
      board.h  //游戏地图
      eluosi.pro //建立Qt项目
      mainwindow.h //渲染类
      gamers.h //玩家类

游戏设计思想

方块类

  • 方块成员变量
    1. 方块颜色
    2. 方块形状
    3. 方块类型
  • 方块成员函数
    1. 方块左右移动函数:实现方块左右移动,且当方块移动到边界时阻止其移动
    2. 方块旋转函数:实现方块旋转,规定某个按键控制方块旋转
    3. 方块下落速度函数:实现方块在原有速度上由玩家控制加速下落
    4. 方块碰撞函数:判断方块是否与原有方块碰撞,若碰撞,则阻止其继续下落
    5. 方块构造函数:用随机数抽取下一方块并编号
    6. 方块预览函数:显示下一方块,并在方块使用后自动更改

游戏类

  • 游戏成员变量

    1. 游戏开始与结束
    2. 方块下落间隔
    3. 游戏地图宽度与高度
    4. 游戏地图信息
  • 游戏成员函数

    1. 获取地图信息函数:不断获取玩家操作,保存游戏地图并实时更新
    2. 检测消行函数:方块积满一行时消去
    3. 增行函数:对方消去一行则己方在底部随机增加一行方块
    4. 游戏开始函数:玩家控制游戏开始
    5. 游戏结束函数:判断游戏是否结束
    6. 游戏结算函数:对比游戏双方玩家分数,判断胜利者
    7. 自动循环更新函数:游戏结束后清除本轮游戏数据,释放内存

渲染类

  • 渲染成员变量
    1. 边框信息
    2. 主界面信息
    3. 玩家提示信息
  • qt渲染界面
    1. 渲染界面函数:绘制主界面
    2. 键盘事件处理函数:对玩家键盘操作做出实时应答
  • qt渲染项目
    1. 渲染边框函数:绘制边框
    2. 提示信息函数:给玩家提供实时提示信息

玩家类

  • 玩家成员变量
    1. 玩家1
    2. 玩家2
  • 玩家成员函数
    1. 分数累计函数:统计该玩家总得分
    2. 玩家个性化函数:由玩家自定义游戏昵称

渲染方法

因为小组成员电脑系统不同,采用Qt进行界面渲染。

搜集到的资料

腾讯课堂Qt编程

游戏界面预设计

详细内容后续继续努力!

posted @ 2020-05-06 19:49  Luckyy_tree  阅读(256)  评论(3编辑  收藏  举报