# 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
[](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