Advertisement
Pedr026

Personagem.java

Mar 30th, 2019
476
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.99 KB | None | 0 0
  1. package prjPersonagem;
  2.  
  3. import java.util.Random;
  4. import java.util.Scanner;
  5.  
  6. public class Personagem {
  7.     private String nome;
  8.     private String classe;
  9.     private int vida;
  10.     private int mana;
  11.     private boolean morto;
  12.     private int pontos;
  13.     private int qtPocao;
  14.     private boolean necroAmigo;
  15.  
  16.     public void setNome(String nome) {
  17.         this.nome = nome;
  18.     }
  19.  
  20.     public String getNome() {
  21.         return this.nome;
  22.     }
  23.  
  24.     public void setClasse(String classe) {
  25.         this.classe = classe;
  26.     }
  27.  
  28.     public String getClasse() {
  29.         return this.classe;
  30.     }
  31.  
  32.     public void setVida(int vida) {
  33.         this.vida = vida;
  34.     }
  35.  
  36.     public int getVida() {
  37.         return this.vida;
  38.     }
  39.  
  40.     public void setMana(int mana) {
  41.         this.mana = mana;
  42.     }
  43.  
  44.     public int getMana() {
  45.         return this.mana;
  46.     }
  47.  
  48.     public void setMorto(boolean morto) {
  49.         this.morto = morto;
  50.     }
  51.  
  52.     public boolean getMorto() {
  53.         return this.morto;
  54.     }
  55.  
  56.     public void setPontos(int pontos) {
  57.         this.pontos = pontos;
  58.     }
  59.  
  60.     public int getPontos() {
  61.         return this.pontos;
  62.     }
  63.  
  64.     public void setQtPocao(int qtPocao) {
  65.         this.qtPocao = qtPocao;
  66.     }
  67.  
  68.     public int getQtPocao() {
  69.         return this.qtPocao;
  70.     }
  71.  
  72.     public void setNecroAmigo(boolean necroAmigo) {
  73.         this.necroAmigo = necroAmigo;
  74.     }
  75.  
  76.     public boolean getNecroAmigo() {
  77.         return this.necroAmigo;
  78.     }
  79.  
  80.     public void Menu() {
  81.         Scanner ler = new Scanner(System.in);
  82.         vida = 100;
  83.         mana = 100;
  84.         qtPocao = 5;
  85.         morto = false;
  86.         System.out.println(
  87.                 "Instruções:\n+Siga os comandos para realizar as ações;\n+Você começa com 5 poções que lhe concedem 20 de vida e de mana/energia;\n"
  88.                         + "+Cuidado ao usar a poção, mesmo estando com tudo cheio, você bebe a poção!;\n"
  89.                         + "+Cada inimigo abatido lhe concede 1 ponto;\n"
  90.                         + "+Você também recupera 1 de vida e 1 de mana/energia a cada inimigo eliminado;\n"
  91.                         + "+Há chances de você encontrar uma poção em corpos de inimigos mortos;\n"
  92.                         + "+Faça o maior número de pontos possíveis;\n" + "+Divirta-se!\n");
  93.         System.out.println("Qual o nickname do seu personagem?");
  94.         nome = ler.nextLine();
  95.         VerificarClasse();
  96.     }
  97.  
  98.     public void VerificarClasse() {
  99.         Scanner ler2 = new Scanner(System.in);
  100.         do {
  101.             System.out.println("Escolha uma classe: ([E]spadachim, [C]lérigo, [N]ecromante)");
  102.             classe = ler2.next().toUpperCase();
  103.             if (!"E".equals(classe) && !"C".equals(classe) && !"N".equals(classe)) {
  104.                 System.out.println("Classe não existente! Digite 'E','C' ou 'N'!");
  105.             }
  106.         } while (!"E".equals(classe) && !"C".equals(classe) && !"N".equals(classe));
  107.  
  108.         if ("E".equals(classe))
  109.             System.out.println("Você escolheu Espadachim!\n");
  110.  
  111.         if ("C".equals(classe))
  112.             System.out.println("Você escolheu Clérigo!\n");
  113.  
  114.         if ("N".equals(classe)) {
  115.             System.out.println("Você escolheu Necromante!\n");
  116.             necroAmigo = false;
  117.         }
  118.     }
  119.  
  120.     public void MenuAcao() {
  121.         Scanner ler3 = new Scanner(System.in);
  122.         String op;
  123.         do {
  124.             System.out.println("Escolha uma ação: \n1-Tomar poção!\n2-Duelar!\n3-Especial!\n4-Ver status!\n5-Sair.");
  125.             op = ler3.nextLine();
  126.             switch (op) {
  127.             case "1":
  128.                 TomarPocao();
  129.                 break;
  130.             case "2":
  131.                 Duelar();
  132.                 break;
  133.             case "3":
  134.                 Especial();
  135.                 break;
  136.             case "4":
  137.                 VerStatus();
  138.                 break;
  139.             case "5":
  140.                 System.out.println("Você fugiu, você fez: " + pontos + " pontos!");
  141.                 System.exit(0);
  142.                 break;
  143.             default:
  144.                 System.out.println("Ação não existe!!\n");
  145.                 break;
  146.             }
  147.         } while (op != "5" && morto == false);
  148.         ler3.close();
  149.     }
  150.  
  151.     public void TomarPocao() {
  152.         System.out.println("===== ===== ===== ===== =====");
  153.         if (qtPocao == 0)
  154.             System.out.println("Você não possui mais poções!");
  155.  
  156.         if (qtPocao > 0) {
  157.             qtPocao--;
  158.             if (vida > 100)
  159.                 System.out.println("Sua aura permite que você exceda a vida máxima!");
  160.             else if (vida >= 80 && vida <= 100) {
  161.                 vida = 100;
  162.                 System.out.println("Você está com a Vida cheia!");
  163.             }
  164.             if (mana >= 80) {
  165.                 if (!"E".equals(classe)) {
  166.                     mana = 100;
  167.                     System.out.println("Você está com a Mana cheia!");
  168.                 } else {
  169.                     mana = 100;
  170.                     System.out.println("Você está com a Energia cheia!");
  171.                 }
  172.             }
  173.             if (vida <= 79) {
  174.                 vida += 20;
  175.                 System.out.println("Você recuperou 20 de Vida!");
  176.             }
  177.  
  178.             if (mana <= 79) {
  179.                 if (!"E".equals(classe)) {
  180.                     mana += 20;
  181.                     System.out.println("Você recuperou 20 de Mana!");
  182.                 } else {
  183.                     mana += 20;
  184.                     System.out.println("Você recuperou 20 de Energia!");
  185.                 }
  186.             }
  187.            
  188.             if (!"E".equals(classe))
  189.                 System.out.println("Vida: " + vida + " Mana: " + mana);
  190.             else
  191.                 System.out.println("Vida: " + vida + " Energia: " + mana);
  192.         }
  193.         System.out.println("Poções: " + qtPocao + "\n");
  194.     }
  195.  
  196.     public void Duelar() {
  197.         Random r = new Random();
  198.         int dano = r.nextInt(40);
  199.         int nPocao = r.nextInt(10) + 1;
  200.         boolean critico = false;
  201.  
  202.         if (dano % 2 != 0 && dano >= 32 && dano <= 36) {
  203.             dano *= 2;
  204.             critico = true;
  205.         }
  206.  
  207.         if (necroAmigo) {
  208.             System.out.println("===== ===== ===== ===== =====");
  209.             System.out.println("Sua invocação foi morta após eliminar um inimigo!");
  210.             necroAmigo = false;
  211.             pontos++;
  212.             vida++;
  213.             mana++;
  214.         } else {
  215.             if (critico) {
  216.                 vida = vida - dano;
  217.                 System.out.println("===== ===== ===== ===== =====");
  218.                 System.out.println("Você encontrou e matou um inimigo, mas recebeu " + dano + " de dano CRÍTICO!");
  219.                 if (vida < 0) {
  220.                     vida = 0;
  221.                     System.out.println("Sua vida: " + vida);
  222.                     System.out.println("Você morreu! X_X");
  223.                     morto = true;
  224.                 } else
  225.                     System.out.println("Sua vida: " + vida);
  226.                 pontos++;
  227.                 vida++;
  228.                 mana++;
  229.             } else {
  230.                 vida = vida - dano;
  231.                 System.out.println("===== ===== ===== ===== =====");
  232.                 System.out.println("Você encontrou e matou um inimigo, mas recebeu " + dano + " de dano!");
  233.                 if (vida < 0) {
  234.                     vida = 0;
  235.                     System.out.println("Sua vida: " + vida);
  236.                     System.out.println("Você morreu! X_X");
  237.                     morto = true;
  238.                 } else
  239.                     System.out.println("Sua vida: " + vida);
  240.                 pontos++;
  241.                 vida++;
  242.                 mana++;
  243.             }
  244.         }
  245.  
  246.         if (nPocao == 1 && morto == false) {
  247.             System.out.println("VOCÊ ENCONTROU UMA POÇÃO!");
  248.             qtPocao++;
  249.         }
  250.  
  251.         if (morto == false)
  252.             System.out.println("Poções: " + qtPocao + "\n");
  253.        
  254.         if (morto) {
  255.             System.out.println(nome + ", você fez " + pontos + " ponto(s)!");
  256.         }
  257.     }
  258.  
  259.     public void Especial() {
  260.         System.out.println("===== ===== ===== ===== =====");
  261.         if ("E".equals(classe)) {
  262.             if (mana < 20)
  263.                 System.out.println("Você não tem Energia o suficiente!\n");
  264.             else {
  265.                 mana -= 20;
  266.                 System.out.println("[-20 de Energia] Você corta todos os inimigos da área!");
  267.                 System.out.println("Sua Energia: " + mana + "\n");
  268.                 pontos += 2;
  269.             }
  270.         }
  271.  
  272.         if ("C".equals(classe)) {
  273.             if (mana < 45)
  274.                 System.out.println("Você não tem Mana o suficiente!\n");
  275.             else {
  276.                 mana -= 45;
  277.                 vida += 25;
  278.                 System.out.println("[-45 de Mana] Você ativa uma aura que lhe concede mais 25 de vida!");
  279.                 System.out.println("Sua Mana: " + mana + "\n");
  280.             }
  281.         }
  282.  
  283.         if ("N".equals(classe)) {
  284.             if (mana < 60)
  285.                 System.out.println("Você não tem Mana o suficiente!\n");
  286.             else {
  287.                 mana -= 60;
  288.                 System.out.println("[-60 de Mana] Você revive um inimigo para lutar ao seu lado!");
  289.                 necroAmigo = true;
  290.                 System.out.println("Sua Mana: " + mana + "\n");
  291.                 pontos += 3;
  292.             }
  293.         }
  294.     }
  295.  
  296.     public void VerStatus() {
  297.         String cl = "";
  298.         if ("E".equals(classe))
  299.             cl = "Espadachim";
  300.         if ("C".equals(classe))
  301.             cl = "Clérigo";
  302.         if ("N".equals(classe))
  303.             cl = "Necromante";
  304.  
  305.         System.out.println("===== ===== ===== ===== =====");
  306.         System.out.println("Seu nickname: " + nome);
  307.         System.out.println("Sua classe: " + cl);
  308.         System.out.println("Quantidado de poções: " + qtPocao);
  309.         System.out.println("Vida: " + vida);
  310.        
  311.         if ("E".equals(classe))
  312.             System.out.println("Energia: " + mana);
  313.         else
  314.             System.out.println("Mana: " + mana);
  315.         System.out.println("===== ===== ===== ===== =====\n");
  316.     }
  317. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement