|
@@ -0,0 +1,108 @@
|
|
|
|
|
+#!/bin/bash
|
|
|
|
|
+# LGSM fn_content_gmod function
|
|
|
|
|
+# Author: Christian Birk
|
|
|
|
|
+# E-Mail: github@birkc.de
|
|
|
|
|
+# Version: 20150416
|
|
|
|
|
+
|
|
|
|
|
+# Check Root
|
|
|
|
|
+fn_check_root
|
|
|
|
|
+
|
|
|
|
|
+# Variables
|
|
|
|
|
+installcontent=-1
|
|
|
|
|
+contentid=0
|
|
|
|
|
+
|
|
|
|
|
+# funktions
|
|
|
|
|
+usage_content(){
|
|
|
|
|
+ echo "Usage: ./$selfname content [install|update|validate|remove] [css|tf2|portal2]"
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+# Server installed
|
|
|
|
|
+if [ ! -d "$filesdir" ]; then
|
|
|
|
|
+ echo "It seems that Garry's Mod is not installed please check \$filesdir"
|
|
|
|
|
+ exit 1
|
|
|
|
|
+fi
|
|
|
|
|
+
|
|
|
|
|
+# Install or Remove game ?
|
|
|
|
|
+if [ "$parm_action" == "install" ]; then
|
|
|
|
|
+ installcontent=1
|
|
|
|
|
+elif [ "$parm_action" == "remove" ]; then
|
|
|
|
|
+ installcontent=0
|
|
|
|
|
+elif [ "$parm_action" == "update" ]; then
|
|
|
|
|
+ installcontent=2
|
|
|
|
|
+elif [ "$parm_action" == "validate" ]; then
|
|
|
|
|
+ installcontent=3
|
|
|
|
|
+else
|
|
|
|
|
+ usage_content
|
|
|
|
|
+ exit 1
|
|
|
|
|
+fi
|
|
|
|
|
+
|
|
|
|
|
+# Detect content
|
|
|
|
|
+if [ "$parm_type" == "css" ]; then
|
|
|
|
|
+ contentid=232330
|
|
|
|
|
+ contentfolder="$filesdir/content/css"
|
|
|
|
|
+elif [ "$parm_type" == "tf2" ]; then
|
|
|
|
|
+ contentid=232250
|
|
|
|
|
+ contentfolder="$filesdir/content/tf2"
|
|
|
|
|
+elif [ "$parm_type" == "portal2" ]; then
|
|
|
|
|
+ contentid=
|
|
|
|
|
+ contentfolder="$filesdir/content/portal2"
|
|
|
|
|
+else
|
|
|
|
|
+ usage_content
|
|
|
|
|
+ exit 1
|
|
|
|
|
+fi
|
|
|
|
|
+
|
|
|
|
|
+#Set ContentID
|
|
|
|
|
+appid=${contentid}
|
|
|
|
|
+
|
|
|
|
|
+#Set FilesDir
|
|
|
|
|
+filesdir=${contentfolder}
|
|
|
|
|
+
|
|
|
|
|
+# Contentdir already created ?
|
|
|
|
|
+if [ ! -d "$filesdir/content" ]; then
|
|
|
|
|
+ mkdir $rootdir/content
|
|
|
|
|
+fi
|
|
|
|
|
+
|
|
|
|
|
+if [ "$installcontent" == 1 ]; then
|
|
|
|
|
+ if [ ! -d "$contentfolder" ]; then
|
|
|
|
|
+ mkdir $contentfolder
|
|
|
|
|
+ fi
|
|
|
|
|
+
|
|
|
|
|
+ echo " "
|
|
|
|
|
+ echo "Installing ${parm_type} Content"
|
|
|
|
|
+ echo "================================="
|
|
|
|
|
+ fn_scriptlog "Installing ${parm_type} Content"
|
|
|
|
|
+
|
|
|
|
|
+ fn_install_serverfiles
|
|
|
|
|
+ fn_install_complete
|
|
|
|
|
+
|
|
|
|
|
+elif [ "$installcontent" == 0 ]; then
|
|
|
|
|
+ if [ -d "$contentfolder" ]; then
|
|
|
|
|
+ rm -rf $contentfolder
|
|
|
|
|
+ echo ""
|
|
|
|
|
+ echo "$parm_type was succesfully deleted"
|
|
|
|
|
+ else
|
|
|
|
|
+ echo "$parm_type was not installed on the Server before"
|
|
|
|
|
+ fi
|
|
|
|
|
+
|
|
|
|
|
+elif [ "$installcontent" == 2 ]; then
|
|
|
|
|
+ if [ ! -d "$contentfolder" ]; then
|
|
|
|
|
+ echo "$parm_type was not installed before"
|
|
|
|
|
+ exit 1
|
|
|
|
|
+ fi
|
|
|
|
|
+
|
|
|
|
|
+ fn_update_check
|
|
|
|
|
+
|
|
|
|
|
+elif [ "$installcontent" == 2 ]; then
|
|
|
|
|
+ if [ ! -d "$contentfolder" ]; then
|
|
|
|
|
+ echo "$parm_type was not installed before"
|
|
|
|
|
+ fi
|
|
|
|
|
+ echo " "
|
|
|
|
|
+ echo "Validate ${parm_type} Content"
|
|
|
|
|
+ echo "================================="
|
|
|
|
|
+
|
|
|
|
|
+ fn_validate
|
|
|
|
|
+
|
|
|
|
|
+else
|
|
|
|
|
+ #do Nothing
|
|
|
|
|
+fi
|