Skip to content

CichyJohnny/CChess

Repository files navigation

icon (2) CChess

CChess is simple desktop application made with C and SFML.

demo

Software

  • GCC 13.2.0
  • CSFML 2.5.1
  • VSCode 1.88.1

Installation

  1. Use the official SFML binding for the C language from SFML project website.

  2. Move files from SFML/bin/ to project directory.

  3. (If VSCode) link SFML/bin, /include, /lib and your compiler inside files: tasks, launch, c_cpp_properties

Features

  • Complete chess experience
  • Implemented every chess rule
  • Graphic representation of chessboard, chess pieces and game informations
  • Saves
  • Icon

Aditionally:

  • Source and header files segmentation
  • Full comprehensive documentation
  • Error free

Usage

  • In VSCode compile with Run and Debug menu
  • Launch game with CChess.exe
  • Select figure with left-click, then click highlighted square
  • Save or load using down right corner buttons
  • Quit with close bar button, or ESC

Libraries content

  1. actions
    • Actions on pieces like normal move, en passant or pawn promotion
  2. chess_events
    • Handling check, check mate and stale mate
  3. chessboard
    • initialization and drawing empty chessboard
  4. clashing
    • Handling king - rook clashing
  5. include_define
    • Include SFML library
    • Define game and figure structure
  6. moveboard
    • Check and draw every legal move
  7. moves
    • Chess pieces moves
  8. save_load
    • Save current game state to file
    • Load game from file
  9. sprites
    • Handling sprites of chess figures, save/load buttons and background
  10. texts
    • initialization of game informations texts

TODO

  • documentation and README page
  • icon
  • add sounds effect
  • improve RAM efficiency
  • better interactivity

About

Chess desktop application in C SFML

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages