Joga Batalha Naval
Publicado por Lame Duck 15/05/2008
[ Hits: 9.930 ]
Homepage: www.patinho.net
Um jogo bem simples de batalha naval.
Com a intenção do usuário ler o código e entender um pouco mais sobre Shell Script
# Jogo de Batalha Naval
# Escrito para servir de exemplo para a apostila que estou escrevendo no site
# Esse jogo ainda está uma bagunça, com códigos mal feito.
# Mesmo assim serve para um curioso ler o código e ver como funciona.
# Versão 0.01
# Criado Por LameDuck
ataque_b1=0
# Forma do Barquinho "=="
barquinho1="$((RANDOM % 5)) $((RANDOM % 4))"
linha[0]="# # # # #"
linha[1]="# # # # #"
linha[2]="# # # # #"
linha[3]="# # # # #"
linha[4]="# # # # #"
for ((x=1;x<=20;x++));
do
echo " 0 1 2 3 4"
echo "A ${linha[0]}"
echo "B ${linha[1]}"
echo "C ${linha[2]}"
echo "D ${linha[3]}"
echo "E ${linha[4]}"
if [[ $ataque_b1 -eq 2 ]]
then
echo -e "KABRUM\nVocê matou o barco!"
exit 0
fi
read -p "Onde quer que eu ataque? Ex: A 3. " lin coluna
case "$lin" in
[Aa]) lin=0;;
[Bb]) lin=1;;
[Cc]) lin=2;;
[Dd]) lin=3;;
[Ee]) lin=4;;
esac
if [[ "${lin} ${coluna}" = "$barquinho1" || "${lin} $(($coluna-1))" = "$barquinho1" ]]
then
let ataque_b1++
echo $ataque_b1
mudar='='
else
mudar=' '
fi
echo "${linha[$lin]} $letra"
linha[$lin]=${linha[$lin]:0:$(($coluna*2))}${mudar}${linha[$lin]:$(((coluna*2)+1))}
clear
done
Implementando um simples manipulador de eventos de teclado
xamore - um "more" simples em Xdialog
Instalar o screenFetch em qualquer distribuição
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Otimizando o uso de Memória RAM no Ubuntu com zRAM
Usando alias no Terminal para comandos longos
Simplificando o manual do terminal no Ubuntu 26.04
Bloqueio da instalação e reinstalação do Snap (snapd) no Ubuntu
Continuando meus tópicos anteriores (11)
GLPI Cards de filtros de pesquisa (2)









