#!/bin/sh

if [ -x /usr/share/games/game-data-packager-runtime/gdp_launcher_base.py ]; then
  exec /usr/share/games/game-data-packager-runtime/gdp_launcher_base.py --id=openjkded "$@"
fi

IOQ3SELF="openjkded"
IOQ3GAME="Jedi Academy"
IOQ3ROLE="server"
IOQ3BINARY="openjkded"

BASEPATH="/usr/lib/openjk/JediAcademy"
ENGINE="$BASEPATH/${IOQ3BINARY}"

QUIET=0

EXCUSE="\
${IOQ3GAME} ${IOQ3ROLE} wrapper for Debian\n\
\n\
Usage: ${IOQ3SELF} [OPTION]...\n\
\n\
 -h, --help\t\tDisplay this help\n\
 -q, --quiet\t\tDisable console output\n\
  +<internal command>\tPass commands to the engine\n"

while [ "$1" != "" ]; do
  case "$1" in
    -h|--help)
      echo ${EXCUSE}
      exit 0
      ;;
    -q|--quiet)
      CVARS="$CVARS +set ttycon 0"
      QUIET=1
      ;;
    *)
      break
      ;;
  esac
  shift
done

# sanity check: the engine doesn't cope well with missing data
if test -f $BASEPATH/base/assets1.pk3; then
  :
else
  echo "${IOQ3GAME} data missing, see ${BASEPATH}/README.jedi-academy-data"
  exit 72     # EX_OSFILE
fi

if test "z$QUIET" = z1; then
  exec >/dev/null 2>&1;
fi

# So that switching SP <-> MP will work
cd $BASEPATH

if test -n "$OPENJK_BACKTRACE"; then
  exec gdb -return-child-result -batch -ex run -ex 'thread apply all bt full' -ex kill -ex quit --args ${ENGINE} ${CVARS} "$@"
else
  exec ${OPENJK_DEBUGGER} ${ENGINE} ${CVARS} "$@"
fi
# vim:set sw=2 sts=2 ft=sh:
