Batalha dos Vingadores

Publicado por Xerxes (última atualização em 27/07/2015)

[ Hits: 3.570 ]

Homepage: -

Download 6265.




Escolha um vingador (Capitão América, Homem de Ferro, Hulk ou Thor) e lute contra outro vingador. Script simples, para passar o tempo.

  



Esconder código-fonte

#!/bin/sh

##############################################################
#
# BATALHA DOS VINGADORES
#
# Versão 1.0 - 16/07/2015
#
# Xerxes Lins (www.vivaolinux.com.br/~xerxeslins)
#
# Pode copiar, modificar e distribuir. Trata-se apenas de uma brincadeira
# para ajudar usuários a entenderem o funcionamento do shell script.
#
# Para executar o script torne-o executável:
#
# $ chmod +x vingadores.sh
#
# E execute-o:
#
# ./vingadores.sh
#
# Para interromper o script use Ctrl+c
#
##############################################################


# Testa se o inimigo morreu
function Morte_ini(){
   if [ $VIDA_INIMIGO -le 0 ]
      then 
         echo ""
         echo "Depois dessa, $INIMIGO não levantou mais!"
         sleep 1
         echo "Parabéns! Você venceu!"
      else
         echo "$INIMIGO tem $VIDA_INIMIGO pontos de vida."
         Maquina
   fi
}

