From 88c3d89ee8d58025cb2e706eec7c27a0c07a8012 Mon Sep 17 00:00:00 2001 From: unknown <2592419242@qq.com> Date: Mon, 15 Mar 2021 00:08:24 +0800 Subject: [PATCH] Update Console --- Console/README.md | 71 ++++ Console/bin/Reversi.exe | Bin 0 -> 39936 bytes Console/bin/msvcp140.dll | Bin 0 -> 436600 bytes Console/bin/vcruntime140.dll | Bin 0 -> 76152 bytes Console/image/Chessboard.png | Bin 0 -> 6209 bytes Console/image/Menu1.png | Bin 0 -> 10457 bytes Console/image/Menu2.png | Bin 0 -> 10165 bytes Console/src/Chessboard.cpp | 720 +++++++++++++++++++++++++++++++++++ Console/src/Chessboard.hpp | 138 +++++++ Console/src/Game.cpp | 191 ++++++++++ Console/src/Game.hpp | 59 +++ Console/src/Menu.cpp | 233 ++++++++++++ Console/src/Menu.hpp | 54 +++ Console/src/Renderer.cpp | 382 ++++++++++--------- Console/src/Renderer.h | 23 -- Console/src/Renderer.hpp | 46 +++ Console/src/Reversi.hpp | 17 + Console/src/main.cpp | 11 + 18 files changed, 1748 insertions(+), 197 deletions(-) create mode 100644 Console/README.md create mode 100644 Console/bin/Reversi.exe create mode 100644 Console/bin/msvcp140.dll create mode 100644 Console/bin/vcruntime140.dll create mode 100644 Console/image/Chessboard.png create mode 100644 Console/image/Menu1.png create mode 100644 Console/image/Menu2.png create mode 100644 Console/src/Chessboard.cpp create mode 100644 Console/src/Chessboard.hpp create mode 100644 Console/src/Game.cpp create mode 100644 Console/src/Game.hpp create mode 100644 Console/src/Menu.cpp create mode 100644 Console/src/Menu.hpp delete mode 100644 Console/src/Renderer.h create mode 100644 Console/src/Renderer.hpp create mode 100644 Console/src/Reversi.hpp create mode 100644 Console/src/main.cpp diff --git a/Console/README.md b/Console/README.md new file mode 100644 index 0000000..9da4790 --- /dev/null +++ b/Console/README.md @@ -0,0 +1,71 @@ +# 黑白棋 +又名翻转棋。 + +## 简介 +基于控制台的黑白棋游戏,界面宽高可变,支持中止与继续操作。在棋局界面之时,按Escape可以中止游戏,此时回到菜单界面,出现继续游戏选项。 + +## 规则 +每落一子,必须转换对手棋子为自己棋子。若无法转换对手棋子,则无子可落,跳过自己回合。 + +游戏结束条件如下: +1. 双方无子可落 +2. 一方无子 +3. 棋盘已满 + +达到其中之一,则游戏结束,棋子数量多者获胜。 + +## 界面 +初始菜单界面如下图所示: +![初始菜单](image/Menu1.png) +在中止一次游戏之后,菜单增加继续游戏选项,此时菜单界面如下图所示: +![完整菜单](image/Menu2.png) +棋局界面布局如下图所示: +![棋局布局](image/Chessboard.png) + +## 说明 +菜单界面的按键与作用如下表所示: + +按键|作用 +-|- +Enter|确定选项 +Space|确定选项 +|向上切换选项 +|向下切换选项 + +棋局界面的按键与作用如下表所示: + +按键|作用 +-|- +Escape|中止对弈 +Space|确定落子 +|上移光标 +|下移光标 +|左移光标 +|右移光标 + +## 问题 +此游戏在Windows 7和Windows 8之上运行无异常,而在Windows 10之上棋局界面会有问题。 +解决方法: +* 右击控制台的标题栏,弹出右键菜单,选择属性,出现属性选项卡,切换至选项,勾选使用旧版控制台(需要重新启动,影响所有控制台),点击确定,重新运行程序即可。 + +## 结构 +* bin:可执行程序文件夹 +* image:游戏截图文件夹 +* src:源码文件夹 + +## 项目 +文件|说明 +-|- +[Reversi.hpp](src/Reversi.hpp)|定义键值宏和命名空间宏 +[main.cpp](src/main.cpp)|初始游戏 +[Renderer.hpp](src/Renderer.hpp)、[Renderer.cpp](src/Renderer.cpp)|定义渲染器类 +[Game.hpp](src/Game.hpp)、[Game.cpp](src/Game.cpp)|定义游戏类 +[Menu.hpp](src/Menu.hpp)、[Menu.cpp](src/Menu.cpp)|定义菜单类 +[Chessboard.hpp](src/Chessboard.hpp)、[Chessboard.cpp](src/Chessboard.cpp)|定义棋局类 + +## 作者 +name:许聪 +mailbox:2592419242@qq.com +CSDN:https://blog.csdn.net/xucongyoushan +gitee:https://gitee.com/solifree +github:https://github.com/xucongandxuchong diff --git a/Console/bin/Reversi.exe b/Console/bin/Reversi.exe new file mode 100644 index 0000000000000000000000000000000000000000..f6cfaf4863c0aab343b39a31bca16e3ba810f581 GIT binary patch literal 39936 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 literal 0 HcmV?d00001 diff --git a/Console/bin/msvcp140.dll b/Console/bin/msvcp140.dll new file mode 100644 index 0000000000000000000000000000000000000000..40f6b6be1ca07e6fdfd7525e5992e67a175f657c GIT binary patch literal 436600 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 R{=V*jbFW>!^$dde{{UWWjv4>} literal 0 HcmV?d00001 diff --git a/Console/bin/vcruntime140.dll b/Console/bin/vcruntime140.dll new file mode 100644 index 0000000000000000000000000000000000000000..24407ab0ae99477cd76c754014036821687745ad GIT binary patch literal 76152 zcmeFaeSB2awLg3&Gb95HoB;wv3_3tiFo2OkOERD#FuW+i2{8!~LkN%`%Y&{ZLqxi*)%mfV@?+Ol<1;ha&U zMkE-Zi?7~PIqSg@F7wwmV&s%LNKcRYnd^F9DEPKPjc%1F!T$-)=Nxkk@z??mXNxP=~0 z9*+`)Xe379MOaLqZ4%r@h5q{8hI5}hg@gcpsKCO_iOB?#;1 zY$}inkZ0!u#Mm%q;j4&Bh^7icaL#7E;!lSm1ATLXbbqg2>YR$oijBzTW5t+xpFKm> zD=giLiZphjf#5*+?f2@X4bJ)hQ~$RVaNdBaO~pglMX}mMFnakcJa)~-BZx=T`Z*}w zgGW?t5*|T%tiK75a(cMt;_=K6@DP&mNJ_z@+=EBQLNrUg6;QhA;Y&qcDx@yTcNZS6 zEIiujk-7%;e7T6#(qk7rg7k3RjYl~>YU#0y9?#HY4?Ucls2M$K>9L0%-Nkqao2ir@ zE_x)o+`{_}Ehfql|dhEhOc!nN(DA`R97epw^ zM-P{b$1Zy8p+}G&9rO^Y@Nm&1X&c(sK8RR5J-X>3JcNgf9!d1@(WCrNRF59J=Ef2SlpQt9EN$DV)S5u}IfBZ5qi_K)!pKEb0K4@*)f9$c|? zBPJxNNbbQyc;*YLLJ#2yl4bnS6EozjO%R-*u@fYAW|iGnwsl*Xt8n|q!g6Wz)-u#- zizwevuxU_P?DT=Q>m%YXM8p?u+*nvy>8jeiwX}dhx@Nn|wz^i|b=L|PDVQmQ%OXiC z+)^$TZgLg4qzB3iH*a!nEpnB~rKROkg{yq)<}#_U0yWdne?=i4M%GZUsLrMb$_ln@ z-k86!pi-g^;>HQiyYSnEUx82#Mw%^b0VB*7wjo}IaHFtQs1OPfD?-iƯssc;kW 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

