import xbomber 0.8

X-Bomber is a multiplayer game for the X-Window system.  The concept is
loosely based on the game "Super Bomberman" for the Super Nintendo
game system.

feedback and ok simon@
This commit is contained in:
jasper 2007-03-21 10:28:50 +00:00
parent e2c268cedd
commit a32ddd4d89
6 changed files with 444 additions and 0 deletions

38
games/xbomber/Makefile Normal file
View File

@ -0,0 +1,38 @@
# $OpenBSD: Makefile,v 1.1.1.1 2007/03/21 10:28:50 jasper Exp $
COMMENT= "colorful game where you blow other people/robots up"
VERSION= 0.8
DISTNAME= xbomber.${VERSION}
PKGNAME= xbomber-${VERSION}
CATEGORIES= games x11
HOMEPAGE= http://www.newbreedsoftware.com/xbomber/
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB= X11 c m
MASTER_SITES= ftp://ftp.billsgames.com/unix/x/xbomber/
USE_X11= Yes
WRKDIST= ${WRKDIR}/xbomber
MAKE_FILE= makefile
post-extract:
@rm ${WRKSRC}/xbomber
post-patch:
@perl -pi -e 's,!!CFLAGS!!,${CFLAGS},' ${WRKSRC}/${MAKE_FILE}
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/xbomber ${PREFIX}/bin
${INSTALL_DATA_DIR} ${PREFIX}/share/xbomber
cd ${WRKSRC}; tar cf - bitmaps pixmaps levels sounds jungle | \
tar xf - -C ${PREFIX}/share/xbomber
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/xbomber
${INSTALL_DATA} ${WRKSRC}/*.txt ${PREFIX}/share/doc/xbomber
.include <bsd.port.mk>

4
games/xbomber/distinfo Normal file
View File

@ -0,0 +1,4 @@
MD5 (xbomber.0.8.tar.gz) = c17b5dda0241d29ea4644b2906985716
RMD160 (xbomber.0.8.tar.gz) = 5fd68d1c7376d3c510f2f04680d379b32462746d
SHA1 (xbomber.0.8.tar.gz) = 1146d1cc9d10f1115f650ad20bf4fd9e77cf2b8b
SIZE (xbomber.0.8.tar.gz) = 241168

View File

@ -0,0 +1,46 @@
$OpenBSD: patch-makefile,v 1.1.1.1 2007/03/21 10:28:50 jasper Exp $
--- makefile.orig Fri Jun 19 05:28:34 1998
+++ makefile Tue Mar 20 21:07:11 2007
@@ -11,15 +11,18 @@
# Makefile user-definable variables------------------------------------------
-CC=gcc
+SOUNDS= $(PREFIX)/share/xbomber/sounds
+PIXMAPS= $(PREFIX)/share/xbomber/pixmap
+LEVELS= $(PREFIX)/share/xbomber/levels
+BITMAPS= $(PREFIX)/share/xbomber/bitmaps
MATHLIB=-lm
-CFLAGS=-I/usr/X11/include
+CFLAGS= -O2 -pipe -I$(X11BASE)/include -DSOUNDS=\"$(SOUNDS)\" -DPIXMAPS=\"$(PIXMAPS)\" -DLEVELS=\"$(LEVELS)\" -DBITMAPS=\"$(BITMAPS)\"
# Change this to "touch" if your system doesn't have the "strip" command:
POSTPROCESS=strip
# adjust according to target
-XLIB=-L/usr/X11/lib -lX11
+XLIB=-L$(PREFIX)/lib -L$(X11BASE)/lib -lX11
# uncomment for sunos/solaris
#XLIB=-L/usr/openwin/lib -lX11
@@ -39,10 +42,6 @@ OBJECTS=xbomber.o window.o connect.o hin
# Makefile commands:
all: xbomber
- chmod 755 sounds bitmaps pixmaps sounds/numbers levels
- chmod 644 *.c *.h makefile sounds/*.au *.txt \
- bitmaps/*.xbm pixmaps/*.ppm \
- sounds/numbers/*.au levels/*.dat
clean:
rm *.o
@@ -52,9 +51,6 @@ clean:
xbomber: $(OBJECTS)
$(CC) $(OBJECTS) $(XLIB) $(MATHLIB) $(CFLAGS) -o xbomber
- chmod 755 xbomber
- $(POSTPROCESS) xbomber
-
# Application objects:

View File

@ -0,0 +1,121 @@
$OpenBSD: patch-xbomber_c,v 1.1.1.1 2007/03/21 10:28:50 jasper Exp $
--- xbomber.c.orig Sat Jun 20 04:09:35 1998
+++ xbomber.c Tue Mar 20 21:07:51 2007
@@ -1599,7 +1599,7 @@ void setup(int argc, char * argv[])
/* Get -color switch: */
use_color = 0;
- strcpy(graphicsset, "./pixmaps");
+ strcpy(graphicsset, PIXMAPS);
if (argc >= 2)
{
@@ -1683,7 +1683,7 @@ void setup(int argc, char * argv[])
for (i = 0; i < NUM_SOUNDS; i++)
{
- sprintf(file, "sounds/%s.au", sound_names[i]);
+ sprintf(file, "%s/%s.au", SOUNDS, sound_names[i]);
fi = fopen(file, "r");
if (fi != NULL)
@@ -1720,7 +1720,7 @@ void setup(int argc, char * argv[])
for (i = 0; i < NUM_NSOUNDS; i++)
{
- sprintf(file, "sounds/numbers/%s.au", nsound_names[i]);
+ sprintf(file, "%s/numbers/%s.au", SOUNDS, nsound_names[i]);
fi = fopen(file, "r");
if (fi != NULL)
@@ -2068,7 +2068,7 @@ void Xsetup_windows(int pln)
void Xsetup(int pln)
{
int i, tempint1, tempint2, tempint3, tempint4, ret;
- char file[128];
+ char temp[128];
int status, temp_depth;
FILE * fi;
XGCValues gcvalues;
@@ -2095,24 +2095,27 @@ void Xsetup(int pln)
/* Make cursor: */
-
- ret = XReadBitmapFile(display[pln], window[pln], "bitmaps/cursor.xbm",
+
+ sprintf(temp,"%s/cursor.xbm",BITMAPS);
+ ret = XReadBitmapFile(display[pln], window[pln], temp,
&tempint1, &tempint2, &cursor_pixmap[pln],
&tempint3, &tempint4);
if (ret != BitmapSuccess)
{
- perror("bitmaps/cursor.xbm");
+ perror(temp);
exit(1);
}
- ret = XReadBitmapFile(display[pln], window[pln], "bitmaps/cursor-mask.xbm",
+ sprintf(temp,"%s/cursor-mask.xbm",BITMAPS);
+ printf("temp=%s\n", temp);
+ ret = XReadBitmapFile(display[pln], window[pln], temp,
&tempint1, &tempint2, &cursor_mask[pln],
&tempint3, &tempint4);
if (ret != BitmapSuccess)
{
- perror("bitmaps/cursor-mask.xbm");
+ perror(temp);
exit(1);
}
@@ -2149,16 +2152,16 @@ void Xsetup(int pln)
black[pln],
has_color[pln]));
- sprintf(file, "bitmaps/%s.xbm", object_names[i]);
+ sprintf(temp, "%s/%s.xbm", BITMAPS, object_names[i]);
- ret = XReadBitmapFile(display[pln], window[pln], file,
+ ret = XReadBitmapFile(display[pln], window[pln], temp,
&tempint1, &tempint2,
&object_pixmaps[pln][i],
&tempint3, &tempint4);
if (ret != BitmapSuccess)
{
- perror(file);
+ perror(temp);
exit(1);
}
}
@@ -2863,7 +2866,7 @@ void initlevel(void)
/* Load level layout on top of this: */
- sprintf(filename, "levels/level%.2d.dat", level);
+ sprintf(filename, "%s/level%.2d.dat", LEVELS, level);
fi = fopen(filename, "r");
if (fi == NULL)
@@ -3293,7 +3296,7 @@ void loadobject(int pln, int i)
if (strlen(graphicsset) != 0)
{
- sprintf(file, "%s/%s.ppm", graphicsset, object_names[i]);
+ sprintf(file, "%s/%s/%s.ppm",PIXMAPS, graphicsset, object_names[i]);
fi = fopen(file, "r");
c = graphicsset[0];
@@ -3302,8 +3305,8 @@ void loadobject(int pln, int i)
if (fi == NULL)
{
c = '.';
-
- sprintf(file, "pixmaps/%s.ppm", object_names[i]);
+
+ sprintf(file, "%s/%s.ppm",PIXMAPS, object_names[i]);
fi = fopen(file, "r");
if (fi == NULL)

6
games/xbomber/pkg/DESCR Normal file
View File

@ -0,0 +1,6 @@
X-Bomber is a multiplayer game for the X-Window system. The concept is
loosely based on the game "Super Bomberman" for the Super Nintendo
game system.
Up to four players can play simultaneously. The game runs as one client
which connects to multiple X displays (servers).

229
games/xbomber/pkg/PLIST Normal file
View File

@ -0,0 +1,229 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2007/03/21 10:28:50 jasper Exp $
bin/xbomber
share/doc/xbomber/
share/doc/xbomber/GRAPHICS.txt
share/doc/xbomber/LEVELS.txt
share/doc/xbomber/README.txt
share/doc/xbomber/SOUND.txt
share/xbomber/
share/xbomber/bitmaps/
share/xbomber/bitmaps/block.xbm
share/xbomber/bitmaps/block2.xbm
share/xbomber/bitmaps/bomb.xbm
share/xbomber/bitmaps/bones.xbm
share/xbomber/bitmaps/box.xbm
share/xbomber/bitmaps/cursor-mask.xbm
share/xbomber/bitmaps/cursor.xbm
share/xbomber/bitmaps/death.xbm
share/xbomber/bitmaps/death_eating.xbm
share/xbomber/bitmaps/dirt.xbm
share/xbomber/bitmaps/explosion1.xbm
share/xbomber/bitmaps/explosion2.xbm
share/xbomber/bitmaps/invert.xbm
share/xbomber/bitmaps/invisible.xbm
share/xbomber/bitmaps/kicker.xbm
share/xbomber/bitmaps/man_down.xbm
share/xbomber/bitmaps/man_left.xbm
share/xbomber/bitmaps/man_right.xbm
share/xbomber/bitmaps/man_up.xbm
share/xbomber/bitmaps/morebomb.xbm
share/xbomber/bitmaps/morefire.xbm
share/xbomber/bitmaps/mushroom.xbm
share/xbomber/bitmaps/nuke.xbm
share/xbomber/bitmaps/pusher.xbm
share/xbomber/bitmaps/radio_bomb.xbm
share/xbomber/bitmaps/radioupgrade.xbm
share/xbomber/bitmaps/shield.xbm
share/xbomber/bitmaps/title.xbm
share/xbomber/bitmaps/tnt.xbm
share/xbomber/bitmaps/totalfire.xbm
share/xbomber/bitmaps/warp.xbm
share/xbomber/jungle/
share/xbomber/jungle/block.ppm
share/xbomber/jungle/block2.ppm
share/xbomber/jungle/checker_dirt1.ppm
share/xbomber/jungle/checker_dirt2.ppm
share/xbomber/jungle/cross_dirt.ppm
share/xbomber/jungle/death.ppm
share/xbomber/jungle/death_eating.ppm
share/xbomber/jungle/dirt.ppm
share/xbomber/levels/
share/xbomber/levels/level00.dat
share/xbomber/levels/level01.dat
share/xbomber/levels/level02.dat
share/xbomber/levels/level03.dat
share/xbomber/levels/level04.dat
share/xbomber/levels/level05.dat
share/xbomber/levels/level06.dat
share/xbomber/levels/level07.dat
share/xbomber/levels/level08.dat
share/xbomber/levels/level09.dat
share/xbomber/levels/level10.dat
share/xbomber/levels/level11.dat
share/xbomber/levels/level12.dat
share/xbomber/levels/level13.dat
share/xbomber/levels/level14.dat
share/xbomber/levels/level15.dat
share/xbomber/levels/level16.dat
share/xbomber/levels/level17.dat
share/xbomber/levels/level18.dat
share/xbomber/levels/level19.dat
share/xbomber/levels/level20.dat
share/xbomber/levels/level21.dat
share/xbomber/levels/level22.dat
share/xbomber/levels/level23.dat
share/xbomber/levels/level24.dat
share/xbomber/levels/level25.dat
share/xbomber/levels/level26.dat
share/xbomber/levels/level27.dat
share/xbomber/levels/level28.dat
share/xbomber/levels/level29.dat
share/xbomber/levels/level30.dat
share/xbomber/levels/level31.dat
share/xbomber/levels/level32.dat
share/xbomber/levels/level33.dat
share/xbomber/levels/level34.dat
share/xbomber/levels/level35.dat
share/xbomber/levels/level36.dat
share/xbomber/levels/level37.dat
share/xbomber/levels/level38.dat
share/xbomber/levels/level39.dat
share/xbomber/levels/level40.dat
share/xbomber/levels/level41.dat
share/xbomber/levels/level42.dat
share/xbomber/levels/level43.dat
share/xbomber/levels/level44.dat
share/xbomber/levels/level45.dat
share/xbomber/levels/level46.dat
share/xbomber/levels/level47.dat
share/xbomber/levels/level48.dat
share/xbomber/levels/level49.dat
share/xbomber/levels/level50.dat
share/xbomber/levels/level51.dat
share/xbomber/levels/level52.dat
share/xbomber/levels/level53.dat
share/xbomber/levels/level54.dat
share/xbomber/levels/level55.dat
share/xbomber/levels/level56.dat
share/xbomber/levels/level57.dat
share/xbomber/levels/level58.dat
share/xbomber/levels/level59.dat
share/xbomber/levels/level60.dat
share/xbomber/levels/level61.dat
share/xbomber/levels/level62.dat
share/xbomber/levels/level63.dat
share/xbomber/levels/level64.dat
share/xbomber/levels/level65.dat
share/xbomber/levels/level66.dat
share/xbomber/levels/level67.dat
share/xbomber/levels/level68.dat
share/xbomber/levels/level69.dat
share/xbomber/levels/level70.dat
share/xbomber/levels/level71.dat
share/xbomber/levels/level72.dat
share/xbomber/levels/level73.dat
share/xbomber/levels/level74.dat
share/xbomber/levels/level75.dat
share/xbomber/levels/level76.dat
share/xbomber/levels/level77.dat
share/xbomber/levels/level78.dat
share/xbomber/levels/level79.dat
share/xbomber/levels/level80.dat
share/xbomber/levels/level81.dat
share/xbomber/levels/level82.dat
share/xbomber/levels/level83.dat
share/xbomber/levels/level84.dat
share/xbomber/levels/level85.dat
share/xbomber/levels/level86.dat
share/xbomber/levels/level87.dat
share/xbomber/levels/level88.dat
share/xbomber/levels/level89.dat
share/xbomber/levels/level90.dat
share/xbomber/levels/level91.dat
share/xbomber/levels/level92.dat
share/xbomber/levels/level93.dat
share/xbomber/levels/level94.dat
share/xbomber/levels/level95.dat
share/xbomber/levels/level96.dat
share/xbomber/levels/level97.dat
share/xbomber/levels/level98.dat
share/xbomber/levels/level99.dat
share/xbomber/pixmaps/
share/xbomber/pixmaps/block.ppm
share/xbomber/pixmaps/block2.ppm
share/xbomber/pixmaps/bomb.ppm
share/xbomber/pixmaps/bones.ppm
share/xbomber/pixmaps/box.ppm
share/xbomber/pixmaps/checker_dirt1.ppm
share/xbomber/pixmaps/checker_dirt2.ppm
share/xbomber/pixmaps/cross_dirt.ppm
share/xbomber/pixmaps/death.ppm
share/xbomber/pixmaps/death_eating.ppm
share/xbomber/pixmaps/dirt.ppm
share/xbomber/pixmaps/explosion1.ppm
share/xbomber/pixmaps/explosion2.ppm
share/xbomber/pixmaps/invert.ppm
share/xbomber/pixmaps/invisible.ppm
share/xbomber/pixmaps/kicker.ppm
share/xbomber/pixmaps/man_down.ppm
share/xbomber/pixmaps/man_left.ppm
share/xbomber/pixmaps/man_right.ppm
share/xbomber/pixmaps/man_up.ppm
share/xbomber/pixmaps/morebomb.ppm
share/xbomber/pixmaps/morefire.ppm
share/xbomber/pixmaps/mushroom.ppm
share/xbomber/pixmaps/nuke.ppm
share/xbomber/pixmaps/pusher.ppm
share/xbomber/pixmaps/radio_bomb.ppm
share/xbomber/pixmaps/radioupgrade.ppm
share/xbomber/pixmaps/shield.ppm
share/xbomber/pixmaps/title.ppm
share/xbomber/pixmaps/tnt.ppm
share/xbomber/pixmaps/totalfire.ppm
share/xbomber/pixmaps/warp.ppm
share/xbomber/pixmaps/you_down.ppm
share/xbomber/pixmaps/you_left.ppm
share/xbomber/pixmaps/you_right.ppm
share/xbomber/pixmaps/you_up.ppm
share/xbomber/sounds/
share/xbomber/sounds/explode.au
share/xbomber/sounds/got.au
share/xbomber/sounds/invert.au
share/xbomber/sounds/kicker.au
share/xbomber/sounds/laugh.au
share/xbomber/sounds/levelend1.au
share/xbomber/sounds/levelend2.au
share/xbomber/sounds/levelend3.au
share/xbomber/sounds/levelend4.au
share/xbomber/sounds/numbers/
share/xbomber/sounds/numbers/1.au
share/xbomber/sounds/numbers/10.au
share/xbomber/sounds/numbers/11.au
share/xbomber/sounds/numbers/12.au
share/xbomber/sounds/numbers/13.au
share/xbomber/sounds/numbers/14.au
share/xbomber/sounds/numbers/15.au
share/xbomber/sounds/numbers/2.au
share/xbomber/sounds/numbers/20.au
share/xbomber/sounds/numbers/3.au
share/xbomber/sounds/numbers/30.au
share/xbomber/sounds/numbers/4.au
share/xbomber/sounds/numbers/40.au
share/xbomber/sounds/numbers/5.au
share/xbomber/sounds/numbers/50.au
share/xbomber/sounds/numbers/6.au
share/xbomber/sounds/numbers/60.au
share/xbomber/sounds/numbers/7.au
share/xbomber/sounds/numbers/70.au
share/xbomber/sounds/numbers/8.au
share/xbomber/sounds/numbers/80.au
share/xbomber/sounds/numbers/9.au
share/xbomber/sounds/numbers/90.au
share/xbomber/sounds/numbers/level.au
share/xbomber/sounds/numbers/teen.au
share/xbomber/sounds/old_laugh.au
share/xbomber/sounds/ouch1.au
share/xbomber/sounds/ouch2.au
share/xbomber/sounds/ouch3.au
share/xbomber/sounds/pusher.au
share/xbomber/sounds/warp.au