first commit

This commit is contained in:
cclecle
2022-07-21 01:27:02 +02:00
commit e602aaaf3d
5 changed files with 211 additions and 0 deletions

65
Help/UTChat.txt Normal file
View File

@@ -0,0 +1,65 @@
UTChat by ProAsm and no0ne - 2021
Compatible with 436, 451 and 469.
Installation
------------
Add UTChat<version>.u to your UTServer/System folder.
Open your Server.ini file and add under:
[Engine.GameEngine]
ServerPackages=UTChat<version>
Add to the command line:
?Mutators=UTChat<version>.UTChat
NB: This needs to be the last mutator in the command line.
Configurations
--------------
bShowChatMessages (Default True) Also in Menu.
Setting this to False will disable the Mutator.
bBotsInServerChat (Default False) Also in Menu.
When set to True, the Chatbox on a server game will also show Bot messages.
ChatsTextColor=(R=200,G=180,B=2,A=0)
This the admin can configure and is the color of the text in the top chat box.
OtherTextColor=(R=50,G=250,B=250,A=0)
This the all the text below the chatbox.
The configuration .ini file also holds the last 200 chat lines by the players.
This can be viewed in a window by typing in the console:
Mutate UTChat ShowChatLog
or !Chat as a chat message.
If logged in as an Admin, a Clear Chat Log option will be available to clear all chats.
If the last 2 characters in a chat line are for instance :) then an emoji will appear in it's place.
Current emoji's
[
:) = smile
:( = grin
:^ = eyes
:+ = thumb up
:- = thumb down
:o = lol
:f = fist
:k = ok hand
:t = thinking
:b = bomb
:c = cool
:u = point up
:p = tongue out
:s = poop
:w = wave
:q = question mark
:z = zZz
If :? is in the Say then a list of abbreviations will be shown.
If you wish to use UTChat instead of Nexgen's chat:
In Nexgen.ini set useNexgenHUD=False.

3
Readme.md Normal file
View File

@@ -0,0 +1,3 @@
# UTChat Release GIT repository
checkout official release thread: https://ut99.org/viewtopic.php?t=14356

141
Run.sh Normal file
View File

@@ -0,0 +1,141 @@
#!/bin/bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
OUTPUT_DIR="$2"
CFG_FILE="$3"
DEFAULT_CFG_FILE=NIUT.ini
function add_iniKeyEx() {
crudini --set $OUTPUT_DIR/System/$1 $2 __$3 $4
# Warning: ugly hack with sed to allow multiple key instances + to remove space around '='
sed -i "s/[[:space:]]*__$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*/$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')=/g" $OUTPUT_DIR/System/$1
}
function set_iniKeyEx() {
crudini --set $OUTPUT_DIR/System/$1 $2 $3 $4
}
# !!Warning!! section is not considered
function del_iniKeyEx() {
sed -i "/[[:space:]]*$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*$(echo $4 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')/d" $OUTPUT_DIR/System/$1
}
function add_iniKey() {
add_iniKeyEx $CFG_FILE $1 $2 $3
}
function set_iniKey() {
set_iniKeyEx $CFG_FILE $1 $2 $3
}
# !!Warning!! section is not considered
function del_iniKey() {
del_iniKeyEx $CFG_FILE $1 $2 $3
}
function add_ServerPackage() {
add_iniKey 'Engine.GameEngine' ServerPackages $1
add_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1
}
function del_ServerPackage() {
del_iniKey 'Engine.GameEngine' ServerPackages $1
del_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1
}
function add_ServerActors() {
add_iniKey 'Engine.GameEngine' ServerActors $1
add_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1
}
function del_ServerActors() {
del_iniKey 'Engine.GameEngine' ServerActors $1
del_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1
}
function getmodprefix() {
UFile=$(find $OUTPUT_DIR/System -type f -iname "UTChat*.u" -exec basename {} \;)
BaseName="${UFile%.*}"
echo "$BaseName"
}
function install() {
rsync -a $SCRIPT_DIR/Help/ $OUTPUT_DIR/Help/ --exclude '.git'
rsync -a $SCRIPT_DIR/System/ $OUTPUT_DIR/System/ --exclude '.git'
echo install ok
}
function enable() {
BaseName="$(getmodprefix)"
add_ServerPackage $BaseName
echo enable ok
}
function disable() {
BaseName="$(getmodprefix)"
del_ServerPackage $BaseName
echo disable ok
}
function show_help() {
echo
echo "Usage: $0 { getmodprefix | install | enable | disable } <UT99_INSTALL_DIR> [<UT99_CONFIG_FILE>] [<CONFIG_KEY> <CONFIG_VALUE>]"
echo
}
function check_cfg_file_config() {
if [ $# -eq 4 ]
then
echo "CFG_FILE is unset, setting it to $DEFAULT_CFG_FILE"
CFG_FILE=$DEFAULT_CFG_FILE
elif [ $# -eq 5 ]
then
echo "CFG_FILE is set to '$CFG_FILE'"
else
echo "Wrong number of arguments"
show_help
exit 9999 # die with error code 9999
fi
if [ ! -f $OUTPUT_DIR/System/$CFG_FILE ]
then
echo "$OUTPUT_DIR/System/$CFG_FILE does not exist"
show_help
exit 9999 # die with error code 9999
fi
}
function check_cfg_file_gen() {
if [ -z ${CFG_FILE} ]
then
echo "CFG_FILE is unset, setting it to $DEFAULT_CFG_FILE"
CFG_FILE=$DEFAULT_CFG_FILE
else
echo "CFG_FILE is set to '$CFG_FILE'"
fi
if [ ! -f $OUTPUT_DIR/System/$CFG_FILE ]
then
echo "$OUTPUT_DIR/System/$CFG_FILE does not exist"
show_help
exit 9999 # die with error code 9999
fi
}
function check_game_dir() {
### Check if a directory does not exist ###
if [ -z $OUTPUT_DIR ]
then
echo "incorrect <UT99_INSTALL_DIR>"
show_help
exit 9999 # die with error code 9999
fi
}
case "$1" in
'getmodprefix')
check_game_dir
getmodprefix
;;
'install')
check_game_dir "$@"
install "$@"
;;
'enable')
check_game_dir "$@"
check_cfg_file_gen "$@"
disable "$@"
enable "$@"
;;
'disable')
check_game_dir "$@"
check_cfg_file_gen "$@"
disable "$@"
;;
*)
show_help
exit 1
;;
esac
exit 0

2
System/UTChat22e.int Normal file
View File

@@ -0,0 +1,2 @@
[Public]
Object=(Name=UTChat22e.UTChat,Class=Class,MetaClass=Engine.Mutator,Description="UTChat v22e")

BIN
System/UTChat22e.u Normal file

Binary file not shown.