เวอร์ชันเทอร์มินัลของเกม "2048" เขียนด้วยภาษา C++
- นำเสนอบนหน้า Twitter และ Facebook ของ GitHub! -
เกมและโค้ดถูกสร้างขึ้นมาเพื่อให้ทำงานได้บนแพลตฟอร์ม GNU/Linux และ MacOS แต่มีการเพิ่มความเข้ากันได้ข้ามแพลตฟอร์มสำหรับ Windows ด้วยเช่นกัน
g++
, clang++
, pgc++
, icpc
ฯลฯ )git clone https://github.com/plibither8/2048.cpp
cd 2048.cpp
สำหรับทั้ง CMake และ Meson คอมไพเลอร์ C++ เริ่มต้นบนระบบของคุณจะถูกนำมาใช้ หากคุณต้องการเลือกคอมไพเลอร์ C++ ด้วยตนเอง ให้เลือกเพิ่ม CXX=clang++ cmake
หรือ CXX=clang++ meson
เป็นต้น
ctest -S setup.cmake
cmake --install build
2048 # run `build/2048` if game is not installed
หรือ
meson build
meson test -C build
meson configure build --prefix= $HOME /.local
meson install -C build
2048 # run `build/2048` if game is not installed
ก่อนอื่นขอขอบคุณที่ร่วมให้ข้อมูล! บางสิ่งที่ควรทราบ:
หากคุณพบข้อบกพร่องหรือมีคุณสมบัติที่คุณต้องการนำไปใช้ ให้แจ้งปัญหา
หากคุณเสนอคำขอดึง ตรวจสอบให้แน่ใจว่าคุณเรียกใช้ clang-format
ในไฟล์ซอร์สโค้ด (ทั้ง . .cpp
และ .hpp
) หากคุณได้ทำการเปลี่ยนแปลงที่นั่น
ในที่เก็บในเครื่องของคุณ ให้รัน git update-index --skip-worktree ./data/*.txt
เพื่อให้แน่ใจว่าการเปลี่ยนแปลงในไฟล์ข้อมูลจะไม่ถูกติดตามโดย git และดังนั้นจึงไม่มีการจัดฉาก
ฉันซาบซึ้งอย่างยิ่งในความช่วยเหลือจากบุคคลต่อไปนี้:
cstdlib rand
เป็นตัวสร้าง int แบบสุ่ม C ++CMakeLists.txt
1
ที่ไม่ต้องการclang-format
Game
CMakeLists.txt
และทำให้ Color
enum เป็น enum ที่กำหนดขอบเขตconst
s [GameBoard].getTile(2,0)
หมายถึงไทล์ที่ 0 (หรือคอลัมน์) ในแถวที่ 2 ในกรณีนี้ x = 0 และ y = 2 ไทล์เฉพาะจะแสดงด้วยสัญลักษณ์ '@' ในกระดานเกมต่อไปนี้ : :
หมายเหตุ: การจัดทำดัชนี
row
และcolumn
เริ่มต้นที่ 0
┌──────┬──────┬──────┬──────┐
│ │ │ │ │
├──────┼──────┼──────┼──────┤
│ │ │ │ │
├──────┼──────┼──────┼──────┤
│ @ │ │ │ │
├──────┼──────┼──────┼──────┤
│ │ │ │ │
└──────┴──────┴──────┴──────┘
ลิขสิทธิ์ (c) มิฮิร์ จตุรเวดี สงวนลิขสิทธิ์.
ได้รับอนุญาตภายใต้ใบอนุญาต MIT