# Função do jogador
function Jogador(){
   echo ""
   # zera o dano
   DANO=0
   if [ $PER == 1 ]
      then
         echo "Escolha uma ação, Capitão!"
         echo ""
         echo "1 - Sequência de socos"
         echo "2 - Chute na cabeça"
         echo "3 - Arremesso de escudo"
         echo "4 - Voadora"
         read ATAQUE
         sleep 1
         ACERTO=$(( ( RANDOM % 6 )  + 1 ))
         
         # Sequência de socos
         if [ $ATAQUE == 1 ] && [ $ACERTO -le 5 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você desfere uma sequência de socos em $INIMIGO e causa $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 1 ]
            then
               echo "Você desferiu uma sequência de socos em $INIMIGO, mas ele conseguiu se esquivar!"
         fi
         
         # Chute na cabeça
         if [ $ATAQUE == 2 ] && [ $ACERTO -le 4 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você chuta a cabeça de $INIMIGO e causa $DANO pontos de dano! Essa doeu!"
               sleep 1
         elif [ $ATAQUE == 2 ]
            then
               echo "Você tentou chutar a cabeça de $INIMIGO, mas errou! Que cena!"
         fi
         
         # Arremesso de escudo
         if [ $ATAQUE == 3 ] && [ $ACERTO -le 2 ]
            then
               DANO=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você se concentra e arremessa o escudo em $INIMIGO acertando ele em cheio! Causou $DANO pontos de dano!!!"
               sleep 1
         elif [ $ATAQUE == 3 ]
            then
               echo "Você arremessa o escudo na direção de $INIMIGO e erra! Por pouco!"
         fi
         
         # Voadora
         if [ $ATAQUE == 4 ] && [ $ACERTO -le 3 ]
            then
               DANO=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você desferiu uma voadora em cheio em $INIMIGO e o derrubou! Causou $DANO pontos de dano!!!"
               sleep 1
         elif [ $ATAQUE == 4 ]
            then
               echo "Você pula e desfere uma voadora em $INIMIGO, mas ele bloqueia!"
         fi
         
         
   elif [ $PER == 2 ]
      then
         echo "O que deseja, Senhor?"
         echo ""
         echo "1 - Disparo de energia das mãos"
         echo "2 - Míssil"
         echo "3 - Dardos assassinos"
         echo "4 - Disparo de energia do peito"
         read ATAQUE
         sleep 1
         ACERTO=$(( ( RANDOM % 6 )  + 1 ))
         
         # Disparo de energia das mãos
         if [ $ATAQUE == 1 ] && [ $ACERTO -le 5 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Suas mãos brilham e logo em seguida disparam uma rajada de energia em $INIMIGO causando $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 1 ]
            then
               echo "$INIMIGO conseguiu prever seu ataque e se defendeu!"
         fi
         
         # Míssil
         if [ $ATAQUE == 2 ] && [ $ACERTO -le 4 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Alvo na mira! Você disparou um míssil em $INIMIGO e causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 2 ]
            then
               echo "Você disparou um míssil, mas $INIMIGO saiu da mira no último segundo e você errou!"
         fi
         
         # Disparo de energia do peito
         if [ $ATAQUE == 4 ] && [ $ACERTO -le 2 ]
            then
               DANO=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "O triângulo em seu peito brilha, você concentra uma poderosa energia e dispara em cheio em $INIMIGO! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 4 ]
            then
               echo "Você tentou disparar seu raio do peito, mas os controles não obedeceram. A armadura precisa de reparos!"
         fi
         
         # Voadora
         if [ $ATAQUE == 3 ] && [ $ACERTO -le 3 ]
            then
               DANO=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você dispara dardos teleguiados em $INIMIGO e causa $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 3 ]
            then
               echo "Seus dardos foram defendidos por $INIMIGO!"
         fi
         
   elif [ $PER == 3 ]
      then
         echo "Esmague o adversário!"
         echo ""
         echo "1 - Telefone sem fio"
         echo "2 - Gancho"
         echo "3 - Pular em cima"
         echo "4 - Segurar o adversário e bater ele no chão"
         read ATAQUE
         sleep 1
         ACERTO=$(( ( RANDOM % 6 )  + 1 ))
         
         # Telefone sem fio
         if [ $ATAQUE == 1 ] && [ $ACERTO -le 5 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você aplica um telefone sem fio em $INIMIGO e causa $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 1 ]
            then
               echo "Você tentou aplicar um telefone sem fio em $INIMIGO, mas ele esquivou e você acabou batendo palmas!"
         fi
         
         # Gancho
         if [ $ATAQUE == 2 ] && [ $ACERTO -le 4 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você desfere um gancho no queixo do $INIMIGO e o lança para cima! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 2 ]
            then
               echo "Seu gancho acerta o ar! $INIMIGO gargalha!"
         fi
         
         # Pular em cima
         if [ $ATAQUE == 3 ] && [ $ACERTO -le 2 ]
            then
               DANO=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você salta até a altura das nuvens e depois cai direto sobre $INIMIGO! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 3 ]
            then
               echo "Você saltou e esperou cair sobre $INIMIGO! Mas que ataque previsível! $INIMIGO conseguiu esquivar facilmente."
         fi
         
         # Segurar o adversário e bater ele no chão
         if [ $ATAQUE == 4 ] && [ $ACERTO -le 3 ]
            then
               DANO=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você agarrou o pé do $INIMIGO e o arremessou de um lado para o outro no chão! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 4 ]
            then
               echo "Você tentou agarrar $INIMIGO, mas ele se esquivou!"
         fi
         
         
   elif [ $PER == 4 ]
      then
         echo "Vamos lá, filho de Odin!"
         echo ""
         echo "1 - Cabeçada"
         echo "2 - Martelada no tórax"
         echo "3 - Arremesso de martelo"
         echo "4 - Estrangulamento"
         read ATAQUE
         sleep 1
         ACERTO=$(( ( RANDOM % 6 )  + 1 ))
         
         # Cabeçada
         if [ $ATAQUE == 1 ] && [ $ACERTO -le 5 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você segura $INIMIGO pelos ombros e aplica uma cabeçada no nariz dele! $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 1 ]
            then
               echo "Você tentou se aproximar de $INIMIGO para aplicar uma cabeçada, mas ele recuou!"
         fi
         
         # Martelada no tórax
         if [ $ATAQUE == 2 ] && [ $ACERTO -le 4 ]
            then
               DANO=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Num movimento circular poderoso você acerta uma martelada no tórax de $INIMIGO! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 2 ]
            then
               echo "$INIMIGO bloqueou sua tentativa de atingí-lo com o martelo!"
         fi
         
         # Arremesso de martelo
         if [ $ATAQUE == 3 ] && [ $ACERTO -le 2 ]
            then
               DANO=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você gira seu martelo enquanto nuvens negras se concentram criando raios e trovões. Por fim você lança seu martelo com toda força. Ele acerta $INIMIGO no rosto e depois volta para sua mão! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 3 ]
            then
               echo "Você gira seu martelo e o arremessa, mas $INIMIGO consegue se esquivar. O martelo volta para sua mão!"
         fi
         
         # Estrangulamento
         if [ $ATAQUE == 4 ] && [ $ACERTO -le 3 ]
            then
               DANO=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_INIMIGO=$((VIDA_INIMIGO - DANO))
               echo "Você pega $INIMIGO pelo pescoço e o estrangula até que ele perde as forças. Depois você o deixa cair! Causou $DANO pontos de dano!"
               sleep 1
         elif [ $ATAQUE == 4 ]
            then
               echo "Você tentou estrangular $INIMIGO, mas ele o empurrou!"
         fi
fi
Morte_ini
}

# Testa se o jogador perdeu
function Morte_per(){
   if [ $VIDA_PERSON -le 0 ]
      then 
         echo "Depois dessa, você não levantou mais!"
         sleep 1
         echo "Infelizmente... Você perdeu!"
      else
         echo "Você tem $VIDA_PERSON pontos de vida!"
         Jogador
   fi
}

# Função do adversário
function Maquina(){
   echo ""
   # zera o dano
   DANO_INI=0
   if [ $INI == 1 ]
      then
         # Sorteio do ataque do inimigo
         ATAQUE_INI=$(( ( RANDOM % 4 )  + 1 ))
         sleep 1
         ACERTO_INI=$(( ( RANDOM % 6 )  + 1 ))
         
         # Sequência de socos
         if [ $ATAQUE_INI == 1 ] && [ $ACERTO_INI -le 5 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO desfere uma sequência de socos em você e causa $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 1 ]
            then
               echo "$INIMIGO desferiu uma sequência de socos em você, mas você conseguiu se esquivar!"
         fi
         
         # Chute na cabeça
         if [ $ATAQUE_INI == 2 ] && [ $ACERTO_INI -le 4 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO chuta a sua cabeça e causa $DANO_INI pontos de dano! Essa doeu!"
               sleep 1
         elif [ $ATAQUE_INI == 2 ]
            then
               echo "$INIMIGO tentou chutar sua a cabeça, mas errou! Sortudo!"
         fi
         
         # Arremesso de escudo
         if [ $ATAQUE_INI == 3 ] && [ $ACERTO_INI -le 2 ]
            then
               DANO_INI=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO se concentra e arremessa o escudo em você acertando-o em cheio! Causou $DANO_INI pontos de dano!!!"
               sleep 1
         elif [ $ATAQUE_INI == 3 ]
            then
               echo "$INIMIGO arremessa o escudo na sua direção e erra por pouco!"
         fi
         
         # Voadora
         if [ $ATAQUE_INI == 4 ] && [ $ACERTO_INI -le 3 ]
            then
               DANO_INI=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO desferiu uma voadora em cheio em você e o derrubou! Causou $DANO_INI pontos de dano!!!"
               sleep 1
         elif [ $ATAQUE_INI == 4 ]
            then
               echo "$INIMIGO pula e desfere uma voadora em você, mas você bloqueia!"
         fi
         
         
   elif [ $INI == 2 ]
      then
         # Sorteio do ataque do inimigo
         ATAQUE_INI=$(( ( RANDOM % 4 )  + 1 ))
         sleep 1
         ACERTO_INI=$(( ( RANDOM % 6 )  + 1 ))
         
         # Disparo de energia das mãos
         if [ $ATAQUE_INI == 1 ] && [ $ACERTO_INI -le 5 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "As mãos de $INIMIGO brilham e logo em seguida disparam uma rajada de energia em você causando $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 1 ]
            then
               echo "Você conseguiu prever o ataque de $INIMIGO (disparo de energia pelas mãos) e se defendeu!"
         fi
         
         # Míssil
         if [ $ATAQUE_INI == 2 ] && [ $ACERTO_INI -le 4 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO disparou um míssil em você e causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 2 ]
            then
               echo "$INIMIGO disparou um míssil, mas você saiu da mira no último segundo e ele errou!"
         fi
         
         # Disparo de energia do peito
         if [ $ATAQUE_INI == 4 ] && [ $ACERTO_INI -le 2 ]
            then
               DANO_INI=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "O triângulo no peito de $INIMIGO brilha, ele concentra uma poderosa energia e dispara em cheio em você! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 4 ]
            then
               echo "$INIMIGO tentou disparar energia do peito, mas os controles não obedeceram. A armadura dele precisa de reparos!"
         fi
         
         # Voadora
         if [ $ATAQUE_INI == 3 ] && [ $ACERTO_INI -le 3 ]
            then
               DANO_INI=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO dispara dardos teleguiados em você e causa $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 3 ]
            then
               echo "$INIMIGO disparou dardos, mas você se defendeu!"
         fi
         
   elif [ $INI == 3 ]
      then
         # Sorteio do ataque do inimigo
         ATAQUE_INI=$(( ( RANDOM % 4 )  + 1 ))
         sleep 1
         ACERTO_INI=$(( ( RANDOM % 6 )  + 1 ))
         
         # Telefone sem fio
         if [ $ATAQUE_INI == 1 ] && [ $ACERTO_INI -le 5 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO aplica um telefone sem fio em você e causa $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 1 ]
            then
               echo "$INIMIGO tentou aplicar um telefone sem fio em você, mas você esquivou e $INIMIGO acabou batendo palmas!"
         fi
         
         # Gancho
         if [ $ATAQUE_INI == 2 ] && [ $ACERTO_INI -le 4 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO desfere um gancho no seu queixo e o lança para cima! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 2 ]
            then
               echo "O gancho de $INIMIGO acerta o ar! Hahaha!"
         fi
         
         # Pular em cima
         if [ $ATAQUE_INI == 3 ] && [ $ACERTO_INI -le 2 ]
            then
               DANO_INI=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO salta até a altura das nuvens e depois cai direto sobre você! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 3 ]
            then
               echo "$INIMIGO saltou e esperou cair sobre você! Mas que ataque previsível! Você conseguiu esquivar facilmente."
         fi
         
         # Segurar o adversário e bater ele no chão
         if [ $ATAQUE_INI == 4 ] && [ $ACERTO_INI -le 3 ]
            then
               DANO_INI=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO agarrou o seu pé e o arremessou de um lado para o outro no chão! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 4 ]
            then
               echo "$INIMIGO tentou agarrar você, mas você se esquivou!"
         fi
         
         
   elif [ $INI == 4 ]
      then
         # Sorteio do ataque do inimigo
         ATAQUE_INI=$(( ( RANDOM % 4 )  + 1 ))
         sleep 1
         ACERTO_INI=$(( ( RANDOM % 6 )  + 1 ))
         
         # Cabeçada
         if [ $ATAQUE_INI == 1 ] && [ $ACERTO_INI -le 5 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 5 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO te segura pelos ombros e aplica uma cabeçada no teu nariz! $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 1 ]
            then
               echo "$INIMIGO tentou se aproximar de você para aplicar uma cabeçada, mas você recuou!"
         fi
         
         # Martelada no tórax
         if [ $ATAQUE_INI == 2 ] && [ $ACERTO_INI -le 4 ]
            then
               DANO_INI=$(( ( ( RANDOM % 3 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "Num movimento circular poderoso $INIMIGO acerta uma martelada no seu tórax! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 2 ]
            then
               echo "Você bloqueou a tentativa de $INIMIGO de atingí-lo com o martelo!"
         fi
         
         # Arremesso de martelo
         if [ $ATAQUE_INI == 3 ] && [ $ACERTO_INI -le 2 ]
            then
               DANO_INI=$(( ( ( RANDOM % 5 )  + 1 ) * 8 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO gira seu martelo enquanto nuvens negras se concentram criando raios e trovões. Por fim $INIMIGO lança seu martelo com toda força. Ele acerta você no rosto e depois volta para mão de $INIMIGO! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 3 ]
            then
               echo "$INIMIGO gira o martelo e o arremessa, mas você consegue se esquivar. O martelo volta para mão de $INIMIGO!"
         fi
         
         # Estrangulamento
         if [ $ATAQUE_INI == 4 ] && [ $ACERTO_INI -le 3 ]
            then
               DANO_INI=$(( ( ( RANDOM % 4 )  + 1 ) * 7 ))
               VIDA_PERSON=$((VIDA_PERSON - DANO_INI))
               echo "$INIMIGO pega você pelo pescoço e o estrangula até você perder as forças. Depois o deixa cair! Causou $DANO_INI pontos de dano!"
               sleep 1
         elif [ $ATAQUE_INI == 4 ]
            then
               echo "$INIMIGO tentou te estrangular, mas você o empurrou!"
         fi
fi
Morte_per
}

VIDA_INIMIGO=100
VIDA_PERSON=100

# Opções de personagens
clear
echo "Escolha um vingador:"
echo ""
echo "1 - Capitão América"
echo "2 - Homem de Ferro"
echo "3 - Hulk"
echo "4 - Thor"
echo ""

read PER
clear

case $PER in
   1)
      echo "Você escolheu Capitão América!"
      PERSON="Capitão América"
      ;;
      
   2)
      echo "Você escolheu Homem de Ferro!"
      PERSON="Homem de Ferro"
      ;;
      
   3) echo "Você escolheu Hulk!"
      PERSON="Hulk"
      ;;
      
   4) echo "Você escolheu Thor!"
      PERSON="Thor"
      ;;
      
   *) echo "Opção inválida! Script encerrado! Não sabe brincar?! As opções eram de 1 à 4! ;)" && exit
      ;;
esac

# Sorteio do adversário
echo ""
for x in $(seq 10)
   do
      echo -ne 'Sorteando adversário ->> Capitão América\r'
      sleep 0.1
      echo -ne 'Sorteando adversário ->> Homem de Ferro \r'
      sleep 0.1
      echo -ne 'Sorteando adversário ->> Hulk           \r'
      sleep 0.1
      echo -ne 'Sorteando adversário ->> Thor           \r'
      sleep 0.1
   done
echo ""
INI=$(( ( RANDOM % 4 )  + 1 ))

# Enquanto personagem escolhido for igual ao adversário, sorteia novamente
# o adversário para evitar repetição. Se quiser permitir, comente o while.
while [ $PER == $INI ]
do   #echo "Repetido"
   INI=$(( ( RANDOM % 4 )  + 1 ))   
done
clear

case $INI in
   1)
      echo "Seu adversário é o Capitão América!"
      INIMIGO="Capitão América"
      ;;
      
   2)
      echo "Seu adversário é o Homem de Ferro!"
      INIMIGO="Homem de Ferro"
      ;;
      
   3) echo "Seu adversário é o Hulk!"
      INIMIGO="Hulk"
      ;;
      
   4) echo "Seu adversário é o Thor!"
      INIMIGO="Thor"
      ;;
   *) echo "Adversário inválido!" && exit
      ;;
esac

sleep 3
clear
echo "(você) $PERSON VS $INIMIGO (máquina)"
echo ""

# Sorteio de quem começa
INICIATIVA=$(( ( RANDOM % 2 )  + 1 ))
if [ $INICIATIVA == 1 ]
   then
      echo "É a SUA vez!"
      Jogador
   else
      echo "É a vez da MÁQUINA!"
      Maquina
fi

echo ""

Scripts recomendados

Facilitando a vida com Fedora 8

Montar Dispositivos USB

Verifica se usuario corrente é root.

Download

Excluir Arquivos Velhos de um Diretório (limparDir.sh)


  

Comentários
[1] Comentário enviado por fabio em 27/07/2015 - 05:18h

kkkkk Xerxes você é muito doido! Muito bom o script.

[2] Comentário enviado por sergeimartao em 27/07/2015 - 08:52h

Muito bom! Bem engraçado os comentários da luta #LOL

Hulk saltou e esperou cair sobre você! Mas que ataque previsível! Você conseguiu esquivar facilmente.
Você chuta a cabeça de Hulk e causa 21 pontos de dano! Essa doeu!
Hulk agarrou o seu pé e o arremessou de um lado para o outro no chão!


[3] Comentário enviado por xerxeslins em 27/07/2015 - 10:18h


valeu pessoas! :)

o link do botão de download está com defeito. mas estamos trabalhando para corrigir.

[4] Comentário enviado por sergeimartao em 27/07/2015 - 11:12h

[3] Comentário enviado por xerxeslins em 27/07/2015 - 10:18h
Valeu pessoas! :)
o link do botão de download está com defeito. mas estamos trabalhando para corrigir.


