#!/bin/bash

NAME=`basename $0`
SERVERDIR=/local/home/afra/UT/Server_32
SYSTEMDIR=$SERVERDIR/System
SERVERINI="$SERVERDIR/Config/Server.ini"

TEST="0"

if [ $# -ne 0 ]
then
  CMD=$1
  
  case "$CMD" in
		tst)
			TEST="1"
			;;
		dryrun)
			DRYRUN="1"
			;;
		*)
			echo "error, invalid command!"
			echo "running with defaults"
			;;
	esac
fi

SERVERBIN="./ucc-bin"
#STARTMAP="CTF-Face.unr"
STARTMAP="DM-Abandonedv1final.unr"

# Mutators
MUTMAPVOTE="MVU3.BDBMapVote"
MUTGAUNTLET="GauntletAssaultFix.GauntletAssaultFix"
MUTEXU="ExuWeaponsLiteV4.EXUWeaponModifier,ExuWeaponsLiteV4.EXUReplace,ExuWeaponsLiteV4.DeemerToLRPC"
MUTGRAP="NDgencli5.ND_Mut,NDgrap49c.GrapMut,DoubleJumpUT.DoubleJumpUT"
MUTDAMAGE="NoSelfDamage.NoSelfDamage,RegenAmmo.RegenAmmo,NoImpactHammer.NoImpactHammer,MHPinata.Pinata"
MUTRELICS="GoRelics2.RelicDefense,GoRelics2.RelicSpeed,GoRelics2.RelicStrength,GoRelics2.RelicRedemption,GoRelics2.RelicDeath,GoRelics2.RelicInvulnerable,GoRelics2.RelicRadiation"
MUTUM="UM_RadarLight_Gauntlet_Beta1D2.Base"

#Server Params
PARAMS="TmpNextVirtualPrefix=EGCTF"

if [ "$TEST" == "1" ]; then
  GAMETYPE="BotPack.DeathMatchPlus"
  MUTATORS="MVU3.BDBMapVote"
  echo "Running test!"
else
  GAMETYPE="Gauntlet-10-BetaV4.GauntletDM"
  MUTATORS="$MUTMAPVOTE,$MUTGAUNTLET,$MUTEXU,$MUTGRAP,$MUTDAMAGE,$MUTRELICS,$MUTUM"
  echo "Running gauntlet"
fi

if [ -z "$MUTATORS" ]; then
  SERVERPARAMS=" server $STARTMAP?game=$GAMETYPE? ini=$SERVERINI log=ut.log -nohomedir"
else
  SERVERPARAMS=" server $STARTMAP?game=$GAMETYPE?mutator=$MUTATORS?$PARAMS ini=$SERVERINI log=ut.log -nohomedir" 
fi

echo $NAME

if [ "$DRYRUN" ] 
then
	echo "Dry run: "
	echo "$SERVERBIN $SERVERPARAMS"
	exit 0
fi

case "$NAME" in
	go)
		rm Logs/*
		cd $SYSTEMDIR
echo "$SERVERBIN $SERVERPARAMS"
		$SERVERBIN $SERVERPARAMS &
		;;
	stop)
		killall -9 ucc-bin
		;;
	*)
		echo "Error, must be called as 'go' or 'stop'"
		;;
esac
