GoralWMoro

Untitled

Apr 2nd, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 8.03 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class Wisielec {
  4.  
  5.     private String haslo;
  6.     private Boolean odgadniete[];
  7.     private int ilosc_odgadnietych_znakow;
  8.     private int zycia;
  9.  
  10.     public String getHaslo() {
  11.         return haslo;
  12.     }
  13.  
  14.     public void setHaslo(String haslo) {
  15.         this.haslo = haslo;
  16.     }
  17.  
  18.     public Boolean getOdgadniete(int i) {
  19.         if(odgadniete[i] == null){
  20.             return false;
  21.         }else{
  22.             return true;
  23.         }
  24.         //return odgadniete[i];
  25.     }
  26.  
  27.     public void setOdgadniete(int i) {
  28.         this.odgadniete[i] = true;
  29.     }
  30.  
  31.     public int getZycia() {
  32.         return zycia;
  33.     }
  34.  
  35.     public void lostZycia() {
  36.         this.zycia--;
  37.     }
  38.  
  39.     public boolean czyKoniecGry(){
  40.         if(getZycia() == 0 || getIlosc_odgadnietych_znakow() == getHaslo().length()){
  41.             return true;
  42.         }
  43.         return false;
  44.     }
  45.  
  46.     public int getIlosc_odgadnietych_znakow() {
  47.         return ilosc_odgadnietych_znakow;
  48.     }
  49.  
  50.     public void setIlosc_odgadnietych_znakow() {
  51.         this.ilosc_odgadnietych_znakow++;
  52.     }
  53.  
  54.     public Wisielec(String haslo){
  55.         this.haslo = haslo;
  56.         this.odgadniete = new Boolean[haslo.length()];
  57.         this.zycia = 11;
  58.         this.ilosc_odgadnietych_znakow = 0;
  59.     }
  60.  
  61.     public void sprawdz_znak(String znak){
  62.         boolean poprawnosc = false;
  63.         char[] haslo_array = getHaslo().toCharArray();
  64.         char[] znak_s = znak.toCharArray();
  65.         for(int i =0; i < getHaslo().length(); i++){
  66.             if(haslo_array[i] == znak_s[0]){
  67.                 setOdgadniete(i);
  68.                 setIlosc_odgadnietych_znakow();
  69.                 poprawnosc = true;
  70.             }
  71.         }
  72.  
  73.         if(!poprawnosc){
  74.             lostZycia();
  75.         }
  76.     }
  77.  
  78.     public void pokaz_haslo(){
  79.         char[] haslo_array = getHaslo().toCharArray();
  80.         for(int i = 0; i < getHaslo().length(); i++){
  81.             if(getOdgadniete(i) == true){
  82.                 System.out.print(haslo_array[i] + " ");
  83.             }else{
  84.                 System.out.print("_ ");
  85.             }
  86.         }
  87.         System.out.println("");
  88.  
  89.     }
  90.  
  91.  
  92.     public void rysuj_wisielca(){
  93.         switch(getZycia()){
  94.             case 11:
  95.                 System.out.println("            ");
  96.                 System.out.println("            ");
  97.                 System.out.println("            ");
  98.                 System.out.println("            ");
  99.                 System.out.println("            ");
  100.                 System.out.println("            ");
  101.                 System.out.println("            ");
  102.                 break;
  103.             case 10:
  104.                 System.out.println("            ");
  105.                 System.out.println("            ");
  106.                 System.out.println("            ");
  107.                 System.out.println("            ");
  108.                 System.out.println("            ");
  109.                 System.out.println("            ");
  110.                 System.out.println("/           ");
  111.                 break;
  112.             case 9:
  113.                 System.out.println("            ");
  114.                 System.out.println("            ");
  115.                 System.out.println("            ");
  116.                 System.out.println("            ");
  117.                 System.out.println("            ");
  118.                 System.out.println("            ");
  119.                 System.out.println("/\\         ");
  120.                 break;
  121.             case 8:
  122.                 System.out.println("|           ");
  123.                 System.out.println("|           ");
  124.                 System.out.println("|           ");
  125.                 System.out.println("|           ");
  126.                 System.out.println("|           ");
  127.                 System.out.println("|           ");
  128.                 System.out.println("/           ");
  129.                 break;
  130.             case 7:
  131.                 System.out.println("|---------  ");
  132.                 System.out.println("|           ");
  133.                 System.out.println("|           ");
  134.                 System.out.println("|           ");
  135.                 System.out.println("|           ");
  136.                 System.out.println("|           ");
  137.                 System.out.println("/           ");
  138.                 break;
  139.             case 6:
  140.                 System.out.println("|---------  ");
  141.                 System.out.println("|        |  ");
  142.                 System.out.println("|           ");
  143.                 System.out.println("|           ");
  144.                 System.out.println("|           ");
  145.                 System.out.println("|           ");
  146.                 System.out.println("/           ");
  147.                 break;
  148.             case 5:
  149.                 System.out.println("|---------  ");
  150.                 System.out.println("|        |  ");
  151.                 System.out.println("|        O  ");
  152.                 System.out.println("|           ");
  153.                 System.out.println("|           ");
  154.                 System.out.println("|           ");
  155.                 System.out.println("/           ");
  156.                 break;
  157.             case 4:
  158.                 System.out.println("|---------  ");
  159.                 System.out.println("|        |  ");
  160.                 System.out.println("|        O  ");
  161.                 System.out.println("|        |  ");
  162.                 System.out.println("|           ");
  163.                 System.out.println("|           ");
  164.                 System.out.println("/           ");
  165.                 break;
  166.             case 3:
  167.                 System.out.println("|---------  ");
  168.                 System.out.println("|        |  ");
  169.                 System.out.println("|        O  ");
  170.                 System.out.println("|        |\\");
  171.                 System.out.println("|           ");
  172.                 System.out.println("|           ");
  173.                 System.out.println("/           ");
  174.                 break;
  175.             case 2:
  176.                 System.out.println("|---------  ");
  177.                 System.out.println("|        |  ");
  178.                 System.out.println("|        O  ");
  179.                 System.out.println("|       /|\\");
  180.                 System.out.println("|           ");
  181.                 System.out.println("|           ");
  182.                 System.out.println("/           ");
  183.                 break;
  184.             case 1:
  185.                 System.out.println("|---------  ");
  186.                 System.out.println("|        |  ");
  187.                 System.out.println("|        O  ");
  188.                 System.out.println("|       /|\\");
  189.                 System.out.println("|         \\");
  190.                 System.out.println("|           ");
  191.                 System.out.println("/           ");
  192.                 break;
  193.             case 0:
  194.                 System.out.println("|---------  ");
  195.                 System.out.println("|        |  ");
  196.                 System.out.println("|        O  ");
  197.                 System.out.println("|       /|\\");
  198.                 System.out.println("|       / \\");
  199.                 System.out.println("|           ");
  200.                 System.out.println("/           ");
  201.                 break;
  202.         }
  203.     }
  204.  
  205.     public static void main(String[] args) {
  206.         Wisielec gra = new Wisielec("test");
  207.  
  208.         System.out.println("Haslo zostało wylosowane. Zgaduj litery.");
  209.         Scanner scan = new Scanner(System.in);
  210.         String znak;
  211.         boolean poprawnie;
  212.         while(true){
  213.             System.out.println("Podaj litere");
  214.             znak = scan.nextLine();
  215.             gra.sprawdz_znak(znak);
  216.             gra.pokaz_haslo();
  217.             System.out.println("Pozostała ilość żyć: " + gra.getZycia());
  218.             gra.rysuj_wisielca();
  219.             if(gra.czyKoniecGry()){
  220.                 if(gra.getIlosc_odgadnietych_znakow() == gra.getHaslo().length()){
  221.                     System.out.println("Wygrales");
  222.                 }else{
  223.                     System.out.println("Przegrales. Hasło to: " + gra.getHaslo());
  224.                 }
  225.                 break;
  226.             }
  227.         }
  228.  
  229.     }
  230.  
  231. }
Advertisement
Add Comment
Please, Sign In to add comment