Eu fiz o fiz o download pelo link e funcionou, o único porém é que o script veio com o nome 6265.

[5] Comentário enviado por xerxeslins em 27/07/2015 - 12:00h


aqui no celular eu baixo ele e vem número tbm, mas o conteúdo não é do script. É da página do VOL.

[6] Comentário enviado por hellnux em 27/07/2015 - 18:16h

Muito bom. Aguardo cheatcode, pois sair contra o Hulk é tenso =/

[7] Comentário enviado por xerxeslins em 27/07/2015 - 19:32h


[6] Comentário enviado por hellnux em 27/07/2015 - 18:16h

Muito bom. Aguardo cheatcode, pois sair contra o Hulk é tenso =/


kkkk!

tem uma manha pra aumentar a chance de ganhar ^^

[8] Comentário enviado por jefferson07 em 28/07/2015 - 18:56h


O meu retorna erro:
./vingadores.sh: 28: ./vingadores.sh: Syntax error: "(" unexpected
E não achei o bendito erro, malditos Illuminatis!

[9] Comentário enviado por xerxeslins em 28/07/2015 - 19:08h


[8] Comentário enviado por jefferson07 em 28/07/2015 - 18:56h


O meu retorna erro:
./vingadores.sh: 28: ./vingadores.sh: Syntax error: "(" unexpected
E não achei o bendito erro, malditos Illuminatis!


Estranho. Tá usando bash que versão? Não sei se tem a ver a versão do bash. Aqui é "4.3.39".

[10] Comentário enviado por jefferson07 em 28/07/2015 - 20:19h


[9] Comentário enviado por xerxeslins em 28/07/2015 - 19:08h


[8] Comentário enviado por jefferson07 em 28/07/2015 - 18:56h


O meu retorna erro:
./vingadores.sh: 28: ./vingadores.sh: Syntax error: "(" unexpected
E não achei o bendito erro, malditos Illuminatis!

Estranho. Tá usando bash que versão? Não sei se tem a ver a versão do bash. Aqui é "4.3.39".


Segundo meu terminal a versão é a 4.3.30.

[11] Comentário enviado por jefferson07 em 28/07/2015 - 22:03h


[10] Comentário enviado por jefferson07 em 28/07/2015 - 20:19h


[9] Comentário enviado por xerxeslins em 28/07/2015 - 19:08h


[8] Comentário enviado por jefferson07 em 28/07/2015 - 18:56h


O meu retorna erro:
./vingadores.sh: 28: ./vingadores.sh: Syntax error: "(" unexpected
E não achei o bendito erro, malditos Illuminatis!

Estranho. Tá usando bash que versão? Não sei se tem a ver a versão do bash. Aqui é "4.3.39".

Segundo meu terminal a versão é a 4.3.30.


Consegui rodar o scrpit usando um terminal bash online:
http://www.tutorialspoint.com/execute_bash_online.php

Mas ainda não entendi o por que de não executar no meu bash.

[12] Comentário enviado por xerxeslins em 28/07/2015 - 22:16h


[11] Comentário enviado por jefferson07 em 28/07/2015 - 22:03h


[10] Comentário enviado por jefferson07 em 28/07/2015 - 20:19h


[9] Comentário enviado por xerxeslins em 28/07/2015 - 19:08h


[8] Comentário enviado por jefferson07 em 28/07/2015 - 18:56h


O meu retorna erro:
./vingadores.sh: 28: ./vingadores.sh: Syntax error: "(" unexpected
E não achei o bendito erro, malditos Illuminatis!

Estranho. Tá usando bash que versão? Não sei se tem a ver a versão do bash. Aqui é "4.3.39".

Segundo meu terminal a versão é a 4.3.30.

Consegui rodar o scrpit usando um terminal bash online:
http://www.tutorialspoint.com/execute_bash_online.php

Mas ainda não entendi o por que de não executar no meu bash.


eu tbm não sei. Desculpe .

[13] Comentário enviado por removido em 29/07/2015 - 05:37h

Olá.

O script não funcionou aqui, num Debian 8.1 no momento, com o mesmo erro do colega acima.
Resolvi trocando o /bin/sh por /bin/bash.
Depois disso ele deu um errinho que não vi mais. Ainda não procurei com calma, mas pode ser variável sem aspas duplas dentro dos colchetes do test.
Costuma dar esse erro porque o test pensa que falta parâmetro na comparação.

