这个作业属于哪个课程 2020面向对象程序设计
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2020OOP/homework/10729
这个作业的目标 1.初步设计所需要的类 2.渲染游戏界面
小组成员 031902231 郑霖睿 031902220 汪鸿宇 031902212 林炳灿
题目内容:
游戏内容
基础内容与俄罗斯方块一样。
俄罗斯方块
区别在于,我罗斯方块是同屏幕,双人对战游戏,双方一人使用 wasd ,一人使用上下左右控制,当一名玩家消去一行,就会让另一名玩家最底下增加随机一行。

详细
以玩家一为例,AD 控制方块左右移动,W 转换方块朝向,S 快速下落,使得方块落到底端。当玩家方块填满一整行时,会消除这行方块,然后使得玩家二的方块底部随机增加一行带空格的。玩家二同理。当一名玩家方块高度达到一个高度时就会结束游戏,该玩家失败。
方块类:存储每种方块的形状以及旋转后的形状,生成方块。

class block{
    public:
        void Create_Block();//随机生成方块

    private:
       int Block[7][4][4][4];//方块类型
};

玩家类:用来处理2名玩家分别的操作,固定的方块以及显示输赢。记录得分

class player{
    public:
        void Up();//玩家1变换方块形状

        void Down();//玩家1方块向下移动

        void Right();//玩家1方块向右移动

        void Left();//玩家1方块向左移动

        void W();//玩家2变换方块形状

        void S();//玩家2方块向下移动

        void D();//玩家2方块向右移动

        void A();//玩家2方块向左移动
        
        void Create_1_Block();//设置玩家1的下一个方块

        void Create_2_Block();//设置玩家2的下一个方块

        void Cin_1_Block();//若此时操作的方块为空,将下一个的方块进入游戏

        void Cin_2_Block();//若此时操作的方块为空,将下一个的方块进入游戏

        void Auto_1_Block();//玩家1方块自行下落

        void Auto_1_Block();//玩家2方块自行下落
    private:
        int Player1_Score;

        int Player2_Score;


};

游戏类:检测方块是否到边界的禁止移动、到底部方块或底部的停止,检测消行加分、给另一个玩家生成一行带空格的行,检测失败条件。

class game{
    public:
    void Ifmove();//判断是否可以移动,包括边框与其他方块,但不包括底部
    void Botton();//判断是否到达底部,以及为到达底部的方块固定。
    int Getscore();//检测是否满行,以及满行后进行的消除行、加分和为另一玩家加行
    void Faile();//判断失败条件
};

渲染类:开始游戏,胜负显示,绘制方块,绘制游戏界面,方块颜色渲染。

class rander{
    public:
    void Create_Window();//建立窗口

    void Start();//开始界面

    void GameScreen();//游戏界面

    void EndGame();//结束界面

    void Speed();//选择你要的初始难度
};

游戏界面: