integ
This commit is contained in:
44
Run.sh
44
Run.sh
@@ -5,6 +5,32 @@ OUTPUT_DIR="$2"
|
||||
CFG_FILE="$3"
|
||||
DEFAULT_CFG_FILE=UnrealTournament.ini
|
||||
|
||||
function add_iniKey() {
|
||||
crudini --set $OUTPUT_DIR/System/$CFG_FILE $1 __$2 $3
|
||||
# Warning: ugly hack with sed to allow multiple key instances + to remove space around '='
|
||||
sed -i "s/[[:space:]]*__$2[[:space:]]*=[[:space:]]*/$2=/g" $OUTPUT_DIR/System/$CFG_FILE
|
||||
}
|
||||
|
||||
# !!Warning!! section is not considered
|
||||
function del_iniKey() {
|
||||
sed -i "/[[:space:]]*$2[[:space:]]*=[[:space:]]*$3/d" $OUTPUT_DIR/System/$CFG_FILE
|
||||
}
|
||||
|
||||
function add_ServerPackage() {
|
||||
add_iniKey 'Engine.GameEngine' ServerPackages $1
|
||||
}
|
||||
|
||||
function del_ServerPackage() {
|
||||
del_iniKey 'Engine.GameEngine' ServerPackages $1
|
||||
}
|
||||
|
||||
function add_ServerActors() {
|
||||
add_iniKey 'Engine.GameEngine' ServerActors $1
|
||||
}
|
||||
|
||||
function del_ServerActors() {
|
||||
del_iniKey 'Engine.GameEngine' ServerActors $1
|
||||
}
|
||||
|
||||
function install() {
|
||||
rsync -a $SCRIPT_DIR/Help/ $OUTPUT_DIR/Help/
|
||||
@@ -18,15 +44,11 @@ function enable() {
|
||||
SSBUFile=$(find $OUTPUT_DIR/System -type f -iname "SmartSB*.u" ! -name "SmartSBStats.u" -exec basename {} \;)
|
||||
SSBBaseName="${SSBUFile%.*}"
|
||||
|
||||
# Warning: ugly hack with sed to allow multiple key instances
|
||||
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerPackages $SSBBaseName
|
||||
sed -i 's/_ServerPackages/ServerPackages/g' $OUTPUT_DIR/System/$CFG_FILE
|
||||
add_ServerPackage $SSBBaseName
|
||||
add_ServerPackage SmartSBStats
|
||||
add_ServerActors $SSBBaseName.SmartSBServerActor
|
||||
|
||||
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerPackages SmartSBStats
|
||||
sed -i 's/_ServerPackages/ServerPackages/g' $OUTPUT_DIR/System/$CFG_FILE
|
||||
|
||||
crudini --set $OUTPUT_DIR/System/$CFG_FILE 'Engine.GameEngine' _ServerActors $SSBBaseName.SmartSBServerActor
|
||||
sed -i 's/_ServerActors/ServerActors/g' $OUTPUT_DIR/System/$CFG_FILE
|
||||
#todo: config SSB ?
|
||||
|
||||
echo enable ok
|
||||
}
|
||||
@@ -35,9 +57,9 @@ function disable() {
|
||||
SSBUFile=$(find $OUTPUT_DIR/System -type f -iname "SmartSB*.u" ! -name "SmartSBStats.u" -exec basename {} \;)
|
||||
SSBBaseName="${SSBUFile%.*}"
|
||||
|
||||
sed -i "/ServerPackages[[:space:]]*=[[:space:]]*$SSBBaseName/d" $OUTPUT_DIR/System/$CFG_FILE
|
||||
sed -i "/ServerPackages[[:space:]]*=[[:space:]]*SmartSBStats/d" $OUTPUT_DIR/System/$CFG_FILE
|
||||
sed -i "/ServerActors[[:space:]]*=[[:space:]]*$SSBBaseName.SmartSBServerActor/d" $OUTPUT_DIR/System/$CFG_FILE
|
||||
del_ServerPackage $SSBBaseName
|
||||
del_ServerPackage SmartSBStats
|
||||
del_ServerActors $SSBBaseName.SmartSBServerActor
|
||||
|
||||
echo disable ok
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user