Joga Batalha Naval

Publicado por Lame Duck 15/05/2008

[ Hits: 9.277 ]

Homepage: www.patinho.net

Download batalha_naval.sh




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

  



Esconder código-fonte

# 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

Scripts recomendados

[wgetreload] Evitando conexão "staled" (parada) no wget

Hora Certa

Filtro para importação de extrato do Banco do Brasil para Kmymoney

Backup com rsync em maquina da rede.

Obtém fotos de uma Câmera Digital organizando em Subdiretórios e Renomeando


  

Comentários
[1] Comentário enviado por SMarcell em 17/05/2008 - 17:35h

Só uma dica:

Sempre tente comentar seus scripts, assim fica ainda mais fácil entender o que cada linha faz!

Falou!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts