在C ++和SDL中创建的Tetris™克隆,该项目还旨在与emscripten编译为Webasm并在线部署。
| 开始新游戏 |
|---|

| 钥匙 | 行动 |
|---|---|
left_arrow | 向左移动 |
right_arrow | 向右移动 |
z或up_arrow | 顺时针旋转 |
x或left-ctrl | 顺时针旋转旋转 |
space | 硬滴 |
down_arrow | 软滴 |
p | 暂停游戏 |
r | 重置游戏 |
(本节或readme.md仍在建设中,您可能会通过开放有关相同的PR/问题来帮助改善这一点)
执行以下步骤以在本机计算机上构建项目:
克隆/下载存储库
导航到存储库的src子目录
现在编译程序(取决于您要构建在线可部署版本还是本机构建,请按照以下步骤之一)
警告:目前,存储库没有构建系统/脚本来自动化构建过程,因此可悲的是,手动构建是使该项目在系统上运行的唯一方法(如果您有兴趣为项目设置一个,然后可以随意打开一个问题,讨论相同的问题)
3.1。使用Emscripten构建网络沼:
为了构建游戏的在线可部署版本,我们将使用emscripten将程序编译为Webasm。
$ em++ -std=c++17 renderer.cpp game.cpp app.cpp main.cpp -O2 -s TOTAL_MEMORY=67108864 -s USE_SDL=2 -s USE_SDL_TTF=2 -s USE_SDL_MIXER=2 --preload-file assets -o ../build/index.jstodo:解释上述命令的详细作用
build子目录中emrun即可通过本地启动的Web服务器运行HTML页面。 $ emrun index.htmlFWIW:如果您很有趣地了解更多信息,您也可能想访问有关使用Emscripten构建项目的更多信息的Emscripten文档。
3.2。使用本机C ++编译器的本机构建:
只需使用您的本机C ++编译器从所有源文件中构建和执行(在大多数情况下应将其提供给命令的顺序不重要)
确保正确链接SDL2 , SDL2_ttf和SDL2_mixer库。
$ g++ -std=c++17 renderer.cpp game.cpp app.cpp main.cpp -O2 -lSDL2_ttf -lSDL2_mixer -lSDL2这些说明旨在由各个级别的开发人员理解,因此,如果您无法理解任何内容或面临建立项目的困难,请确保通过打开问题或讨论部分来抱怨相同。
该存储库正在参加Hacktoberfest,因此在10月份对该项目所做的任何贡献都应计入Hacktoberfest。
对各种(代码,非代码,低代码)的贡献进行了应用。
如果您想为该项目做出贡献,请确保在提出新的拉请请求之前阅读贡献指南。
如果您想报告一个错误,或想分享想法/对项目贡献,请随时开设一个问题/公关
还可以随时开放询问查询的问题。
如果您喜欢该项目,请确保通过给开发人员一颗星星来支持开发人员?