在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。
對各種(代碼,非代碼,低代碼)的貢獻進行了應用。
如果您想為該項目做出貢獻,請確保在提出新的拉請請求之前閱讀貢獻指南。
如果您想報告一個錯誤,或想分享想法/對項目貢獻,請隨時開設一個問題/公關
還可以隨時開放詢問查詢的問題。
如果您喜歡該項目,請確保通過給開發人員一顆星星來支持開發人員?