#!/bin/bash#############################################################
#Minecraftserverautoupdatetool!#THISMUSTBERUNASROOTinROOTSCRONTAB##CrontabinfoforweeklychecksonWed3AM.#03**3/opt/minecraft/update_mc.sh#-Corry#############################################################
CPath=/opt/minecraft
JAVA="False"Current_Version=`ls${CPath}/server | grepminecraft_server`
printf "This script to to see if there is a newer version of MineCraft!!\n\nChecking to see what version is available from Minecraft website\n"MC_Version=`curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" https://www.minecraft.net/en-us/download/server | grep"minecraft_server" | awk -F'>''{print $NF}' | column -t`
if [ "${MC_Version}"!="${Current_Version}" ]
then
printf"Newer Version found...\nThe process will take roughly less than 2 of your earth minutes\nShutting down Minecraft\nChecking Java version... "date +'[%H:%M:%S] [Server thread/INFO]: <System Message> Newer Version found... The process will take roughly less than 2 of your earth minutes. Shutting down Minecraft.' >> ${CPATH}/server/logs/latest.log
sleep 10
systemctlstopminecraftprintf"Newer Version found...\nChecking Java... "
#update OpenJDKCurrentJDK=`aptlist | grep ^openjdk | cut -d- -f-2 | sort -u -V | tail -1`LatestJDK=`apt-cachesearchopenjdk | grep ^openjdk | cut -d- -f-2 | sort -u -V | tail -1`if [ "${LatestJDK}"!="${CurrentJDK}" ]
thenif [ "$JAVA"=="True" ]
thenapt-get -y install${LatestJDK}-jre${LatestJDK}-jdkelseprintf"Java update skipped"fifi
#update Minecraftrm${CPath}/server/${Current_Version} ${CPath}/server/server.jar
MCVersion=`curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" https://www.minecraft.net/en-us/download/server | grep'server.jar' | cut -d\" -f2`aptupdate
#download latestserverfromherewget $MCVersion -P ${CPath}/serversleep 30
chown minecraft:minecraft ${CPath}/serverln -s ${CPath}/server/server.jar ${CPath}/server/${MC_Version}
printf"Starting MineCraft updated version $MC_Version\n"systemctlstartminecrafteula=`tail -1 ${CPath}/server/eula.txt | cut -d= -f2`if [ "${eula}"=="false" ]
thenprintf"accepting EULA\n"sleep 10
systemctlstopminecraftsed -i 's/false/TRUE/g'${CPath}/server/eula.txt
sleep 10
systemctlstartminecraftfi
else
printf"On Current Version!\n No changes to be Made...\n"
fi
printf "\nExiting\n"