Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mr-ema/cnake
Snake game implemented in C width raylib and vim motions for movement.
https://github.com/mr-ema/cnake
build-zig c raylib snake-game
Last synced: 16 days ago
JSON representation
Snake game implemented in C width raylib and vim motions for movement.
- Host: GitHub
- URL: https://github.com/mr-ema/cnake
- Owner: mr-ema
- License: unlicense
- Created: 2023-06-12T02:57:06.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-07T14:45:26.000Z (11 months ago)
- Last Synced: 2024-02-08T01:56:47.686Z (11 months ago)
- Topics: build-zig, c, raylib, snake-game
- Language: C
- Homepage: https://mr-ema.github.io/games/cnake/
- Size: 987 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cnake
Snake game implemented in C using the raylib library, with vim motions by default for movement.
## Resources
- [raylib](https://www.raylib.com)
- [raylib snake game example](https://github.com/raysan5/raylib-games/blob/master/classics/src/snake.c)## Features
- [x] Basic Title Screen
- [x] Score tracking to keep track of the player's progress
- [x] Randomized food spawning
- [x] Snake grows longer when it eats food
- [x] Game over condition when the snake collides with the boundaries or itself
- [x] Options menu
- [x] Configurable controls at run-time [Options menu]
- [x] Configurable mode (slow - normal - fast - blazingly fast)
## Demo
![Demo](https://github.com/mr-ema/cnake/blob/main/assets/demo.gif)## How To Build
Before you start, make sure you have the required dependencies for
raylib installed. Refer to the official [raylib - build and installation
guide](https://github.com/raysan5/raylib#build-and-installation) for
instructions on setting up the necessary environment.```
git clone --recurse-submodules https://github.com/mr-ema/cnake
cd cnake/
zig build
```## Acknowledgements
This game was developed using [raylib](https://www.raylib.com/),
a simple and easy-to-use game development library. raylib provides
a rich set of functionality and is well-suited for creating 2D games
and interactive applications.