From 43d0444dc1002067dab578cb4a3a3aa8bd86ad3a Mon Sep 17 00:00:00 2001 From: jez04 <david.jezek@post.cz> Date: Wed, 25 Oct 2023 13:13:30 +0200 Subject: [PATCH] solution of game --- Obesenec/src/cz/vsb/krouzek/Hraj.java | 38 ++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/Obesenec/src/cz/vsb/krouzek/Hraj.java b/Obesenec/src/cz/vsb/krouzek/Hraj.java index 973fcd4..3fa0f83 100644 --- a/Obesenec/src/cz/vsb/krouzek/Hraj.java +++ b/Obesenec/src/cz/vsb/krouzek/Hraj.java @@ -5,22 +5,52 @@ import java.util.List; public class Hraj { private static OknoSibenice oknoSibenice; + private static String hadaneSlovo =""; + private static char[] tajenka = new char[0]; public static void main(String[] args) { oknoSibenice = new OknoSibenice(Hraj::startHry, Hraj::konecHry, Hraj::zvolenoPismeno); - - + oknoSibenice.setWorldText(""); } public static void startHry() { - + hadaneSlovo = SibeniceZaklad.vyberNahodneSlovo().toUpperCase(); + tajenka = new char[hadaneSlovo.length()]; + for (int i = 0; i < tajenka.length; i++) { + tajenka[i] = '_'; + } + oknoSibenice.setWorldText(new String(tajenka)); + oknoSibenice.setInfoText(""); + oknoSibenice.setMistakeCount(0); } public static void konecHry() { - + oknoSibenice.setWorldText(new String(hadaneSlovo)); + oknoSibenice.setInfoText("KONEC"); } public static void zvolenoPismeno(List<Character> pismena) { + boolean uhodnuto = false; + for (Character character : pismena) { + for (int i = 0; i < hadaneSlovo.length(); i++) { + if(hadaneSlovo.charAt(i) == character) { + tajenka[i] = character; + uhodnuto = true; + } + } + } + if(!uhodnuto) { + oknoSibenice.setMistakeCount(oknoSibenice.getMistakeCount()+1); + } else { + oknoSibenice.setWorldText(new String(tajenka)); + } + if(!new String(tajenka).contains("_")) { + oknoSibenice.setInfoText("VĂťHRA"); + } + if(oknoSibenice.getMistakeCount() >= 8) { + konecHry(); + oknoSibenice.setInfoText("PROHRA"); + } } } -- GitLab