summaryrefslogtreecommitdiff
path: root/games/xsokoban
diff options
context:
space:
mode:
authorThomas Gellekum <tg@FreeBSD.org>1996-11-20 07:06:59 +0000
committerThomas Gellekum <tg@FreeBSD.org>1996-11-20 07:06:59 +0000
commit7d186159b1522d129e5e22d29ae9e150b6dffa31 (patch)
tree893941a439e5dfd994852943a983ef17fd1169af /games/xsokoban
parentChange hard link to symlink so that it works even when the manpages are (diff)
Import of xsokoban, a pushing blocks solitaire game.
Closes PRs 1801, 2029, 2059. Submitted by: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
Notes
Notes: svn path=/head/; revision=4604
Diffstat (limited to 'games/xsokoban')
-rw-r--r--games/xsokoban/Makefile37
-rw-r--r--games/xsokoban/distinfo1
-rw-r--r--games/xsokoban/files/patch-aa20
-rw-r--r--games/xsokoban/files/patch-ab53
-rw-r--r--games/xsokoban/files/patch-ac19
-rw-r--r--games/xsokoban/pkg-comment1
-rw-r--r--games/xsokoban/pkg-descr102
-rw-r--r--games/xsokoban/pkg-plist138
8 files changed, 371 insertions, 0 deletions
diff --git a/games/xsokoban/Makefile b/games/xsokoban/Makefile
new file mode 100644
index 000000000000..91ab1f091d70
--- /dev/null
+++ b/games/xsokoban/Makefile
@@ -0,0 +1,37 @@
+# New ports collection makefile for: xsokoban
+# Version required: 3.3b
+# Date created: 16 November 1996
+# Whom: Yukihiro Nakai <Nakai@Mlab.t.u-tokyo.ac.jp>
+#
+# $Id$
+#
+
+DISTNAME= xsokoban-3.3b
+CATEGORIES= games x11
+MASTER_SITES= ftp://ftp.pmg.lcs.mit.edu/pub/xsokoban/
+
+MAINTAINER= Nakai@Mlab.t.u-tokyo.ac.jp
+
+LIB_DEPENDS= Xpm\\.4\\.:${PORTSDIR}/graphics/xpm
+
+USE_X11= yes
+USE_IMAKE= yes
+XMKMF= xmkmf
+WRKSRC= ${WRKDIR}/xsokoban
+ALL_TARGET= xsokoban
+
+post-install:
+ @mkdir -p ${PREFIX}/lib/X11/xsokoban/scores \
+ ${PREFIX}/lib/X11/xsokoban/bitmaps/defaults \
+ ${PREFIX}/lib/X11/xsokoban/saves \
+ ${PREFIX}/lib/X11/xsokoban/screens
+ @chmod 777 ${PREFIX}/lib/X11/xsokoban/scores
+ @chmod 775 ${PREFIX}/lib/X11/xsokoban/saves
+ @${INSTALL_DATA} ${WRKSRC}/screens/* ${PREFIX}/lib/X11/xsokoban/screens
+ @${INSTALL_DATA} ${WRKSRC}/bitmaps/defaults/* \
+ ${PREFIX}/lib/X11/xsokoban/bitmaps/defaults
+ @echo "First, type: 'xsokoban -c' to make score files."
+ @echo "You must be the superuser 'root', and enter password 'score'."
+ @echo
+
+.include <bsd.port.mk>
diff --git a/games/xsokoban/distinfo b/games/xsokoban/distinfo
new file mode 100644
index 000000000000..3fc81aa7674e
--- /dev/null
+++ b/games/xsokoban/distinfo
@@ -0,0 +1 @@
+MD5 (xsokoban-3.3b.tar.gz) = 205c84dcf001d049b3d29ea0778f0f8a
diff --git a/games/xsokoban/files/patch-aa b/games/xsokoban/files/patch-aa
new file mode 100644
index 000000000000..89bc7c5a4fc1
--- /dev/null
+++ b/games/xsokoban/files/patch-aa
@@ -0,0 +1,20 @@
+*** Imakefile.org Sun Nov 17 15:36:02 1996
+--- Imakefile Sun Nov 17 15:36:36 1996
+***************
+*** 1,7 ****
+ DEFINES= -DNDEBUG
+! EXTRA_INCLUDES= -I/usr/local/include
+
+! SYS_LIBRARIES= -L/usr/local/lib -lXpm $(XLIB)
+ # -lXpm is only needed if you are using Xpm.
+
+ SRCS= display.c main.c resources.c play.c score.c screen.c \
+--- 1,8 ----
+ DEFINES= -DNDEBUG
+! EXTRA_INCLUDES= -I/usr/local/include -I/usr/X11R6/include/X11 \
+! -I/usr/X11R6/include
+
+! SYS_LIBRARIES= -L/usr/local/lib -L/usr/X11R6/lib -lXpm $(XLIB)
+ # -lXpm is only needed if you are using Xpm.
+
+ SRCS= display.c main.c resources.c play.c score.c screen.c \
diff --git a/games/xsokoban/files/patch-ab b/games/xsokoban/files/patch-ab
new file mode 100644
index 000000000000..395b4a0875cf
--- /dev/null
+++ b/games/xsokoban/files/patch-ab
@@ -0,0 +1,53 @@
+*** config.h.orig Tue Aug 27 21:41:47 1996
+--- config.h Mon Nov 18 18:25:14 1996
+***************
+*** 30,36 ****
+ variable in the installed version, but you know best...
+ */
+ #ifndef ROOTDIR
+! #define ROOTDIR "."
+ #endif
+
+ /*
+--- 30,36 ----
+ variable in the installed version, but you know best...
+ */
+ #ifndef ROOTDIR
+! #define ROOTDIR "/usr/X11R6/lib/X11/xsokoban"
+ #endif
+
+ /*
+***************
+*** 95,101 ****
+ OWNER: defines the name of the local game owner.
+ */
+ #ifndef OWNER
+! #define OWNER "andru"
+ #endif
+
+ /*
+--- 95,101 ----
+ OWNER: defines the name of the local game owner.
+ */
+ #ifndef OWNER
+! #define OWNER "root"
+ #endif
+
+ /*
+***************
+*** 147,153 ****
+ */
+
+ #ifndef WWW
+! #define WWW 1
+ #endif
+
+ #define DEBUG_SERVER(x)
+--- 147,153 ----
+ */
+
+ #ifndef WWW
+! #define WWW 0
+ #endif
+
+ #define DEBUG_SERVER(x)
diff --git a/games/xsokoban/files/patch-ac b/games/xsokoban/files/patch-ac
new file mode 100644
index 000000000000..94787997e3ec
--- /dev/null
+++ b/games/xsokoban/files/patch-ac
@@ -0,0 +1,19 @@
+*** config_local.h.orig Sun Apr 16 00:50:16 1995
+--- config_local.h Mon Nov 18 18:33:14 1996
+***************
+*** 61,67 ****
+ #define LOCALTIME_PROTO 1
+
+ /* Is there a nl_langinfo() call? */
+! #define HAVE_NL_LANGINFO 1
+
+ /* Is there a working <sys/param.h> */
+ #define HAVE_SYS_PARAM_H 1
+--- 61,67 ----
+ #define LOCALTIME_PROTO 1
+
+ /* Is there a nl_langinfo() call? */
+! #undef HAVE_NL_LANGINFO
+
+ /* Is there a working <sys/param.h> */
+ #define HAVE_SYS_PARAM_H 1
diff --git a/games/xsokoban/pkg-comment b/games/xsokoban/pkg-comment
new file mode 100644
index 000000000000..a0d6cb077082
--- /dev/null
+++ b/games/xsokoban/pkg-comment
@@ -0,0 +1 @@
+a puzzle of pushing objects to the goals.
diff --git a/games/xsokoban/pkg-descr b/games/xsokoban/pkg-descr
new file mode 100644
index 000000000000..c63c5f5c217d
--- /dev/null
+++ b/games/xsokoban/pkg-descr
@@ -0,0 +1,102 @@
+XSokoban is a puzzle of pushing objects. This is the X-Window version of
+'Sokoban', developed in Japan.
+
+Usage:
+ xsokoban [ -s -r -c -nn -display <disp> {-w | -walls} {-rv
+ | -reverse} {-f | -font} <fn> {-b | -bitdir} <path> {-fg |
+ -foregound} <color> {-bg | -backgound} <color> {-bd |
+ -border} <color> {-pr | -pointer} <color> -xrm <arg> ]
+
+Description:
+
+ The goal of xsokoban is to push all the round objects into
+ the score area of each level using the mouse or the arrow
+ keys. The arrow keys move the player in the corresponding
+ direction, pushing an object if it is in the way and there
+ is a clear space on the other side. The mouse buttons each
+ have a distinct function.
+
+ If the left mouse button is pressed on a clear square, the
+ player will move to that location via the optimal path if
+ such a path exists; otherwise, the game will beep.
+
+ If the middle button is pressed on an object that is adja-
+ cent to the player, the object will be pushed one step.
+ If the middle mouse button is pressed on an empty space,
+ the player will move the closest object that is on a
+ straight line with the destination, such that the object
+ can be pushed in that direction, and the player is not
+ directly between the destination and the object. Before
+ pushing the object, the player is moved optimally to start
+ the push.
+
+ The right button mouse undoes the last user action, and
+ may be used any number of times.
+
+
+ The rest of the functions are bound to the keyboard:
+
+ ? Display a help screen.
+
+ q Quit the game.
+
+ s Save and quit.
+
+ u Undo the last action. Same as right mouse button.
+
+ U Restart a level.
+
+ ^R Redraw the screen.
+
+ h,j,k,l Act just like the arrow keys, as in vi.
+
+Options:
+
+ -s Show the scores
+
+ -c Create a new score file (can be ran only by the
+ owner of the game).
+
+ -r Restore a saved game.
+
+ -nn Start at level nn, provided that levels below it
+ are completed.
+
+ -display <display>
+ Run the game on named display.
+
+ {-w | -walls}
+ Use fancy walls. (This is the default unless an
+ option bitmap set is used)
+
+ {-rv | -reverse}
+ Use reverse video.
+
+ {-f | -font} <fontname>
+ Use the named font instead of the default 9x15
+ font.
+
+ {-b | -bitdir} <path>
+ Use the bitmaps found in <path> instead of the
+ defaults.
+
+ {-fg | -foreground} <color>
+ Use the named color as the foreground color.
+ (default is BlackPixel())
+
+ {-bg | -background} <color>
+ Use the named color as the background color.
+ (default is WhitePixel())
+
+ {-bd | -border} <color>
+ Use the named color as the border color. (default
+ is foreground color)
+
+ {-pr | -pointer} <color>
+ Use the named color as the mouse pointer fore-
+ ground. (default is foreground)
+
+ -xrm <arg>
+ <arg> is an X Resource specification.
+
+Yukihiro Nakai<Nakai@Mlab.t.u-tokyo.ac.jp>
diff --git a/games/xsokoban/pkg-plist b/games/xsokoban/pkg-plist
new file mode 100644
index 000000000000..4068370d52c0
--- /dev/null
+++ b/games/xsokoban/pkg-plist
@@ -0,0 +1,138 @@
+bin/xsokoban
+man/man1/xsokoban.1.gz
+lib/X11/xsokoban/bitmaps/defaults/centerwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/centerwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/east_twall.xbm
+lib/X11/xsokoban/bitmaps/defaults/east_twall.xpm
+lib/X11/xsokoban/bitmaps/defaults/eastwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/eastwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/floor.xbm
+lib/X11/xsokoban/bitmaps/defaults/floor.xpm
+lib/X11/xsokoban/bitmaps/defaults/goal.xbm
+lib/X11/xsokoban/bitmaps/defaults/goal.xpm
+lib/X11/xsokoban/bitmaps/defaults/horizwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/horizwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/llcornerwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/llcornerwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/lonewall.xbm
+lib/X11/xsokoban/bitmaps/defaults/lonewall.xpm
+lib/X11/xsokoban/bitmaps/defaults/lrcornerwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/lrcornerwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/man.xbm
+lib/X11/xsokoban/bitmaps/defaults/man.xpm
+lib/X11/xsokoban/bitmaps/defaults/north_twall.xbm
+lib/X11/xsokoban/bitmaps/defaults/north_twall.xpm
+lib/X11/xsokoban/bitmaps/defaults/northwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/northwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/object.xbm
+lib/X11/xsokoban/bitmaps/defaults/object.xpm
+lib/X11/xsokoban/bitmaps/defaults/saveman.xbm
+lib/X11/xsokoban/bitmaps/defaults/saveman.xpm
+lib/X11/xsokoban/bitmaps/defaults/south_twall.xbm
+lib/X11/xsokoban/bitmaps/defaults/south_twall.xpm
+lib/X11/xsokoban/bitmaps/defaults/southwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/southwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/treasure.xbm
+lib/X11/xsokoban/bitmaps/defaults/treasure.xpm
+lib/X11/xsokoban/bitmaps/defaults/ulcornerwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/ulcornerwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/urcornerwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/urcornerwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/vertiwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/vertiwall.xpm
+lib/X11/xsokoban/bitmaps/defaults/wall.xbm
+lib/X11/xsokoban/bitmaps/defaults/wall.xpm
+lib/X11/xsokoban/bitmaps/defaults/west_twall.xbm
+lib/X11/xsokoban/bitmaps/defaults/west_twall.xpm
+lib/X11/xsokoban/bitmaps/defaults/westwall.xbm
+lib/X11/xsokoban/bitmaps/defaults/westwall.xpm
+lib/X11/xsokoban/screens/screen.1
+lib/X11/xsokoban/screens/screen.10
+lib/X11/xsokoban/screens/screen.11
+lib/X11/xsokoban/screens/screen.12
+lib/X11/xsokoban/screens/screen.13
+lib/X11/xsokoban/screens/screen.14
+lib/X11/xsokoban/screens/screen.15
+lib/X11/xsokoban/screens/screen.16
+lib/X11/xsokoban/screens/screen.17
+lib/X11/xsokoban/screens/screen.18
+lib/X11/xsokoban/screens/screen.19
+lib/X11/xsokoban/screens/screen.2
+lib/X11/xsokoban/screens/screen.20
+lib/X11/xsokoban/screens/screen.21
+lib/X11/xsokoban/screens/screen.22
+lib/X11/xsokoban/screens/screen.23
+lib/X11/xsokoban/screens/screen.24
+lib/X11/xsokoban/screens/screen.25
+lib/X11/xsokoban/screens/screen.26
+lib/X11/xsokoban/screens/screen.27
+lib/X11/xsokoban/screens/screen.28
+lib/X11/xsokoban/screens/screen.29
+lib/X11/xsokoban/screens/screen.3
+lib/X11/xsokoban/screens/screen.30
+lib/X11/xsokoban/screens/screen.31
+lib/X11/xsokoban/screens/screen.32
+lib/X11/xsokoban/screens/screen.33
+lib/X11/xsokoban/screens/screen.34
+lib/X11/xsokoban/screens/screen.35
+lib/X11/xsokoban/screens/screen.36
+lib/X11/xsokoban/screens/screen.37
+lib/X11/xsokoban/screens/screen.38
+lib/X11/xsokoban/screens/screen.39
+lib/X11/xsokoban/screens/screen.4
+lib/X11/xsokoban/screens/screen.40
+lib/X11/xsokoban/screens/screen.41
+lib/X11/xsokoban/screens/screen.42
+lib/X11/xsokoban/screens/screen.43
+lib/X11/xsokoban/screens/screen.44
+lib/X11/xsokoban/screens/screen.45
+lib/X11/xsokoban/screens/screen.46
+lib/X11/xsokoban/screens/screen.47
+lib/X11/xsokoban/screens/screen.48
+lib/X11/xsokoban/screens/screen.49
+lib/X11/xsokoban/screens/screen.5
+lib/X11/xsokoban/screens/screen.50
+lib/X11/xsokoban/screens/screen.51
+lib/X11/xsokoban/screens/screen.52
+lib/X11/xsokoban/screens/screen.53
+lib/X11/xsokoban/screens/screen.54
+lib/X11/xsokoban/screens/screen.55
+lib/X11/xsokoban/screens/screen.56
+lib/X11/xsokoban/screens/screen.57
+lib/X11/xsokoban/screens/screen.58
+lib/X11/xsokoban/screens/screen.59
+lib/X11/xsokoban/screens/screen.6
+lib/X11/xsokoban/screens/screen.60
+lib/X11/xsokoban/screens/screen.61
+lib/X11/xsokoban/screens/screen.62
+lib/X11/xsokoban/screens/screen.63
+lib/X11/xsokoban/screens/screen.64
+lib/X11/xsokoban/screens/screen.65
+lib/X11/xsokoban/screens/screen.66
+lib/X11/xsokoban/screens/screen.67
+lib/X11/xsokoban/screens/screen.68
+lib/X11/xsokoban/screens/screen.69
+lib/X11/xsokoban/screens/screen.7
+lib/X11/xsokoban/screens/screen.70
+lib/X11/xsokoban/screens/screen.71
+lib/X11/xsokoban/screens/screen.72
+lib/X11/xsokoban/screens/screen.73
+lib/X11/xsokoban/screens/screen.74
+lib/X11/xsokoban/screens/screen.75
+lib/X11/xsokoban/screens/screen.76
+lib/X11/xsokoban/screens/screen.77
+lib/X11/xsokoban/screens/screen.78
+lib/X11/xsokoban/screens/screen.79
+lib/X11/xsokoban/screens/screen.8
+lib/X11/xsokoban/screens/screen.80
+lib/X11/xsokoban/screens/screen.81
+lib/X11/xsokoban/screens/screen.82
+lib/X11/xsokoban/screens/screen.83
+lib/X11/xsokoban/screens/screen.84
+lib/X11/xsokoban/screens/screen.85
+lib/X11/xsokoban/screens/screen.86
+lib/X11/xsokoban/screens/screen.87
+lib/X11/xsokoban/screens/screen.88
+lib/X11/xsokoban/screens/screen.89
+lib/X11/xsokoban/screens/screen.9
+lib/X11/xsokoban/screens/screen.90