## Snake in rust using [ncurses](https://docs.rs/ncurses) The game is playable run with ```bash cargo run ``` #### Keybinds hjkl or arrow keys for movement esc or p to pause #### Screenshot Click the image for asciinema [](https://asciinema.org/a/PtMG7dghPAEZ7tNgx70sKplKq?autoplay=1) #### Todo :construction: - [ ] Add a way to change the snake speed - [ ] Make a ui to switch the snake speed - [x] Interal implementation of the snake speed - [ ] Implement Highscore System - [ ] Make the ui - [ ] Internal Implementation #### Bugs :bug: - ~~Snake going through the walls~~ - ~~Food spawning in the walls~~ - Remove all the logging in the ui - Pausing delayed if esc is pressed but not if p is pressed. #### Maybe in the future - [ ] Autoplay the game using a simple pathfinding algorithm (to show on [r/unixporn](https://reddit.com/r/unixporn) of course :clown_face:) #### Notes A few notes about the complexity of the game and how I should improve the game
Read More The complexity of the program is O(n) every tick (time which changes relative to the speed) However the place, I can improve is the redrawing of the game As of commit f9be68e the game redraws the total board and the total snake every tick. I think this can be improved by only drawing the parts of the snake and the board when needed