k9jZoZCGTjhUNg+{ue_WjXW^})G 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 VkJP2UP+$B}bb*Wd4sZ{G0RTt{Q}+M> literal 0 HcmV?d00001 diff --git a/Console/image/Chessboard.png b/Console/image/Chessboard.png new file mode 100644 index 0000000000000000000000000000000000000000..334ff20f8c31591f850b8e6b4e0ecaf550e2f1fb GIT binary patch literal 6209 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 R)5$*#V!V{{Sz#eSiP} literal 0 HcmV?d00001 diff --git a/Console/image/Menu1.png b/Console/image/Menu1.png new file mode 100644 index 0000000000000000000000000000000000000000..02622256136b9e861727ba41f6a2eb6c3862cd4d GIT binary patch literal 10457 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 literal 0 HcmV?d00001 diff --git a/Console/src/Chessboard.cpp b/Console/src/Chessboard.cpp new file mode 100644 index 0000000..d407507 --- /dev/null +++ b/Console/src/Chessboard.cpp @@ -0,0 +1,720 @@ +#include "Chessboard.hpp" +#include "Renderer.hpp" + +#include +#include + +#include +#include +#include +#include + +REVERSI_BEGIN + +// ɫ +static constexpr uint16_t SCREEN = BACKGROUND_BLUE | BACKGROUND_INTENSITY; +// ɫǰ +static constexpr uint16_t PROMPT = FOREGROUND_RED | FOREGROUND_INTENSITY; +// ɫǰɫ +static constexpr uint16_t BOARD[2] = { FOREGROUND_RED, BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_INTENSITY }; +// ɫɫǰɫǰ +static constexpr uint16_t CHESS[3] = { BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_INTENSITY, 0, FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY }; + +// ±˵ +const Chessboard::Index Chessboard::_index = Chessboard::Index(); +// ˵ +const Chessboard::Coordinate Chessboard::_coordinate = Chessboard::Coordinate(); + +std::istream& operator >>(std::istream& _input, Chessboard& _chessboard) +{ + return _input.read(reinterpret_cast(_chessboard._states), sizeof _chessboard._states); +} + +std::ostream& operator <<(std::ostream& _output, const Chessboard& _chessboard) +{ + return _output.write(reinterpret_cast(_chessboard._states), sizeof _chessboard._states); +} + +// תΪ± +inline void Chessboard::getIndex(int16_t _x, int16_t _y, int16_t& _row, int16_t& _column) const noexcept +{ + _row = (_y - (_up + 1)) >> 1; + _column = (_x - (_left + 2)) >> 2; +} + +// ת±Ϊ +inline void Chessboard::getCoord(int16_t _row, int16_t _column, int16_t& _x, int16_t& _y) const noexcept +{ + _x = (_column << 2) + (_left + 2); + _y = (_row << 1) + (_up + 1); +} + +// жָ±Ƿ +inline bool Chessboard::isChess(Index _index, int16_t _row, int16_t _column) const noexcept +{ + return _states[_row][_column] != EMPTY; +} + +// жָǷ +bool Chessboard::isChess(Coordinate _coordinate, int16_t _x, int16_t _y) const noexcept +{ + int16_t row, column; + getIndex(_x, _y, row, column); + return isChess(_index, row, column); +} + +// ״̬ +inline void Chessboard::setChess(int16_t _row, int16_t _column, State _state) noexcept +{ + _states[_row][_column] = _state; +} + +// ùɫ +void Chessboard::setCursorColor() const +{ + _renderer.setTextColor(CHESS[1], CHESS[0]); +} + +// ɫ +void Chessboard::setChessColor(int16_t _x, int16_t _y) const +{ + int16_t row, column; + getIndex(_x, _y, row, column); + _renderer.setTextColor(CHESS[_states[row][column]], CHESS[0]); +} + +// +void Chessboard::drawChessboard() +{ + _renderer.setTextColor(BOARD[0], BOARD[1]); + _stream.seekp(0, _stream.beg); + _stream << ""; + for (uint8_t j = COLUMN - 1; j > 0; --j) + _stream << ""; + _stream << ""; + const int16_t& x = _left; + int16_t y = _up; + _renderer.outText(x, y, _stream.str().c_str()); + + for (uint8_t i = ROW - 1; i > 0; --i) + { + _stream.seekp(0, _stream.beg); + for (uint8_t j = 0; j < COLUMN; ++j) + _stream << " "; + _stream << ""; + _renderer.outText(x, ++y, _stream.str().c_str()); + + _stream.seekp(0, _stream.beg); + _stream << ""; + for (uint8_t j = COLUMN - 1; j > 0; --j) + _stream << ""; + _stream << ""; + _renderer.outText(x, ++y, _stream.str().c_str()); + } + + _stream.seekp(0, _stream.beg); + for (uint8_t j = 0; j < COLUMN; ++j) + _stream << " "; + _stream << ""; + _renderer.outText(x, ++y, _stream.str().c_str()); + + _stream.seekp(0, _stream.beg); + _stream << ""; + for (uint8_t j = COLUMN - 1; j > 0; --j) + _stream << ""; + _stream << ""; + _renderer.outText(x, ++y, _stream.str().c_str()); +} + +// +void Chessboard::drawChess() const +{ + for (int16_t row = 0, column, x, y; row < ROW; ++row) + for (column = 0; column < COLUMN; ++column) + if (isChess(_index, row, column)) + { + getCoord(row, column, x, y); + setChessColor(x, y); + _renderer.outText(x, y, ""); + } +} + +// ת +void Chessboard::convertOne(int16_t _row, int16_t _column, State _state) +{ + Sleep(40); + setChess(_row, _column, _state); + int16_t x, y; + getCoord(_row, _column, x, y); + setChessColor(x, y); + _renderer.outText(x, y, ""); +} + +// תϷ +bool Chessboard::convertUp(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row <= 1) + return false; + + // ϷֱԼӻ߿λΪֹ + int16_t m = _row - 1; + for (; m >= 0; --m) + if (_states[m][_column] == _states[_row][_column] \ + || _states[m][_column] == EMPTY) + break; + + // ߽߲ת + if (m < 0 || m == _row - 1 || _states[m][_column] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row - 1; i > m; --i) + convertOne(i, _column, _states[_row][_column]); + } + return true; +} + +// ת· +bool Chessboard::convertDown(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row >= ROW - 2) + return false; + + // ·ֱԼӻ߿λΪֹ + int16_t m = _row + 1; + for (; m < ROW; ++m) + if (_states[m][_column] == _states[_row][_column] \ + || _states[m][_column] == EMPTY) + break; + + // ߽߲ת + if (m >= ROW || m == _row + 1 || _states[m][_column] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row + 1; i < m; ++i) + convertOne(i, _column, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convertLeft(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_column <= 1) + return false; + + // 󷽱ֱԼӻ߿λΪֹ + int16_t n = _column - 1; + for (; n >= 0; --n) + if (_states[_row][n] == _states[_row][_column] \ + || _states[_row][n] == EMPTY) + break; + + // ߽߲ת + if (n < 0 || n == _column - 1 || _states[_row][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t j = _column - 1; j > n; --j) + convertOne(_row, j, _states[_row][_column]); + } + return true; +} + +// תҷ +bool Chessboard::convertRight(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_column >= COLUMN - 2) + return false; + + // ҷֱԼӻ߿λΪֹ + int16_t n = _column + 1; + for (; n < COLUMN; ++n) + if (_states[_row][n] == _states[_row][_column] \ + || _states[_row][n] == EMPTY) + break; + + // ߽߲ת + if (n >= COLUMN || n == _column + 1 || _states[_row][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t j = _column + 1; j < n; ++j) + convertOne(_row, j, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convertLeftUp(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row <= 1 || _column <= 1) + return false; + + // ϷֱԼӻ߿λΪֹ + int16_t m = _row - 1, n = _column - 1; + for (; m >= 0 && n >= 0; --m, --n) + if (_states[m][n] == _states[_row][_column] \ + || _states[m][n] == EMPTY) + break; + + // ߽߲ת + if (m < 0 || n < 0 || m == _row - 1 || _states[m][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row - 1, j = _column - 1; i > m; --i, --j) + convertOne(i, j, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convertRightUp(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row <= 1 || _column >= COLUMN - 2) + return false; + + // ϷֱԼӻ߿λΪֹ + int16_t m = _row - 1, n = _column + 1; + for (; m >= 0 && n < COLUMN; --m, ++n) + if (_states[m][n] == _states[_row][_column] \ + || _states[m][n] == EMPTY) + break; + + // ߽߲ת + if (m < 0 || n >= COLUMN || m == _row - 1 || _states[m][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row - 1, j = _column + 1; i > m; --i, ++j) + convertOne(i, j, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convertLeftDown(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row >= ROW - 2 || _column <= 1) + return false; + + // ·ֱԼӻ߿λΪֹ + int16_t m = _row + 1, n = _column - 1; + for (; m < ROW && n >= 0; ++m, --n) + if (_states[m][n] == _states[_row][_column] \ + || _states[m][n] == EMPTY) + break; + + // ߽߲ת + if (m >= ROW || n < 0 || m == _row + 1 || _states[m][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row + 1, j = _column - 1; i < m; ++i, --j) + convertOne(i, j, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convertRightDown(int16_t _row, int16_t _column, bool _judgmental) +{ + // תռ + if (_row >= ROW - 2 || _column >= COLUMN - 2) + return false; + + // ·ֱԼӻ߿λΪֹ + int16_t m = _row + 1, n = _column + 1; + for (; m < ROW && n < COLUMN; ++m, ++n) + if (_states[m][n] == _states[_row][_column] \ + || _states[m][n] == EMPTY) + break; + + // ߽߲ת + if (m >= ROW || n >= COLUMN || m == _row + 1 || _states[m][n] == EMPTY) + return false; + + // dzתת + if (!_judgmental) + { + for (int16_t i = _row + 1, j = _column + 1; i < m; ++i, ++j) + convertOne(i, j, _states[_row][_column]); + } + return true; +} + +// ת +bool Chessboard::convert(int16_t _row, int16_t _column, bool _judgmental) +{ + // תϷ + bool result = convertUp(_row, _column, _judgmental); + bool convertible = result; + if (_judgmental && convertible) + return convertible; + + // ת· + result = convertDown(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // ת + result = convertLeft(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // תҷ + result = convertRight(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // ת + result = convertLeftUp(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // ת + result = convertRightUp(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // ת + result = convertLeftDown(_row, _column, _judgmental); + convertible = convertible || result; + if (_judgmental && convertible) + return convertible; + + // ת + result = convertRightDown(_row, _column, _judgmental); + convertible = convertible || result; + return convertible; +} + +// ȴ +void Chessboard::wait() const +{ + do + { + // ʾ + setCursorColor(); + _renderer.outText(_x, _y, ""); + Sleep(40); + + // λ + if (isChess(_coordinate, _x, _y)) + { + // ʾ + setChessColor(_x, _y); + _renderer.outText(_x, _y, ""); + Sleep(40); + } + } while (!_kbhit()); // ˳ѭ + + // λ + if (!isChess(_coordinate, _x, _y)) + _renderer.outText(_x, _y, " "); // +} + +// ¼ +int Chessboard::handle() +{ + // հ + bool even = false; + int key = _getch(); + if (key == 224) + { + key = _getch(); + even = true; + } + + // ˫򷵻 + if (!even) + return key; + + switch (key) + { + case UP: // Ϸ + key = 0; + _y -= 2; + if (_y < _up) + _y = _down - 2; + break; + + case DOWN: // · + key = 0; + _y += 2; + if (_y >= _down) + _y = _up + 1; + break; + + case LEFT: // + key = 0; + _x -= 4; + if (_x < _left) + _x = _right - 4; + break; + + case RIGHT: // ҷ + key = 0; + _x += 4; + if (_x >= _right) + _x = _left + 2; + break; + + default: + break; + } + return key; +} + +Chessboard::Chessboard(Renderer& _renderer) noexcept + : _renderer(_renderer) +{ + // ̵ĿȺ͸߶ + _height = ROW + (ROW + 1); + _width = (COLUMN + COLUMN + 1) * 2; + + // ̱߽ + _up = (_renderer.getRow() - _height) / 2; + _down = _up + _height; + _left = (_renderer.getColumn() - _width) / 2; + _right = _left + _width; + + // ʼλ + getCoord(ROW / 2 - 1, COLUMN / 2 - 1, _x, _y); +} + +// Ч +Chessboard::operator bool() const noexcept +{ + for (uint8_t row = 0; row < ROW; ++row) + for (uint8_t column = 0; column < COLUMN; ++column) + if (_states[row][column] < EMPTY || _states[row][column] > WHITE) + return false; + return true; +} + +// ʼ +void Chessboard::init() noexcept +{ + // ʼ״̬ + memset(_states, EMPTY, sizeof _states); + uint8_t row = ROW / 2 - 1, column = COLUMN / 2 - 1; + _states[row][column + 1] = _states[row + 1][column] = BLACK; + _states[row][column] = _states[row + 1][column + 1] = WHITE; +} + +// ʾ +void Chessboard::show() +{ + // ôɫ + _renderer.setScreenColor(SCREEN); + + // + drawChessboard(); + + // + drawChess(); + + // ɫ + _renderer.setTextColor(PROMPT, SCREEN); + + // ӡ + int16_t x = (_left - 8) / 2, y = _renderer.getRow() / 2; + _renderer.outText(x, y, "ӣ"); + int16_t column = _renderer.getColumn(); + x = (column + _right - 8) / 2; + _renderer.outText(x, y, "ӣ"); + + // ӡغִ + x = (column - 8) / 2; + y = (_up - 2) / 2; + _renderer.outText(x, y, "غϣ"); + _renderer.outText(x, y + 1, "ִӣ"); +} + +// +void Chessboard::hide() const +{ + _renderer.clearScreen(); +} + +// +void Chessboard::update(uint8_t _round, State _state) +{ + using std::setw; + + // ˫ + _numbers[State::BLACK - 1] = _numbers[State::WHITE - 1] = 0; + for (uint8_t row = 0; row < ROW; ++row) + for (uint8_t column = 0; column < COLUMN; ++column) + if (isChess(_index, row, column)) + ++_numbers[_states[row][column] - 1]; + + // ɫ + _renderer.setTextColor(PROMPT, SCREEN); + + // ӡ + _stream.seekp(0, _stream.beg); + _stream << setw(2) << std::to_string(_numbers[State::BLACK - 1]) << std::ends; + int16_t x = (_left - 8) / 2 + 6, y = _renderer.getRow() / 2; + _renderer.outText(x, y, _stream.str().c_str()); + + // ӡ + _stream.seekp(0, _stream.beg); + _stream << setw(2) << std::to_string(_numbers[State::WHITE - 1]) << std::ends; + int16_t column = _renderer.getColumn(); + x = (column + _right - 8) / 2 + 6; + _renderer.outText(x, y, _stream.str().c_str()); + + // ӡغ + _stream.seekp(0, _stream.beg); + _stream << setw(2) << std::to_string(_round) << std::ends; + x = (column - 8) / 2 + 6; + y = (_up - 2) / 2; + _renderer.outText(x, y, _stream.str().c_str()); + + // ӡִ + _renderer.outText(x, y + 1, _state == BLACK ? "" : ""); +} + +// жܷ +bool Chessboard::operable(State _state) +{ + for (int16_t row = 0; row < ROW; ++row) + for (int16_t column = 0; column < COLUMN; ++column) + { + // ǰλ + if (isChess(_index, row, column)) + continue; + + // ת + setChess(row, column, _state); + bool convertible = convert(row, column, true); + setChess(row, column, EMPTY); + + // Ƿܹת + if (convertible) + return true; + } + return false; +} + +// ӿ +void Chessboard::skip() const +{ + int16_t row = _renderer.getRow(), column = _renderer.getColumn(); + _renderer.outText(0, column, _down, row, "ӿ䣡"); + Sleep(500); + _renderer.outText(0, column, _down, row, " "); +} + +// жֽ +bool Chessboard::judge() const noexcept +{ + // Ƿһӻ + return _numbers[0] == 0 || _numbers[1] == 0 \ + || _numbers[0] + _numbers[1] == ROW * COLUMN; +} + +// չʾ +void Chessboard::finish(bool _inoperable) const +{ + // ɫ + _renderer.setTextColor(PROMPT, SCREEN); + + // ˫δ˫ӿ + if (_inoperable) + { + _renderer.outText(0, _renderer.getColumn(), _down, _renderer.getRow(), "˫ӿ䣡"); + Sleep(500); + _renderer.outText(0, _renderer.getColumn(), _down, _renderer.getRow(), " "); + } + + const char* result; + if (_numbers[State::BLACK - 1] > _numbers[State::WHITE - 1]) + result = "ʤ"; + else if (_numbers[State::BLACK - 1] < _numbers[State::WHITE - 1]) + result = "ʤ"; + else + result = "ƽ֣"; + _renderer.outText(0, _renderer.getColumn(), _down, _renderer.getRow(), result); + Sleep(500); +} + +// Ӳ +bool Chessboard::put(State _state) +{ + // ± + int16_t row, column; + getIndex(_x, _y, row, column); + + // ǰλ + if (isChess(_index, row, column)) + return false; + + // Ӳת + setChess(row, column, _state); + if (!convert(row, column, true)) + { + // תʧܻ˲ + setChess(row, column, EMPTY); + return false; + } + + // תɹչʾת + convert(row, column, false); + return true; +} + +// ѭ +int Chessboard::loop() +{ + using std::setw; + + // + int key; + do + { + wait(); + key = handle(); + } while (key == 0); // ֵΪ㣬˵ֲ񰴼հ + + // ֹ + if (key == ESCAPE) + { + _renderer.setTextColor(PROMPT, SCREEN); + _renderer.outText(0, _renderer.getColumn(), _down, _renderer.getRow(), "ֹģ"); + Sleep(500); + } + return key; +} + +REVERSI_END diff --git a/Console/src/Chessboard.hpp b/Console/src/Chessboard.hpp new file mode 100644 index 0000000..cbada45 --- /dev/null +++ b/Console/src/Chessboard.hpp @@ -0,0 +1,138 @@ +#pragma once + +#include +#include + +#include "Reversi.hpp" + +class Renderer; + +REVERSI_BEGIN +class Chessboard +{ + struct Index {}; + struct Coordinate {}; + +public: + enum State : char { EMPTY, BLACK, WHITE }; + +private: + static constexpr uint8_t ROW = 8, COLUMN = 8; // ÿ߸ + static const Index _index; // ±˵ + static const Coordinate _coordinate; // ˵ + + std::stringstream _stream; // ַ + Renderer& _renderer; // Ⱦ + + int16_t _width, _height; // ̿Ⱥ͸߶ + int16_t _up, _down, _left, _right; // ̱߽ + + int16_t _x, _y; // λ + + State _states[ROW][COLUMN]; // ״̬ + uint8_t _numbers[2]; // ˫ + +private: + friend std::istream& operator >>(std::istream& _input, Chessboard& _chessboard); + friend std::ostream& operator <<(std::ostream& _output, const Chessboard& _chessboard); + + // תΪ± + void getIndex(int16_t _x, int16_t _y, int16_t& _row, int16_t& _column) const noexcept; + + // ת±Ϊ + void getCoord(int16_t _row, int16_t _column, int16_t& _x, int16_t& _y) const noexcept; + + // жָ±Ƿ + bool isChess(Index _index, int16_t _row, int16_t _column) const noexcept; + + // жָǷ + bool isChess(Coordinate _coordinate, int16_t _x, int16_t _y) const noexcept; + + // ״̬ + void setChess(int16_t _row, int16_t _column, State _state) noexcept; + + // ùɫ + void setCursorColor() const; + + // ɫ + void setChessColor(int16_t _x, int16_t _y) const; + + // + void drawChessboard(); + + // + void drawChess() const; + + // תӣչʾ̬Ч + void convertOne(int16_t _row, int16_t _column, State _state); + + // תϷ + bool convertUp(int16_t _row, int16_t _column, bool _judgmental); + + // ת· + bool convertDown(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convertLeft(int16_t _row, int16_t _column, bool _judgmental); + + // תҷ + bool convertRight(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convertLeftUp(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convertRightUp(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convertLeftDown(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convertRightDown(int16_t _row, int16_t _column, bool _judgmental); + + // ת + bool convert(int16_t _row, int16_t _column, bool _judgmental); + + // ȴ + void wait() const; + + // ¼ + int handle(); + +public: + Chessboard(Renderer& _renderer) noexcept; + + // Ч + explicit operator bool() const noexcept; + + // ʼ + void init() noexcept; + + // ʾ + void show(); + + // + void hide() const; + + // + void update(uint8_t _round, State _state); + + // жܷ + bool operable(State _state); + + // ӿ + void skip() const; + + // жֽ + bool judge() const noexcept; + + // չʾ + void finish(bool _inoperable) const; + + // Ӳ + bool put(State _state); + + // ѭ + int loop(); +}; +REVERSI_END diff --git a/Console/src/Game.cpp b/Console/src/Game.cpp new file mode 100644 index 0000000..b12b637 --- /dev/null +++ b/Console/src/Game.cpp @@ -0,0 +1,191 @@ +#include "Game.hpp" +#include "Renderer.hpp" +#include "Menu.hpp" + +#include +#include + +REVERSI_BEGIN + +// ¼ļ +static const char *IMAGE = "Reversi.dat"; + +// ؼ¼ +bool Game::load() +{ + // رļ + if (_stream.is_open()) + _stream.close(); + + // Զʽļ + _stream.open(IMAGE, Stream::in); + if (!_stream.is_open()) + return false; + + // ȡ¼ + _stream >> _chessboard; + if (!_chessboard) + return false; + + _stream.read(&_round, sizeof _round); + _player = (_round & 0x01) == Identity::BLACK ? &_black : &_white; + return true; +} + +// 洢¼ +void Game::save() +{ + // رļ + if (_stream.is_open()) + _stream.close(); + + // дʽļ + _stream.open(IMAGE, Stream::out); + if (_stream.is_open()) + { + // д¼ + _stream << _chessboard; + _stream.write(&_round, sizeof _round); + } +} + +// ¿ʼ +void Game::restart() noexcept +{ + _round = '\1'; // ʼغ + _player = &_black; // ʼִ + _chessboard.init(); // ʼ +} + +// ִֻ +void Game::rotate(bool _forward) noexcept +{ + // ǰߺлغ + _forward ? ++_round : --_round; + + switch (*_player) + { + case Identity::BLACK: // ӻΪ + _player = &_white; + break; + + case Identity::WHITE: // ӻΪ + _player = &_black; + break; + + default: + break; + } +} + +// жϷ +bool Game::judge() +{ + // ӿ + if (_chessboard.operable(*_player)) + return false; + + // ǰִֻ + rotate(true); + + // ӿ + if (_chessboard.operable(*_player)) + { + // ִֻ + rotate(false); + return false; + } + + // ˫ӿ + return true; +} + +// ߼ +void Game::play() +{ + // ʾ + _chessboard.show(); + _chessboard.update(_round, *_player); + + int key; + do + { + // ֲѭ + key = _chessboard.loop(); + + // ֹϷ + if (key == ESCAPE) + { + save(); // 洢¼ + break; + } + // Ӳ + else if (key == SPACE) + { + // Ƿɹ + if (!_chessboard.put(*_player)) + continue; + + // ִֻ + rotate(true); + // + _chessboard.update(_round, *_player); + + /* + * Ϸ֮һһӻ + * Ϸ֮˫ӿ + */ + if (bool inoperable = false; _chessboard.judge() || (inoperable = judge())) + { + // չʾ + _chessboard.finish(inoperable); + break; + } + + // ӿ + if (!_chessboard.operable(*_player)) + { + _chessboard.skip(); + rotate(true); + _chessboard.update(_round, *_player); + } + } + } while (true); + + // + _chessboard.hide(); +} + +// Ϸѭ +void Game::loop() +{ + int choice; + Menu menu(_renderer); + do + { + // ؼ¼޼¼ʼ˵ + menu.resume(load()); + + // ѡ˵ + menu.show(); + choice = menu.loop(); + menu.hide(); + + switch (choice) + { + case 2: // Ϸ + play(); + break; + + case 1: // ¿ʼ + restart(); + play(); + break; + + default: + break; + } + } while (choice != 0); // ѡ˳Ϸ˳ѭ +} + +REVERSI_END diff --git a/Console/src/Game.hpp b/Console/src/Game.hpp new file mode 100644 index 0000000..bceaaf7 --- /dev/null +++ b/Console/src/Game.hpp @@ -0,0 +1,59 @@ +#pragma once + +#include + +#include "Reversi.hpp" +#include "Chessboard.hpp" + +class Renderer; + +REVERSI_BEGIN +class Game +{ + using Stream = std::fstream; + using Identity = Chessboard::State; + +private: + Stream _stream; // ļ + Renderer& _renderer; // ۺȾ + + Chessboard _chessboard; // + Identity _black, _white, *_player; // ڰ + char _round; // غ + +private: + // ؼ¼ + bool load(); + + // 洢¼ + void save(); + + // ¿ʼ + void restart() noexcept; + + // ִֻ + void rotate(bool _forward) noexcept; + + // жϷ + bool judge(); + + // ߼ + void play(); + +public: + Game(Renderer& _renderer) noexcept : \ + _renderer(_renderer), \ + _chessboard(_renderer), \ + _black(Identity::BLACK), _white(Identity::WHITE), \ + _round ('\1') {} + + ~Game() + { + if (_stream.is_open()) + _stream.close(); + } + + // Ϸѭ + void loop(); +}; +REVERSI_END diff --git a/Console/src/Menu.cpp b/Console/src/Menu.cpp new file mode 100644 index 0000000..8061143 --- /dev/null +++ b/Console/src/Menu.cpp @@ -0,0 +1,233 @@ +#include "Menu.hpp" +#include "Renderer.hpp" + +#include +#include + +#include + +REVERSI_BEGIN + +// ɫ +static constexpr uint16_t COLOR_SCREEN = 0; +// ɫǰ +static constexpr uint16_t COLOR_VERSE = FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; +// ɫǰ +static constexpr uint16_t COLOR_FRAME = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; +// ɫǰ +static constexpr uint16_t COLOR_RESUME = FOREGROUND_RED | FOREGROUND_INTENSITY; +// ɫǰ +static constexpr uint16_t COLOR_RESTART = FOREGROUND_BLUE | FOREGROUND_INTENSITY; +// ɫǰ +static constexpr uint16_t COLOR_EXIT = FOREGROUND_GREEN | FOREGROUND_INTENSITY; + +// ݺڰ +static const char TEXT_VERSE[][3] = { "", "", "", "", "", "", "", \ + "Ŀ", "", "Ⱥ", "", "", "", "", \ + "", "", "", "", "", "", "֪", \ + "Ե", "", "", "", "", "", "" }; + +// ˵ +static const char *TEXT_TITLE = "ڰ"; +// ˵ѡ +static const char *TEXT_RESUME = "Ϸ"; +static const char *TEXT_RESTART = "¿ʼ"; +static const char *TEXT_EXIT = "˳Ϸ"; + +// ߿ +static const char *TEXT_LINE = ""; +// ߿ +static const char *TEXT_POINT = ""; +// +static const char *TEXT_CURSOR = ""; + +// ȡм +inline int16_t Menu::getSpace(int16_t _width) const noexcept +{ + return (_width - _size * _number) / (_number + 1); +} + +// ˢ¹ +void Menu::refreshCursor(const char* _cursor) +{ + using std::strlen; + + switch (_choice) + { + case 0: // ˳Ϸ + _x = (_width - static_cast(strlen(TEXT_EXIT))) / 2; + _x = _left + _x / 2 + 1; + _renderer.outText(_x, _y - 2, _cursor); + break; + + case 1: // ¿ʼ + _x = (_width - static_cast(strlen(TEXT_RESTART))) / 2; + _x = _left + _x / 2 + 1; + _renderer.outText(_x, _y - 4, _cursor); + break; + + case 2: // Ϸ + _x = (_width - static_cast(strlen(TEXT_RESUME))) / 2; + _x = _left + _x / 2 + 1; + _renderer.outText(_x, _y - 6, _cursor); + break; + + default: + break; + } +} + +// ޸ѡ +void Menu::modifyChoice(int _delta) noexcept +{ + // ѡű仯 + _choice += _delta; + + // Χݴ + if (_choice < 0) + _choice = _stored ? 2 : 1; + else if (_stored ? _choice > 2 : _choice >= 2) + _choice = 0; +} + +// ²˵ +int Menu::update() +{ + // Ƿ񰴼 + if (_kbhit() == 0) + return 0; + + // հ + bool even = false; + int key = _getch(); + if (key == 224) + { + key = _getch(); + even = true; + } + + // ع + refreshCursor(" "); + Sleep(40); + + // ޸ѡ + if (even) // ˫ + { + if (key == UP) // Ϸ + modifyChoice(1); + else if (key == DOWN) // · + modifyChoice(-1); + } + return key; +} + +Menu::Menu(Renderer& _renderer) noexcept + : _renderer(_renderer), _stored(false), _choice(1) +{ + using std::strlen; + + // ˵߿ĿȺ͸߶ + _width = static_cast(strlen(TEXT_LINE)); + _height = 3 + 4 + 6; + + // ˵߽ + _up = (_renderer.getRow() - _height) / 2; + _down = _up + _height; + _left = (_renderer.getColumn() - _width) / 2; + _right = _left + _width; + + // ֿ + _size = static_cast(strlen(TEXT_VERSE[0])); + _number = sizeof TEXT_VERSE / sizeof TEXT_VERSE[0] / 7 / 2; +} + +// ʾ˵ +void Menu::show() +{ + // ôɫ + _renderer.setScreenColor(COLOR_SCREEN); + + // ɫ + _renderer.setTextColor(COLOR_VERSE, COLOR_SCREEN); + + // ӡǰһ + int16_t counter = 0; + int16_t space = getSpace(_left); + for (int16_t column = _left - (space + _size) * _number, index = 0; \ + index < _number; ++index, column += space + _size) + for (int16_t row = _up; row < _down; row += 2) + { + Sleep(68); // ּ68ms + _renderer.outText(column, row, TEXT_VERSE[counter++]); + } + + // ӡһ + space = getSpace(_renderer.getColumn() - _right); + for (int16_t column = _right + space, index = 0; \ + index < _number; ++index, column += space + _size) + for (int16_t row = _up; row < _down; row += 2) + { + Sleep(68); + _renderer.outText(column, row, TEXT_VERSE[counter++]); + } + + // ӡ˵߿ + Sleep(96); + _y = _up; + _renderer.setTextColor(COLOR_FRAME, COLOR_SCREEN); + _renderer.outText(_left, _y, TEXT_LINE); + _y += 2; + _renderer.outText(_left, _right, _y, _y + 1, TEXT_TITLE); + _renderer.outText(_left, _y += 2, TEXT_LINE); + + // Ϸ + if (_stored) + { + _renderer.setTextColor(COLOR_RESUME, COLOR_SCREEN); + _y += 2; + _renderer.outText(_left, _right, _y, _y + 1, TEXT_RESUME); + } + + // ¿ʼ + _renderer.setTextColor(COLOR_RESTART, COLOR_SCREEN); + _y += 2; + _renderer.outText(_left, _right, _y, _y + 1, TEXT_RESTART); + + // ˳Ϸ + _renderer.setTextColor(COLOR_EXIT, COLOR_SCREEN); + _y += 2; + _renderer.outText(_left, _right, _y, _y + 1, TEXT_EXIT); + + // ӡ˵߿ + _renderer.setTextColor(COLOR_FRAME, COLOR_SCREEN); + _renderer.outText(_left, _y += 2, TEXT_LINE); + for (int16_t row = _up + 1; row < _y; ++row) + { + _renderer.outText(_left, row, TEXT_POINT); + _renderer.outText(_right - 2, row, TEXT_POINT); + } + + // ˢ¹ + refreshCursor(TEXT_CURSOR); +} + +// ز˵ +void Menu::hide() const +{ + _renderer.clearScreen(); +} + +// ˵ѭ +int Menu::loop() +{ + int key; + do + { + refreshCursor(TEXT_CURSOR); + Sleep(40); + key = update(); + } while (key != ENTER && key != SPACE); // EnterSpaceȷѡ + return _choice; +} + +REVERSI_END diff --git a/Console/src/Menu.hpp b/Console/src/Menu.hpp new file mode 100644 index 0000000..6b44c2f --- /dev/null +++ b/Console/src/Menu.hpp @@ -0,0 +1,54 @@ +#pragma once + +#include + +#include "Reversi.hpp" + +class Renderer; + +REVERSI_BEGIN +class Menu +{ + Renderer& _renderer; // Ⱦ + bool _stored; // 洢 + + int16_t _width, _height; // ˵߿Ⱥ͸߶ + int16_t _up, _down, _left, _right; // ˵߽ + int16_t _size, _number; // ֿ + + int16_t _x, _y; // λ + int _choice; // ѡ + +private: + // ȡм + int16_t getSpace(int16_t _width) const noexcept; + + // ˢ¹ + void refreshCursor(const char* _cursor); + + // ѡ + void modifyChoice(int _delta) noexcept; + + // ²˵ + int update(); + +public: + Menu(Renderer& _renderer) noexcept; + + // Ϸ + void resume(bool _stored) noexcept + { + this->_stored = _stored; + _choice = _stored ? 2 : 1; + } + + // ʾ˵ + void show(); + + // ز˵ + void hide() const; + + // ˵ѭ + int loop(); +}; +REVERSI_END diff --git a/Console/src/Renderer.cpp b/Console/src/Renderer.cpp index 3beae2a..2f65a63 100644 --- a/Console/src/Renderer.cpp +++ b/Console/src/Renderer.cpp @@ -1,4 +1,4 @@ -#include "Renderer.h" +#include "Renderer.hpp" #include @@ -8,227 +8,261 @@ #include #include -Renderer::Renderer(int16_t row, int16_t column, const char *title) +// ʼ +//void Renderer::init(const char *_title) const +//{ +// // ôڳ +// std::string command = "mode con lines=" + std::to_string(_row) + " cols=" + std::to_string(_column); +// std::system(command.c_str()); +// +// // ôڱ +// if (_title) +// { +// command.assign("title ").append(_title); +// std::system(command.c_str()); +// } +// +// // ع +// hideCursor(); +//} + +// ʼ +void Renderer::init(const char* _title) const { - handle = GetStdHandle(STD_OUTPUT_HANDLE); - this->row = row; - this->column = column; - init(row, column, title); + // ôڳ + SMALL_RECT rect = { 0, 0, _column - 1, _row - 1 }; + SetConsoleWindowInfo(_handle, TRUE, &rect); + + // Ļ봰ڳһʱغݹ + SetConsoleScreenBufferSize(_handle, COORD{ _column, _row }); + + // ̶ڴС + SetWindowLongPtr( + GetConsoleWindow(), // ȡ̨ھ + GWL_STYLE, // ָ޸Ĵʽ + GetWindowLongPtr(GetConsoleWindow(), GWL_STYLE) // ȡԭʽ + & ~WS_SIZEBOX & ~WS_MAXIMIZEBOX); // ڴСΪ޷ı䣬󻯰ťΪԾ + + // ôڱ + if (_title) + { +#if defined UNICODE + //int length = static_cast(sizeof(char) * std::strlen(_title)); + //int number = MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED | MB_USEGLYPHCHARS, _title, length, NULL, 0) + 1; + //TCHAR *buffer = new TCHAR[number]; + //MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED | MB_USEGLYPHCHARS, _title, length, buffer, number); + //buffer[number - 1] = TEXT('\0'); + //SetConsoleTitle(buffer); + //delete buffer; + SetConsoleTitleA(_title); +#else + SetConsoleTitle(_title); +#endif + } + + // ع + hideCursor(); } -// տ̨ -//void Renderer::clearScreen() +// ع +void Renderer::hideCursor() const +{ + CONSOLE_CURSOR_INFO info; + GetConsoleCursorInfo(_handle, &info); + info.bVisible = FALSE; + SetConsoleCursorInfo(_handle, &info); +} + +// ع꣨ݾɰ̨ +//void Renderer::hideCursor() const //{ -// std::system("cls"); +// std::cout << "\033[?25l"; //} -// տ̨ -//void Renderer::clearScreen() +// ʾ +void Renderer::showCursor() const +{ + CONSOLE_CURSOR_INFO info; + GetConsoleCursorInfo(_handle, &info); + info.bVisible = TRUE; + SetConsoleCursorInfo(_handle, &info); +} + +// ʾ꣨ݾɰ̨ +//void Renderer::showCursor() const //{ -// // ȡ̨Ϣ -// CONSOLE_SCREEN_BUFFER_INFO info; -// GetConsoleScreenBufferInfo(handle, &info); -// -// DWORD size = info.dwSize.X * info.dwSize.Y; // ַ -// DWORD number; -// COORD coord = { 0, 0 }; -// // Կո̨ -// FillConsoleOutputCharacter(handle, \ -// static_cast(' '), size, coord, &number); -// -// // ٴλȡϢ -// GetConsoleScreenBufferInfo(handle, &info); -// // Ĭɫ̨ -// FillConsoleOutputAttribute(handle, \ -// info.wAttributes, size, coord, &number); -// // ƶ(0, 0) -// SetConsoleCursorPosition(handle, coord); +// std::cout << "\033[?25h"; //} -// տ̨ -void Renderer::clearScreen() +// ƶ +void Renderer::moveCursor(int16_t _x, int16_t _y) const { - std::cout << "\033[2J" << "\033[0;0H"; + COORD coord = { _x, _y }; + SetConsoleCursorPosition(_handle, coord); } -// ôɫ -//void Renderer::setScreenColor(uint16_t background) +// ƶ꣨ݾɰ̨ +//void Renderer::moveCursor(int16_t _x, int16_t _y) const //{ -// std::ostringstream output; -// output << "color " << std::hex << (background >> 4 & 0xF) << 'f'; -// std::system(output.str().c_str()); +// std::cout << "\033[" << _y << ';' << _x << 'H'; +// // \033[0m +// // \033[1m +// // \033[4m » +// // \033[7m ԣǰɫ뱳ɫ +// // \033[nA n +// // \033[nB n +// // \033[nC n +// // \033[nD n +// // \033[K βݣڵǰβ +// // \033[s λ +// // \033[u ָλ //} -// ôɫ -//void Renderer::setScreenColor(uint16_t background) +Renderer::Renderer(int16_t _row, int16_t _column, const char *_title) + : _handle(GetStdHandle(STD_OUTPUT_HANDLE)), _row(_row), _column(_column) +{ + init(_title); +} + +// տ̨ +//void Renderer::clearScreen() const //{ -// // ȡϢ -// CONSOLE_SCREEN_BUFFER_INFO info; -// GetConsoleScreenBufferInfo(handle, &info); -// -// DWORD size = info.dwSize.X * info.dwSize.Y; // ַ -// DWORD number; -// COORD coord = { 0, 0 }; -// // Ĭɫ̨ -// FillConsoleOutputAttribute(handle, \ -// background, size, coord, &number); -// // ƶ(0, 0) -// SetConsoleCursorPosition(handle, coord); +// std::system("cls"); //} -// ôɫ -void Renderer::setScreenColor(uint16_t background) +// տ̨ +void Renderer::clearScreen() const { - std::ostringstream output; - output << "\033[" << (background >> 7 & 0x1) << ";4" << (background >> 4 & 0x7) << 'm'; - std::cout << output.str(); - clearScreen(); - std::cout << "\033[0m"; + // ȡ̨Ϣ + CONSOLE_SCREEN_BUFFER_INFO info; + GetConsoleScreenBufferInfo(_handle, &info); + + // Կո̨ + DWORD size = info.dwSize.X * info.dwSize.Y; // ַ + DWORD number; + COORD coord = { 0, 0 }; + FillConsoleOutputCharacter(_handle, \ + static_cast(' '), size, coord, &number); + + // ٴλȡϢ + GetConsoleScreenBufferInfo(_handle, &info); + + // Ĭɫ̨ + FillConsoleOutputAttribute(_handle, \ + info.wAttributes, size, coord, &number); + + // ƶ(0, 0) + SetConsoleCursorPosition(_handle, coord); } +// տ̨ڣݾɰ̨ +//void Renderer::clearScreen() const +//{ +// std::cout << "\033[2J" << "\033[0;0H"; +//} + /* - * ıɫ + * ôɫ * - * foreground ǰɫ - * background ɫ + * _background ɫ + * _foreground ǰɫ */ -//void Renderer::setTextColor(uint16_t foreground, uint16_t background) +//void Renderer::setScreenColor(uint16_t _background, uint16_t _foreground) const //{ // std::ostringstream output; -// output << "color " << std::hex << (background >> 4 & 0xF) << (foreground & 0xF); +// output << "color " << std::hex << (_background >> 4 & 0x0F) << (_foreground & 0x0F); // system(output.str().c_str()); //} -// ıɫ -//void Renderer::setTextColor(uint16_t foreground, uint16_t background) -//{ -// SetConsoleTextAttribute(handle, foreground & 0x0F | background & 0xF0); -//} - -// ıɫ -void Renderer::setTextColor(uint16_t foreground, uint16_t background) +// ôɫ +void Renderer::setScreenColor(uint16_t _background, uint16_t _foreground) const { - std::ostringstream output; - output << "\033[" << (background >> 7 & 0x1) << ";4" << (background >> 4 & 0x7) << 'm' - << "\033[" << (foreground >> 3 & 0x1) << ";3" << (foreground & 0x7) << 'm'; - std::cout << output.str(); -} + // ȡϢ + CONSOLE_SCREEN_BUFFER_INFO info; + GetConsoleScreenBufferInfo(_handle, &info); -// ı -void Renderer::outText(int16_t x, int16_t y, const char *text) -{ - moveCursor(x, y); - std::cout << text; -} + // Ĭɫ̨ + DWORD size = info.dwSize.X * info.dwSize.Y; // ַ + DWORD number; + COORD coord = { 0, 0 }; + FillConsoleOutputAttribute(_handle, \ + _background, size, coord, &number); -// ıָΧ -void Renderer::outTextRange(int16_t left, int16_t right, int16_t up, int16_t down, const char *text) -{ - auto length = static_cast(std::strlen(text)); - moveCursor((left + right - length) / 2, (up + down - 1) / 2); - std::cout << text; + // ƶ(0, 0) + SetConsoleCursorPosition(_handle, coord); + + // ɫ + setTextColor(_foreground, _background); } -// ʼ̨ -//void Renderer::init(int16_t row, int16_t column, const char *title) +/* + * ɫλɫλ + * + * _color ɫ + * _offset ƫ + */ +//static uint16_t swapRedAndBlue(uint16_t _color, uint16_t _offset) noexcept //{ -// // ôڳ -// std::string command = "mode con lines=" + std::to_string(row) + " cols=" + std::to_string(column); -// std::system(command.c_str()); -// // ôڱ -// if (title) -// { -// command.assign("title ").append(title); -// std::system(command.c_str()); -// } -// // ع -// hideCursor(); +// // ȡɫλɫλ +// uint16_t temp = _color & 0x1 << _offset; +// +// // ɫλֵΪһɫλ +// _color = _color & ~(0x1 << _offset) | (_color & 0x4 << _offset) >> 2; +// return _color & ~(0x4 << _offset) | temp << 2; //} -// ʼ̨ -void Renderer::init(int16_t row, int16_t column, const char *title) -{ - // ôڳ - SMALL_RECT rect = { 0, 0, column - 1, row - 1 }; - SetConsoleWindowInfo(handle, TRUE, &rect); - // Ļ봰ڳһʱغݹ - SetConsoleScreenBufferSize(handle, COORD{ column, row }); - // ̶ڴС - SetWindowLongPtr( - GetConsoleWindow(), // ȡ̨ھ - GWL_STYLE, // ָ޸Ĵʽ - GetWindowLongPtr(GetConsoleWindow(), GWL_STYLE) // ȡԭʽ - & ~WS_SIZEBOX & ~WS_MAXIMIZEBOX); // ڴСΪ޷ı䣬󻯰ťΪԾ - // ع - hideCursor(); - // ôڱ - if (title) - { -#if defined UNICODE - //int length = static_cast(sizeof(char) * std::strlen(title)); - //int number = MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED | MB_USEGLYPHCHARS, title, length, NULL, 0) + 1; - //TCHAR *buffer = new TCHAR[number]; - //MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED | MB_USEGLYPHCHARS, title, length, buffer, number); - //buffer[number - 1] = TEXT('\0'); - //SetConsoleTitle(buffer); - //delete buffer; - SetConsoleTitleA(title); -#else - SetConsoleTitle(title); -#endif - } -} - -// ع -//void Renderer::hideCursor() +// ôɫݾɰ̨ +//void Renderer::setScreenColor(uint16_t _background, uint16_t _foreground) const //{ -// CONSOLE_CURSOR_INFO info; -// GetConsoleCursorInfo(handle, &info); -// info.bVisible = FALSE; -// SetConsoleCursorInfo(handle, &info); +// // ɫλ +// uint16_t color = swapRedAndBlue(_background, 4); +// +// // ñɫ +// std::ostringstream output; +// output << "\033[" << (color >> 7 & 0x01) << ";4" << (color >> 4 & 0x07) << 'm'; +// std::cout << output.str(); +// +// // 䴰 +// clearScreen(); +// +// // +// std::cout << "\033[0m"; +// +// // ɫ +// setTextColor(_foreground, _background); //} -// ع -void Renderer::hideCursor() +// ıɫ +void Renderer::setTextColor(uint16_t _foreground, uint16_t _background) const { - std::cout << "\033[?25l"; + SetConsoleTextAttribute(_handle, _foreground & 0x0F | _background & 0xF0); } -// ʾ -//void Renderer::showCursor() +// ıɫݾɰ̨ +//void Renderer::setTextColor(uint16_t _foreground, uint16_t _background) const //{ -// CONSOLE_CURSOR_INFO info; -// GetConsoleCursorInfo(handle, &info); -// info.bVisible = TRUE; -// SetConsoleCursorInfo(handle, &info); +// // ɫλ +// _foreground = swapRedAndBlue(_foreground, 0); +// _background = swapRedAndBlue(_background, 4); +// +// // ñɫǰɫ +// std::ostringstream output; +// output << "\033[" << (_background >> 7 & 0x01) << ";4" << (_background >> 4 & 0x07) << 'm' +// << "\033[" << (_foreground >> 3 & 0x01) << ";3" << (_foreground & 0x07) << 'm'; +// std::cout << output.str(); //} -// ʾ -void Renderer::showCursor() +// ı +void Renderer::outText(int16_t _x, int16_t _y, const char *_text) const { - std::cout << "\33[?25h"; + moveCursor(_x, _y); + std::cout << _text; } -// ƶ -//void Renderer::moveCursor(int16_t x, int16_t y) -//{ -// COORD coord = { x, y }; -// SetConsoleCursorPosition(handle, coord); -//} - -// ƶ -void Renderer::moveCursor(int16_t x, int16_t y) +// ıָΧ +void Renderer::outText(int16_t _left, int16_t _right, int16_t _up, int16_t _down, const char *_text) const { - std::cout << "\033[" << y << ';' << x << 'H'; - // \033[0m - // \033[1m - // \033[4m » - // \033[7m ԣǰɫ뱳ɫ - // \033[nA n - // \033[nB n - // \033[nC n - // \033[nD n - // \033[K βݣڵǰβ - // \033[s λ - // \033[u ָλ + auto length = static_cast(std::strlen(_text)); + moveCursor((_left + _right - length) / 2, (_up + _down - 1) / 2); + std::cout << _text; } diff --git a/Console/src/Renderer.h b/Console/src/Renderer.h deleted file mode 100644 index 35e0329..0000000 --- a/Console/src/Renderer.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include - -class Renderer -{ - void *handle; - short row, column; -public: - Renderer(int16_t row, int16_t column, const char *title = nullptr); - short getRow() { return row; } - short getColumn() { return column; } - void clearScreen(); - void setScreenColor(uint16_t background); - void setTextColor(uint16_t foreground, uint16_t background); - void outText(int16_t x, int16_t y, const char *text); - void outTextRange(int16_t left, int16_t right, int16_t up, int16_t down, const char *text); -private: - void init(int16_t row, int16_t column, const char *title); - void hideCursor(); - void showCursor(); - void moveCursor(int16_t x, int16_t y); -}; diff --git a/Console/src/Renderer.hpp b/Console/src/Renderer.hpp new file mode 100644 index 0000000..b672e83 --- /dev/null +++ b/Console/src/Renderer.hpp @@ -0,0 +1,46 @@ +#pragma once + +#include + +class Renderer +{ + void *_handle; // ھ + int16_t _row, _column; // + +private: + // ʼ + void init(const char* _title) const; + + // ع + void hideCursor() const; + + // ʾ + void showCursor() const; + + // ع + void moveCursor(int16_t _x, int16_t _y) const; + +public: + Renderer(int16_t _row, int16_t _column, const char *_title = nullptr); + + // ȡ + int16_t getRow() const noexcept { return _row; } + + // ȡ + int16_t getColumn() const noexcept { return _column; } + + // տ̨ + void clearScreen() const; + + // ôɫ + void setScreenColor(uint16_t _background, uint16_t _foreground = 0x0F) const; + + // ıɫ + void setTextColor(uint16_t _foreground, uint16_t _background) const; + + // ıָλ + void outText(int16_t _x, int16_t _y, const char *_text) const; + + // ıָΧ + void outText(int16_t _left, int16_t _right, int16_t _up, int16_t _down, const char *_text) const; +}; diff --git a/Console/src/Reversi.hpp b/Console/src/Reversi.hpp new file mode 100644 index 0000000..a2a1f0d --- /dev/null +++ b/Console/src/Reversi.hpp @@ -0,0 +1,17 @@ +#ifndef REVERSI_H +#define REVERSI_H + +// ֵ +#define ENTER 13 +#define ESCAPE 27 +#define SPACE 32 +#define UP 72 +#define DOWN 80 +#define LEFT 75 +#define RIGHT 77 + +// ռ +#define REVERSI_BEGIN namespace reversi { +#define REVERSI_END } + +#endif diff --git a/Console/src/main.cpp b/Console/src/main.cpp new file mode 100644 index 0000000..0552304 --- /dev/null +++ b/Console/src/main.cpp @@ -0,0 +1,11 @@ +#include "Renderer.hpp" +#include "Game.hpp" + +int main() +{ + using namespace reversi; + Renderer renderer(25, 80, "Reversi"); + Game game(renderer); + game.loop(); + return 0; +} -- GitLab