Index

ncurses-minesweeper / 5700040

Terminal game of Minesweeper, implemented in C with ncurses.

Latest Commit

{#}TimeHashSubjectAuthor#(+)(-)GPG?
4508 Oct 2021 11:445700040Add 30ms input timeoutJosh Stockin122G

Tree

ObjectLatest Commit SubjectTimeHash
foldersrcAdd 30ms input timeout08 Oct 2021 11:445700040
file.clang-formatUpdate lint config12 Sep 2020 16:1857786ab
file.gitignoreAdd *.swp to .gitignore12 Sep 2020 10:35ca7e2b2
fileLICENSEInitial commit (README.md, LICENSE)07 Sep 2020 18:239f17065
fileMakefileFix issue with Make incorrectly parsing gcc -MM12 Sep 2020 16:186caccaa
fileREADME.mdUpdate README04 Jan 2021 16:3706f0fd1

README

ncurses Minesweeper

Terminal game of Minesweeper, implemented in C with ncurses.

Minesweeper is a logic game where mines are hidden in a grid of squares. The object is to open all the safe squares in the shortest time possible. Use the arrow keys to move and <SPACE> to select. Read the Help page for more information.

Click to watch a video demo on YouTube: Minesweeper demo

Compiling and Linking

Should be functional on all systems with an ncurses library. PDCurses may be dropped in and linked on Windows, although this hasn't been tested. Might work on WSL or Cygwin.

Requirements: build-essential libncurses-dev

Compiling and linking:

make compile build

Binary executable deposited at bin/minesweeper. You can copy this to /usr/local/bin/minesweeper to run the game as minesweeper from any location in your shell (given /usr/local/bin is in your path).

If you're contributing source code to this repository, install clang-format clang-tidy and use make to target the linter programs. (clang-format is a bit finicky; make sure you're running version 10.0.0 at least, or it will yell at you about unsupported configuration in .clang-format.)

Program structure

All header files correspond to a similarly named source file except src/draw/pages.h, which encapsulates multiple sources in the same directory, and src/state.h, which provides struct definitions for game state data.

TODO

Copyright and Licensing

This package is copyrighted by Joshua 'joshuas3' Stockin and licensed under the MIT License.

A form of the following should be present in each source or header file.

ncurses-minesweeper Copyright (c) 2020 Joshua 'joshuas3' Stockin
<https://joshstock.in>
<https://github.com/JoshuaS3/ncurses-minesweeper>

This software is licensed and distributed under the terms of the MIT License.
See the MIT License in the LICENSE file of this project's root folder.

This comment block and its contents, including this disclaimer, MUST be
preserved in all copies or distributions of this software's source.

<https://joshstock.in> | josh@joshstock.in | joshuas3#9641