Descrição
Nova versão do jogo bíblico que eu havia feito anteriormente em Python.
[ Download:
justice.sh ]
[
Enviar nova versão ]
[ Esconder código-fonte ]
#!/bin/bash
# JOGO BIBLICO - Algoritmo de Abrao - Versao 0.2
# Os creditos estao nas mensagens
# Software Livre isento de licenca, desde que
# respeitada a propriedade autoral
# Inicio
# Mensagens para as caixas de dialogo
# Mensagem 0: Tela de abertura
mensagem0='JOGO BÍBLICO
Algoritmo de Abraão (Gênesis 18:24-32)
Versão 0.2
Por Flávio Augusto (flavio20xx@gmail.com)
Vamos começar?'
# Mensagem 1: Ajuda
mensagem1='Neste jogo você deve convencer a Deus
a não destruir Sodoma e Gomorra (Gênesis 18:24-32).
Algo um tanto quanto muito difícil, mas vamos lá:
Na inputbox "Eu", digite:
"Senhor, e se houver [quantidade] justos na cidade?"
Lembre-se:
1) Não exagere na quantidade;
2) Digite certo para acabar logo;
3) No final você verá sua pontuação.
Boa sorte!'
# Mensagem 2: Fim do jogo
mensagem2='
Deus: "Anjos, tirem Ló e sua família de lá."
Anjos: "Sim, Senhor!"
'
# Mensagem 3: Sobre
mensagem3='Desenvolvido por:
FLÁVIO AUGUSTO CARDOSO MACHADO
(flavio20xx@gmail.com)
Goiânia, Novembro de 2006.
A versão anterior deste jogo foi escrita em Python
para modo texto. Procure o script "justice.py"
no site Viva o Linux (www.vivaolinux.com.br).
Este programa é de código-fonte aberto, mas
não se esqueça de dar ao autor os devidos créditos
e a Deus toda honra e toda glória.
"JESUS TE AMA. USE LINUX!"'
# Tela de abertura
Xdialog --title "justice.sh - v.0.2" --help "$mensagem1" \
--yesno "$mensagem0" 0 0
[ $? = 1 ] && exit 0
# O jogo
# Iniciando o jogo
score=0
justos=50
while [ "$justos" -ge 10 ]; do
# Aqui eu faco a pregunta
qtde=$( Xdialog --no-cancel --title "Digite logo abaixo" --inputbox "Eu:" 8 40 2>&1 | sed -e 's/[^0-9]//g' )
[ "$qtde" = "" ] && qtde=0
if [ "$qtde" -eq "$justos" ]; then
# A resposta de Deus
Xdialog \
--title "DEUS" \
--msgbox "Não destruirei a cidade por amor dos $justos justos." \
0 0
score=$((score+justos))
# Aqui fica o calculo para a proxima resposta correta
[ "$justos" -lt 45 ] && justos=$((justos-5))
justos=$((justos-5))
else
# Jogo do tipo "quente ou frio"
if [ "$qtde" -gt "$justos" ] && [ "$qtde" -le 50 ]; then
Xdialog --title "DEUS" \
--msgbox "Você não deveria pedir por menos justos?" 0 0
score=$((score-justos))
fi
if [ "$qtde" -lt "$justos" ] && [ "$qtde" -ge 10 ]; then
Xdialog --title "DEUS" \
--msgbox "Você não gostaria de pedir por mais justos?" 0 0
score=$((score+justos))
fi
# Se digitar fora da faixa permitida, o jogo comeca de novo
if [ "$qtde" -gt 50 ] || [ "$qtde" -lt 10 ]; then
Xdialog --title "DEUS" \
--msgbox "Acaso vou destruir as cidades sem consultar Abraão?" \
0 0
justos=50
score=$((score-justos))
fi
fi
done
# Game over!
# Encerrando o jogo (com opcao de comecar de novo)
Xdialog --title "GAME OVER - $score pontos" --msgbox "$mensagem2" 0 0
Xdialog --title "Reiniciar jogo" \
--help "$mensagem3" --default-no --yesno "Deseja reiniciar o jogo?" 0 0
[ $? = 0 ] && ./justice.sh
# Fim
Scripts recomendados
Copie DVDs para o seu HD
Twitter via shell
Speedy
Script para compactar/descompactar arquivos e diretórios utilizando Xdialog
CSSH - Programa para agilizar o acesso aos servidores que você gerencia
Comentários
[1] Comentário enviado por
yetlinux em 06/12/2006 - 02:58h:
Bom, mas em se tratando de um shell script (e com Xdialog), era bom verificar se há o Dialog instalado, porque há distribuições em que o Dialog não é padrão.
Os scripts de ícones mágicos do Kurumin costumavam verificar o Dialog da instalação, se o dialog (via terminal, com Curses), se o Xdialog (o seu) ou ainda o gdialog.
Páginal do XDialog:
http://xdialog.dyns.net/