#!/bin/bash
# /etc/init.d/minecraft
# version 0.3.7 2012-03-06 (YYYY-MM-DD)

### BEGIN INIT INFO
# Provides:   pyredstone
# Required-Start: $local_fs $remote_fs
# Required-Stop:  $local_fs $remote_fs
# Should-Start:   $network
# Should-Stop:    $network
# Default-Start:  2 3 4 5
# Default-Stop:   0 1 6
# Short-Description:    PyRedstone API
# Description:    Starts the Minecraft PyRedstone API server
### END INIT INFO

# Variables
USERNAME="minecraft"
SERVICE={service}
CONFIG=/home/$USERNAME/minecraft/pyredstone.cfg

ME=$(whoami)
as_user() {
  if [ $ME == $USERNAME ] ; then
    bash -c "$1"
  else
    su - $USERNAME -c "$1"
  fi
}

start() {
	if [ -f /var/run/pyredstone/server.pid ]; then
		echo "Server already running."
	fi
	if [ ! -d /var/run/pyredstone/ ]; then
		mkdir /var/run/pyredstone
	fi
	python server.py --config $CONFIG
}
stop() {
	if [ -f /var/run/pyredstone/server.pid ]; then
		kill -9 $(cat /var/run/pyredstone/server.pid)
	else
		echo "Server is not running."
	fi
}
status() {
	if [ -f /var/run/pyredstone/server.pid ]; then
		echo "Server is running."
	else
		echo "Server is not running."
	fi
}

#Start-Stop here
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    stop
    start
    ;;
  status)
    status
    ;;
  *)
  echo "Usage: $0 {start|stop|status|restart}"
  exit 1
  ;;
esac

exit 0
