-
Notifications
You must be signed in to change notification settings - Fork 0
/
start.sh
executable file
·117 lines (104 loc) · 3.25 KB
/
start.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#!/bin/bash
# Variáveis
WAIT_TIME=0
HOST="localhost"
TEAM="ERUS"
DIR="src"
PLAYER_BIN="${DIR}/erus_player"
COACH_BIN="${DIR}/erus_coach"
P_CONF="${DIR}/player.conf"
F_CONF="${DIR}/formations.conf"
LOGLEVEL="100"
# Mostra a tela de ajuda com os parâmetros suportados
show_help () {
echo "*********************************************************************"
echo "* Lista de parâmetros: *"
echo "* *"
echo "* --h | --help Mostra a ajuda (esta tela) *"
echo "* -h | --host Define o host do jogo. Padrão: localhost *"
echo "* -t | --team Define o nome do time. Padrão: ERUS *"
echo "* -d | --dir Define a pasta raiz do projeto. Padrão: src *"
echo "* -l | --log Define o nível de logging. Padrão: 100 *"
echo "*********************************************************************"
}
# Mostra a tela de "boas vindas"
show_welcome () {
echo "*****************************************************************"
echo "* ERUS ULTRABOTS 2020 - Universidade Federal do Espírito Santo *"
echo "* *"
echo "* Código original *"
echo "* Jelle Kok *"
echo "* Nikos Vlassis *"
echo "* Frans Groen *"
echo "* Remco de Boer *"
echo "* Mahdi Nami Damirchi *"
echo "* *"
echo "* Atualizações para IRONCup 2020 *"
echo "* ERUS - Equipe de Robótica da UFES *"
echo "* Licenciado pela GPLv2 *"
echo "*****************************************************************"
}
# Mostra os dados da execução
show_data () {
echo ""
echo "Iniciando no host ${HOST}"
echo "Nome do time: ${TEAM}"
echo "Diretório base: ${DIR}"
echo ""
}
# Parsing de argumentos
POSITIONAL=()
while [[ $# -gt 0 ]]
do
key="$1"
case $key in
--h|--help)
show_help
shift
shift
exit 0
;;
-h|--host)
HOST="$2"
shift # past argument
shift # past value
;;
-t|--team)
TEAM="$2"
shift # past argument
shift # past value
;;
-d|--dir)
DIR="$2"
shift # past argument
shift # past value
;;
-l|--log)
LOGLEVEL="$2"
shift
shift
;;
*) # unknown option
POSITIONAL+=("$1") # save it in an array for later
shift # past argument
;;
esac
done
set -- "${POSITIONAL[@]}" # restore positional parameters
# Script "padrão"
show_welcome
show_data
# Instancia os jogadores
for i in {1..11}
do
echo "Instanciando player ${i}..."
${PLAYER_BIN} -log ${LOGLEVEL} -number ${i} -host ${HOST} -team ${TEAM} -f ${F_CONF} -c ${P_CONF} -o "./logs/log_${i}.txt" &
sleep ${WAIT_TIME}
echo "OK!"
done
sleep 1
echo "Todos os players instanciados"
echo "Instanciando coach..."
${COACH_BIN} -host ${HOST} -team ${TEAM} -f ${F_CONF} &
echo "OK!"
echo "Tudo ok no time"