123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346 |
- #!/usr/bin/env bash
- #=========HEADER==========================================|
- #AUTOR
- # Jefferson Rocha <lrcjefferson@gmail.com>
- #
- #PROGRAMA
- # go4million - Vida Criminal
- #
- #DESCRIÇÃO
- # Jogo de criminoso totalmente lunático.
- #=========================================================|
- # Iniciando Cor do ambiente
- ambient="\e[32;40;1m"
- printf "$ambient"
- clear
- #====TESTES========================#
- #==================================#
- #====BIBLIOTECAS===================#
- . go4million.msg
- . go4million.persons
- #==================================#
- #====VARIAVEIS=====================#
- GAME="Go4Million - Vida Criminal"
- VERSION="0.2beta"
- #Cartões de dinheiro
- greencard="0"
- #Jogador
- MONEY="500"
- LIFE="10"
- GUN="Pistola 32"
- REPUTATION="50"
- #Cores
- red="\e[31;1m"
- blue="\e[44;1m"
- cyan="\e[36;1m"
- yellow="\e[33;1m"
- pink="\e[35;1m"
- white="\e[37;1m"
- underline="\e[4m"
- end="\e[m"
- #==================================#
- #====FUNCOES=======================#
- ########## AJUDA ##############
- HELP()
- {
- clear
- cat <<EOF
- ${GAME} versão ${VERSION}.
- 2018 - Jefferson Rocha
- Este jogo é ficticio e o desenvolvedor não se resposabiliza por nada!
- ------- INSTRUÇÕES
- O seu objetivo é chegar a 1 MILHÃO de reais sem morrer antes é claro.
- ${GAME} não possui pointsave ou seja, saiu/morreu o jogo reseta.
- Para conseguir o tão sonhado 1 MILHÃO você deve fazer tudo que é mais errado
- nesta vida!
- Assaltos, planejamento, serial killer etc... Tudo dependerá de você e claro do jogo.
- Você tem ${LIFE} vidas de inicio, se você estiver com sorte você ira conseguir
- pontos de vida ao decorrer do jogo, tome cuidado a onde você se mete pois se sua
- sorte não estiver com você é vida a menos na certa, afinal o jogo é randômico e depende da
- sorte.
- ------- DICA
- Consiga o máximo de dinheiro no inicio para comprar armas! você necessita delas para
- conseguir ter um maior sucesso em suas tramoias.
- Cuide da sua reputação! se sua reputação for baixa e entrar aonde não deveria você perde tudo!
- ------ CARTÃO VERDE
- digite no jogo greencard e ganhe 500 Reais.
- Bom jogo.
- EOF
- ENTER # função
- }
- ########## Ferramenta ##########
- BAR() # Barra
- {
- printf "${blue} Dinheiro: ${MONEY} R$ | "
- printf "${blue} Reputação: ${REPUTATION} | "
- printf "${blue} Vida: ${LIFE}/10 |${end}\n"
- printf "${blue} Arma: ${GUN} ${end}\n\n "
- }
- LIFE_CONFERENCE() # Conferencia de vida
- {
- if [ "$LIFE" -eq "0" ]; then
- printf "Suas vidas acabaram.\n"
- printf "GAME OVER.\n"
- exit 1
- fi
- }
- ENTER() # Enter
- {
- printf "\nEnter para prosseguir"; read
- }
- ########## COMBATE #########
- COMBAT()
- {
- PERSON_LIFE="100" # Vida da vitima
- TOTAL="0" # Valor total
- printf "${underline}VÍTIMA:${end}${white} ${PERSON[$RANDOM_VITIM]}${end}\n\n" # Nome da vítima.
- while true; do
- if [ "$PERSON_LIFE" -eq "0" ] || [ "$PERSON_LIFE" -lt "0" ]; then # Menor que 0 vaza.
- printf "\nVocê Mando ${PERSON[$RANDOM_VITIM]} Para as profundezas!\n"
- break
- fi
- sleep 0.4s
- # Gerando um hit aleatorio.
- hit=$(($RANDOM % 10))
- case $hit in
- 1) # Cabeça
- _head="100"
- PERSON_LIFE=$(($PERSON_LIFE - $_head))
- REPUTATION=$(($REPUTATION + 1)) # reputação +1
- MONEY=$(($MONEY + 200)) # Dando 200 conto para o player.
- printf "${cyan}-->Você Acertou a Cabeça. Foi FATAL!${end}\n"
- printf "\n\nBoa pontaria! Você recebeu 200 reais de bônus pelo belo tiro!!\n"
- printf "+1 de Reputação!\n"
- break
- ;;
- 2) # Pescoço
- _neck="30"
- PERSON_LIFE=$(($PERSON_LIFE - $_neck))
- printf "${yellow}-->Você Acertou o Pescoço. Quase fatal! Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
-
- 3) # Barriga
- _belly="20"
- PERSON_LIFE=$(($PERSON_LIFE - $_belly))
- printf "${pink}-->Você Acertou a Barriga. Essa doeu! Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
- 4) # Perna direita
- _leg_right="12"
- PERSON_LIFE=$(($PERSON_LIFE - $_leg_right))
- printf "${white}-->Você Acertou a Perna Direita. Não anda mais! Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
- 5) # Perna esquerda
- _leg_left="13"
- PERSON_LIFE=$(($PERSON_LIFE - $_leg_left))
- printf "${white}-->Você Acertou a Perna Esquerda. Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
- 6) # Outro
- _other="3"
- PERSON_LIFE=$(($PERSON_LIFE - $_other))
- printf "${white}-->Você Acertou alguma parte. Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
- 7) # Raspão
- _scrape="2"
- PERSON_LIFE=$(($PERSON_LIFE - $_scrape))
- printf "${white}-->De Raspão! Vida: ${PERSON_LIFE}/100${end}\n"
- ;;
- *) # Errou
- _missed="0"
- printf "${red}-->Você errou o tiro!${end}\n"
- ;;
- esac
- done
- }
- ########## LOCAIS ##########
- # Zona
- ZONE()
- {
- # Variaveis somente local
- typeset choice
- typeset ALEATORY_MSG
- typeset DESTINY
- # Valor que a puta recebe
- typeset receive="100"
- cat <<EOF
- Chegamos na zona mais motherfuck da cidade.
- Podemos começar a fazer alguma coisa, o que deseja fazer?
- 1) Matar geral
- 2) Sexo
- EOF
- while : ;do
- printf "\n> "; read choice
- choice="${choice^^}" # Tudo em maiusculo.
- if [ "$choice" = "1" ]; then
- if [ $((($RANDOM % 12)+1)) -gt "5" ]; then # > 9, 1 vida a menos.
- LIFE=$(($LIFE - 1)) # Decremento da vida.
- ALEATORY_NUMBER_MSG=$((($RANDOM % $msg_number_over)+1)) # Número aleatorio para mensagem
- printf "${red}${MSG_OVER[$ALEATORY_NUMBER_MSG]}${end}\n" # Mensagem aleatoria
- LIFE_CONFERENCE # Conferindo se vida acabou.
- if [ $((($RANDOM % 6)+1)) -eq "3" ]; then # Se for cagado perde tbm 100 reais
- MONEY=$(($MONEY - 200))
- printf "${red}-SORTUDO! Você perdeu 200 R\$!${end}\n"
- fi
- printf "${red}-Você perdeu 1 vida! lhe restam mais: ${LIFE}.${end}\n"
- ENTER # Função enter.
- break
- else
- RANDOM_VITIM=$(($RANDOM % $persons))
- COMBAT # Chamada da função para matação.
- printf "${cyan}+200 reais.${end}\n"
- MONEY=$(($MONEY + 200)) # Duzentinho para o jogadoh
- ENTER # Função enter.
- break
- fi
- elif [ "$choice" = "2" ]; then
- ALEATORY_NUMBER_MSG=$((($RANDOM % $msg_number_sex)+1))
- [ "$ALEATORY_NUMBER_MSG" -eq "1" ] && LIFE=$(($LIFE + 1)) # Igual a 1? ganha 1 vida.
- [ "$ALEATORY_NUMBER_MSG" -eq "5" ] && receive="200"
- printf "${cyan}${MSG_SEX[$ALEATORY_NUMBER_MSG]}${end}\n"
- MONEY=$(($MONEY - $receive))
- ENTER # Prosseguir.
- break
- else
- printf "? Cê tá maluco, digita a porra certa KCTA.\n"
- continue
- fi
- done
- }
- #### PEQUENOS FURTOS
- SMALL_THEFT()
- {
- printf "Em desenvolvimento\n"
- ENTER
- }
- # LOJA
- STORE()
- {
- #LISTA DE ARMAS
- revolver=(
- "Taurus 817 .38 250 R$"
- "Taurus 88 .38 1.000 R$"
- "Colt Python .357 3.500 R$"
- )
- while : ;do
- clear
- BAR # Barra de informações do usuario
- printf "Seja bem vindo ao 'ARMADO ATÉ OS DENTES' Store.\nVeja a lista para você comprar, lembre-se de ter dinheiro suficiente.\nPara retornar digite: retornar\n\n"
- printf "${red}### Revolver${end}\n"
- printf "1) ${revolver[0]}\n"
- printf "2) ${revolver[1]}\n"
- printf "3) ${revolver[2]}\n"
- printf "\n> "; read choice
- case "$choice" in
- 1) VALOR="250" ; [ "$VALOR" -gt "$MONEY" ] && { printf "Grana insuficiente.\n"; ENTER; continue ;}
- MONEY=$(($MONEY - $VALOR))
- GUN=$(printf "${revolver[0]}" | awk '{print $1, "Modelo",$2}') # Pegando campos Arma e modelo
- POWER="3"
- printf "Sua arma agora é '${GUN}' e seu poder é '${POWER}'"
- ;;
- 2) VALOR="1000" ; [ "$VALOR" -gt "$MONEY" ] && { printf "Grana insuficiente.\n"; ENTER; continue ;} ;;
- 3) VALOR="3500" ; [ "$VALOR" -gt "$MONEY" ] && { printf "Grana insuficiente.\n"; ENTER; continue ;} ;;
- retornar) break ;;
- *) printf "Já fumou? opção inválida man.\n" ;;
- esac
- read
- done
- }
- # Quadrilha
- GANG() # Entrar para uma gang
- {
- printf "EM desenvolvimento\n"
- ENTER
- }
- #==================================#
- ####### Loop Principal ########
- while true ;do
- clear
- BAR
- cat <<-EOF
- Cafofo.
- Para ver as instruções do jogo digite: ajuda
- Para ver a história do personagem digite: historia
- 1) Rolê na Cidade
- 2) Entrar para uma quadrilha
- 3) Ir para Zona
- 4) Pequenos Roubos
- 5) Visitar a Loja
- 6) Se Suicidar
- EOF
- printf "\n> "; read choice
- case $choice in
- 3) ZONE ;;
- 4) SMALL_THEFT ;;
- 5) STORE ;;
- 6) printf "BOOOOOM, sua cabeça explodiu.\n"; exit 0 ;;
- ajuda) HELP ;;
- historia|história) HISTORY ;;
- greencard)
- if [ "$greencard" -lt "1" ]; then
- greencard="1"
- MONEY=$(($MONEY + 500))
- else
- printf "Você já adquiriu o Greencard.\n\n"
- ENTER
- continue
- fi
- ;;
- *) printf "Hey brother, opção inválida.\n" ;;
- esac
- done
-
-
|