aboutsummaryrefslogtreecommitdiff
path: root/games/ds-models
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2012-05-13 09:05:35 -0400
committerdsomero <xgizzmo@slackbuilds.org>2012-05-13 09:05:35 -0400
commit79e444d58e10561a144653909b1c6ffb51f1a30d (patch)
tree580d84e7f0949f343e2858f0df109db27b5cb7b9 /games/ds-models
parent8c36346f47098579bb6942f60e8f5ac32832a900 (diff)
games/ds-models: Added (3D model packs for gzdoom and skulltag)
Signed-off-by: dsomero <xgizzmo@slackbuilds.org>
Diffstat (limited to 'games/ds-models')
-rw-r--r--games/ds-models/README30
-rw-r--r--games/ds-models/ds-gzdoom3
-rw-r--r--games/ds-models/ds-models.SlackBuild114
-rw-r--r--games/ds-models/ds-models.info10
-rw-r--r--games/ds-models/ds-skulltag3
-rw-r--r--games/ds-models/slack-desc19
-rw-r--r--games/ds-models/svn2targz.sh9
7 files changed, 188 insertions, 0 deletions
diff --git a/games/ds-models/README b/games/ds-models/README
new file mode 100644
index 0000000000000..58b159f3f27b2
--- /dev/null
+++ b/games/ds-models/README
@@ -0,0 +1,30 @@
+ds-models (3D model packs for gzdoom and skulltag)
+
+ds-models allows playing Doom, Heretic, and Hexen with OpenGL and 3D
+models, which gives it a much more modern look.
+
+This model set is released by -=Dark-Assassin=- on the
+SkullTag forum. For more information, see the forum thread at
+http://www.skulltag.com/forum/viewtopic.php?f=13&t=24238
+
+If you never plan to use models with skulltag, passing SKULLTAG=no to
+the build script will omit the skulltag-specific models. The resulting
+package with be approximately 30% smaller. There's also a GZDOOM=no
+option, but it won't make the package smaller (skulltag still requires
+the gzdoom models, so they'll still be included).
+
+This includes scripts "dm-gzdoom" and "dm-skulltag" for starting gzdoom
+or skulltag with the models preloaded.
+
+To make gzdoom or skulltag always use the models, edit ~/.gzdoom/zdoom.ini
+and/or ~/.skulltag/skulltag.ini and add the following lines under the
+[Global.Autoload] marker:
+
+# for both gzdoom and skulltag:
+Path=/usr/share/games/doom/GZ-Models.pk3
+
+# for skulltag only, also add:
+Path=/usr/share/games/doom/ST-Models.pk3
+
+Note that the models will only be displayed if gzdoom/skulltag is using
+the OpenGL renderer (Options | Display Options in the in-game menu).
diff --git a/games/ds-models/ds-gzdoom b/games/ds-models/ds-gzdoom
new file mode 100644
index 0000000000000..52325bc37232c
--- /dev/null
+++ b/games/ds-models/ds-gzdoom
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+exec gzdoom -file /usr/share/games/doom/GZ-Models.pk3 "$@"
diff --git a/games/ds-models/ds-models.SlackBuild b/games/ds-models/ds-models.SlackBuild
new file mode 100644
index 0000000000000..271a1f7fa94a6
--- /dev/null
+++ b/games/ds-models/ds-models.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# Slackware build script for ds-models
+
+# Written by B. Watson (yalhcru@gmail.com)
+
+PRGNAM=ds-models
+VERSION=${VERSION:-r14}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+ARCH=noarch
+
+# Which game(s) to support?
+SKULLTAG=${SKULLTAG:-yes}
+GZDOOM=${GZDOOM:-yes}
+
+if [ "$SKULLTAG" != "yes" -a "$GZDOOM" != "yes" ]; then
+ echo "You've set both SKULLTAG=no and GZDOOM=no; nothing to package."
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG/usr/{share/games/doom,bin,doc/$PRGNAM-$VERSION} $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \;
+
+# The only script provided upstream is for skulltag + gzdoom in one pk3, which
+# will only work with skulltag. So we build our own individual skulltag and
+# gzdoom packages. Script code based on Build-ST-Complete.sh
+
+# gzdoom. Note that skulltag needs these too, so GZDOOM=no just means we
+# don't install the ds-gzdoom wrapper script.
+mkdir -p work/Models
+
+for DEF_FILE in \
+ $(find ./GZ-Models/Build -maxdepth 2 -type f -name "*.def")
+do
+ cp ${DEF_FILE} work
+done
+
+for MODEL_DIR in \
+ $(find $(pwd)/GZ-Models/Build -maxdepth 2 -mindepth 2 -type d)
+do
+ cp -R ${MODEL_DIR} work/Models/
+done
+
+cp -R GZ-Models/Build/Hires work
+cd work
+ zip -r $PKG/usr/share/games/doom/GZ-Models.pk3 ./*.def ./Hires ./Models
+cd -
+rm -rf work
+
+if [ "$GZDOOM" = "yes" ]; then
+ install -m0755 $CWD/ds-gzdoom $PKG/usr/bin
+fi
+
+# ST-Models
+if [ "$SKULLTAG" = "yes" ]; then
+ mkdir -p work/Models
+
+ for DEF_FILE in \
+ $(find ST-Models/Build -maxdepth 2 -type f -name "*.def")
+ do
+ cp ${DEF_FILE} work
+ done
+
+ for MODEL_DIR in \
+ $(find ST-Models/Build -maxdepth 2 -mindepth 2 -type d)
+ do
+ cp -R ${MODEL_DIR} work/Models/
+ done
+
+ cd work
+ zip -r $PKG/usr/share/games/doom/ST-Models.pk3 ./*.def ./Models
+ cd -
+
+ rm -rf work
+ install -m0755 $CWD/ds-skulltag $PKG/usr/bin
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Readme.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Modify the slack-desc to reflect reality:
+if [ "$SKULLTAG" != "yes" ]; then
+ GAME="gzdoom only"
+elif [ "$GZDOOM" != "yes" ]; then
+ GAME="skulltag only"
+else
+ GAME="skulltag and gzdoom"
+fi
+
+mkdir -p $PKG/install
+sed "s/@GAME@/$GAME/" $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/ds-models/ds-models.info b/games/ds-models/ds-models.info
new file mode 100644
index 0000000000000..ef2edf4dd2b55
--- /dev/null
+++ b/games/ds-models/ds-models.info
@@ -0,0 +1,10 @@
+PRGNAM="ds-models"
+VERSION="r14"
+HOMEPAGE="http://code.google.com/p/ds-models/source/browse/"
+DOWNLOAD="http://urchlay.naptime.net/~urchlay/src/ds-models-r14.tar.gz"
+DOWNLOAD_x86_64=""
+MD5SUM="e1f661b810abc10400ae96cb8cc82404"
+MD5SUM_x86_64=""
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
+APPROVED="dsomero"
diff --git a/games/ds-models/ds-skulltag b/games/ds-models/ds-skulltag
new file mode 100644
index 0000000000000..5ae0adcec78a7
--- /dev/null
+++ b/games/ds-models/ds-skulltag
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+exec skulltag -file /usr/share/games/doom/GZ-Models.pk3 -file /usr/share/games/doom/ST-Models.pk3 "$@"
diff --git a/games/ds-models/slack-desc b/games/ds-models/slack-desc
new file mode 100644
index 0000000000000..e8de84c8ca4bc
--- /dev/null
+++ b/games/ds-models/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+ds-models: ds-models (3D model packs for gzdoom and skulltag)
+ds-models:
+ds-models: ds-models allows playing Doom, Heretic, and Hexen with OpenGL and 3D
+ds-models: models, which gives it a much more modern look.
+ds-models:
+ds-models: This model set is released by -=Dark-Assassin=- on the
+ds-models: SkullTag forum. For more information, see the forum thread at
+ds-models: http://www.skulltag.com/forum/viewtopic.php?f=13&t=24238
+ds-models:
+ds-models: This package built with support for @GAME@.
+ds-models:
diff --git a/games/ds-models/svn2targz.sh b/games/ds-models/svn2targz.sh
new file mode 100644
index 0000000000000..4530ebc274136
--- /dev/null
+++ b/games/ds-models/svn2targz.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+PRGNAM=ds-models
+VERSION=14
+REPO=http://ds-models.googlecode.com/svn/trunk/
+
+rm -rf $PRGNAM-r$VERSION
+svn export -r$VERSION $REPO $PRGNAM-r$VERSION
+tar cvfz $PRGNAM-r$VERSION.tar.gz $PRGNAM-r$VERSION