summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles/icons/screenshot.sh
diff options
context:
space:
mode:
authorFranklin Wei <frankhwei536@gmail.com>2016-11-20 15:16:41 -0500
committerFranklin Wei <frankhwei536@gmail.com>2016-11-24 16:23:09 -0500
commit56c9984511f016eab7e1278ba9e40d88bb59a162 (patch)
tree1bfa6d3aeb3bf2a6ffec71387ac073cd0b8b2a51 /apps/plugins/puzzles/icons/screenshot.sh
parent29648f817677b84c03c2bcfe89eb8cf53653e7db (diff)
downloadrockbox-puzzles.zip
rockbox-puzzles.tar.gz
rockbox-puzzles.tar.bz2
rockbox-puzzles.tar.xz
[WIP] Port of Simon Tatham's Puzzle Collectionpuzzles
Original revision: 5123b1bf68777ffa86e651f178046b26a87cf2d9 MIT Licensed. Some games still crash and others are unplayable due to issues with controls. Still need a "real" polygon filling algorithm. The following games are at least partially broken for various reasons: Cube: crash with certain settings Galaxies: crash Inertia: crash Keen: input issues Loopy: weird stuff happens Map: crash on input Mines: weird stuff happens on target Palisade: input issues Signpost: crash on input Solo: input issues Towers: input and drawing issues Train Tracks: drawing issues Twiddle: weird animation on target Undead: input and drawing issues Unequal: input and drawing issues Untangle: input issues All in all, about 40% of the games are at least partially broken. Change-Id: I7c69b6860ab115f973c8d76799502e9bb3d52368
Diffstat (limited to 'apps/plugins/puzzles/icons/screenshot.sh')
-rwxr-xr-xapps/plugins/puzzles/icons/screenshot.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/apps/plugins/puzzles/icons/screenshot.sh b/apps/plugins/puzzles/icons/screenshot.sh
new file mode 100755
index 0000000..0e2a06e
--- /dev/null
+++ b/apps/plugins/puzzles/icons/screenshot.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+# Generate a screenshot from a puzzle save file. Takes the
+# following arguments, in order:
+#
+# - the name of the puzzle binary
+# - the name of the save file
+# - the name of the output image file
+# - (optionally) the proportion of the next move to redo before
+# taking the screenshot.
+#
+# This script requires access to an X server in order to run, but
+# seems to work fine under xvfb-run if you haven't got a real one
+# available (or if you don't want to use it for some reason).
+
+binary="$1"
+save="$2"
+image="$3"
+if test "x$4" != "x"; then
+ redo="--redo $4"
+else
+ redo=
+fi
+
+"$binary" $redo --screenshot "$image" --load "$save"