# sokoban-cpp **Repository Path**: ShenMian/sokoban-cpp ## Basic Information - **Project Name**: sokoban-cpp - **Description**: 一个简单的推箱子. (GitHub 镜像) - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: https://github.com/ShenMian/sokoban - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-08-16 - **Last Updated**: 2024-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # sokoban-cpp [![CodeFactor](https://www.codefactor.io/repository/github/shenmian/sokoban-cpp/badge)](https://www.codefactor.io/repository/github/shenmian/sokoban-cpp) A simple sokoban, using [SFML] framework.

## Features - Mouse control: move character, select & drop crates. - Undo/undo all. - Automatically save and restore session. - Autosave best solutions. - Save opened levels. - Show dead crates: freeze deadlocks detection. - Rotate level map. - Resize map to fit window. ## Keymap | Key | Action | | -------------------------- | --------------------------------- | | `W`/`A`/`S`/`D` | Move the character | | `Up`/`Down`/`Left`/`Right` | Move the character | | `H`/`J`/`K`/`L` | Move the character | | `Esc` | Reload current level | | `BackSpace` | Single step undo | | `R` | Rotate map clockwise | | `-`/`=` | Switch to the previous/next level | | `P` | Replay solution | | `Ctrl` + `I` | Switch instant move | | `Ctrl` + `V` | Import level from clipboard | ## Assets - Image from [Kenney]. - Sound effect/music from [sinneschlösen]/[Pixabay]. [SFML]: https://github.com/SFML/SFML [Kenney]: https://www.kenney.nl/assets/sokoban [sinneschlösen]: https://pixabay.com/users/sinneschlösen-1888724/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=117362 [Pixabay]: https://pixabay.com/sound-effects/?utm_source=link-attribution&utm_medium=referral&utm_campaign=music&utm_content=6297