A simple snake game, with terminal GUI implemented using ncurses library.
- Up-Arrow to go up.
- Down-Arrow to go down.
- Left-Arrow to go left.
- Right-Arrow to go right.
- q to exit game.
- Increase speed of the snake when it devours a snack.
- Add a scoreboard.
- Fix the window-resize factor, since it gets all messy when you minimize/maximize the terminal window.
- Create a 'Game' class and provide interface through that function so that the user don't have to mess with the graphics snake and controller classes.
- Implement the Game::printGameStatistics function to print the score and games played of each player.
You need to install the following packages:
- libncurses5-dev : Developer’s libraries for ncurses,
- libncursesw5-dev : Developer’s libraries for ncursesw,
- gcc : C\C++ compiler,
- make : instalation tool.
Open up a terminal and type the folllowing commands:
#make sure everything is updated
~$ sudo apt update && sudo apt upgrade
#Now to install compiler and instalation tool
~$ sudo apt-get install gcc make
#And the actuall library (ncurses)
~$ sudo apt-get install libncurses5-dev libncursesw5-dev
Now you are ready to use the repo.
Now we will install and run the program, but first let's download the repo:
~$ git clone https://github.com/VissaMoutafis/Snake_Game_in_Cpp
# cd in the directory
~$ cd Snake_Game_in_Cpp
#run the 'make run' to install and play
~$ make run
and enjoy playing!
Note: You might want to delete the objective files and keep only the src part (clean up). In that case:
~$ make clean
and you are set.
Special thanks to plato(otalpster) for fixing a bug that i would never notice! (Thnx man)
Check the file LICENCE or click the following link.
If you are interested to know more about terminal gui apps and especially ncurses library, check this out!
Another ncurses guide (maybe more begginer friendly) is this one.