Tem mais uma coisa que vi é que parece que há dificuldade maior de acertar certos golpes dependendo da rodada. Isto tem um certo charme. Mas tem uma dica que eu fiz há um tempo atrás sobre números aleatórios em shell se alguém quiser mexer no código do jogo. É sobre uniformidade no conjunto de números aleatórios do BASH:

http://www.vivaolinux.com.br/dica/Numeros-aleatorios-em-shell-script/

Se eu separar um tempo faço umas brincadeiras no código. Gostei muito do joguinho, bem loko, dá prá usar sem X instalado ou sem rodar. Tipo, acho que dá prá ampliar com Viúva Negra, Homem Aranha, Gavião Arqueiro, Homem Formiga e até dá prá inventar uma Versão Premium com X-Men.

--
http://s.glbimg.com/po/tt/f/original/2011/10/20/a97264_w8.jpg

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden

[14] Comentário enviado por xerxeslins em 29/07/2015 - 11:30h


[13] Comentário enviado por listeiro_037 em 29/07/2015 - 05:37h

Olá.

O script não funcionou aqui, num Debian 8.1 no momento, com o mesmo erro do colega acima.
Resolvi trocando o /bin/sh por /bin/bash.
Depois disso ele deu um errinho que não vi mais. Ainda não procurei com calma, mas pode ser variável sem aspas duplas dentro dos colchetes do test.
Costuma dar esse erro porque o test pensa que falta parâmetro na comparação.

Tem mais uma coisa que vi é que parece que há dificuldade maior de acertar certos golpes dependendo da rodada. Isto tem um certo charme. Mas tem uma dica que eu fiz há um tempo atrás sobre números aleatórios em shell se alguém quiser mexer no código do jogo. É sobre uniformidade no conjunto de números aleatórios do BASH:

http://www.vivaolinux.com.br/dica/Numeros-aleatorios-em-shell-script/

Se eu separar um tempo faço umas brincadeiras no código. Gostei muito do joguinho, bem loko, dá prá usar sem X instalado ou sem rodar. Tipo, acho que dá prá ampliar com Viúva Negra, Homem Aranha, Gavião Arqueiro, Homem Formiga e até dá prá inventar uma Versão Premium com X-Men.

--
http://s.glbimg.com/po/tt/f/original/2011/10/20/a97264_w8.jpg

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden


Olá!

Não sei pq não funcionou aí! Espero que consiga descobrir.

Faça as modificações que achar necessário.

Sobre a aleatoriedade dos ataques, se você olhar, vai ver que os ataques mais difíceis de acertar são os que podem causar mais dano.

Como eu já joguei RPG de mesa, para mim foi natural fazer assim.


[15] Comentário enviado por brunobudag em 13/08/2015 - 00:44h


Muito boooom, ser o Hulk é o melhor.

Vou tentar bolar o homem aranha

[16] Comentário enviado por xerxeslins em 29/08/2015 - 20:39h


Para quem não está conseguindo rodar o script, obtendo erro "Syntax error: "(" unexpected" fiquem calmos!

Isso é coisa de Debian e Ubuntu.

Executem:

ls -l /bin/sh

Aposto que vai aparecer um link para "dash". Então, para fazer funcionar sem erro, apenas remova a primeira linha do script:

"#!/bin/sh"

Abraço!

Mais informações em:

https://wiki.debian.org/Shell


[17] Comentário enviado por sergeimartao em 30/03/2016 - 22:40h

Xerxes, estou usando seu script para aplicar nos meus estudos em Java.
Analisando o código de perto achei muito interessante a forma como você fez um loop sem usar um for ou while!
Vlw

[18] Comentário enviado por xerxeslins em 01/04/2016 - 09:30h


[17] Comentário enviado por sergeimartao em 30/03/2016 - 22:40h

Xerxes, estou usando seu script para aplicar nos meus estudos em Java.
Analisando o código de perto achei muito interessante a forma como você fez um loop sem usar um for ou while!
Vlw


Opa! Obrigado pelo comentário! :D


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts