diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..981aeb8 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/out \ No newline at end of file diff --git a/src/Language.java b/src/Language.java index 7e8cba9..efa8ad4 100644 --- a/src/Language.java +++ b/src/Language.java @@ -1,7 +1,7 @@ /** * Diese Klasse instanziert ein Objekt des Types Sprache. Dieses Objekt erlaubt * Sprachausgaben in 3 verschiedenen Sprachen. - * Die Sprachausgaben helfen dem Nutzer bei der Orientierung und geben an den Spielfortschritt an. + * Die Sprachausgaben helfen dem Nutzer bei der Orientierung und geben den Spielfortschritt an. */ public class Language { @@ -10,9 +10,9 @@ public class Language { private String outputLanguage = "de"; //Gibt mögliche Sprachen vor - private String germanShortCut = "de"; - private String englishShortCut = "en"; - private String vietnameseShortCut = "vn"; + private final String germanShortCut = "de"; + private final String englishShortCut = "en"; + private final String vietnameseShortCut = "vn"; public Language(String outputLanguage){ if(checkForValidLanguage(outputLanguage)){ @@ -21,85 +21,77 @@ public class Language { } /** + * Methode: setOutputLanguage * Diese Methode setzt das Datenfeld neu, falls es sich um eine Valide Sprache handelt. - * Sie informiert den Nutzer entsprechend - * @param outputLanguage + * Sie informiert den Nutzer entsprechend. + * @param outputLanguage beinhaltet den Sprachkürzel, welche neu gewählt werden sollte. */ public void setOutputLanguage(String outputLanguage){ if(checkForValidLanguage(outputLanguage)){ this.outputLanguage=outputLanguage; - if(outputLanguage.equals(germanShortCut)){ - System.out.println("Sprache auf Deutsch geändert"); - }else if(outputLanguage.equals(englishShortCut)){ - System.out.println("Language changed to english"); - }else if(outputLanguage.equals(vietnameseShortCut)){ - System.out.println("Đã thay đổi ngôn ngữ sang tiếng Việt"); - } + checkLanguage("Sprache auf Deutsch geändert","Language changed to english","Đã thay đổi ngôn ngữ sang tiếng Việt"); } } /** + * Methode: checkForValidLanguage * Diese Methode prüft ob es sich um eine Valide Sprache handelt. - * Gibt true zurück,wenn valide.Sonst false und entsprechende Konsolenausgabe. - * @param outputLanguage - * @return boolean + * Falls nicht Valide wird der Nutzer zusätzlich über eine entsprechende Konsolenausgabe informiert. + * @param outputLanguage Enthält den Sprachkürzel, auf welche die Sprachausgabe gesetzt werden sollte. + * @return boolean True falls Sprachkürzel valide andernfalls false */ - public boolean checkForValidLanguage(String outputLanguage){ + private boolean checkForValidLanguage(String outputLanguage){ if(outputLanguage.equals(germanShortCut)||outputLanguage.equals(englishShortCut)||outputLanguage.equals(vietnameseShortCut)){ return true; } - if(this.outputLanguage.equals(germanShortCut)){ - System.out.println("Diese Sprache ist nicht zulässig"); - }else if(this.outputLanguage.equals(englishShortCut)){ - System.out.println("This Language is not valid"); - }else if(this.outputLanguage.equals(vietnameseShortCut)) { - System.out.println("Ngôn ngữ này không được phép"); - } + checkLanguage("Diese Sprache ist nicht zulässig","This Language is not valid","Ngôn ngữ này không được phép"); return false; } /** - * Diese Methode gibt den Gewinnertext aus. - * @param player + * Methode: outputWinnerText + * Diese Methode gibt den Gewinnertext über eine Konsolenausgabe aus. + * @param player beinhaltet den Integer, welcher den Spieler representiert. */ public void outputWinnerText(int player){ - if(outputLanguage.equals(germanShortCut)){ - System.out.println("############### Wir haben einen Gewinner ###############"); - System.out.printf("Spieler %d hat gewonnen! Gut gespielt%n",player); - }else if(outputLanguage.equals(englishShortCut)){ - System.out.println("############### Winner Winner Chicken Dinner ###############"); - System.out.printf("Player %d won! Well played genius%n",player); - }else if(outputLanguage.equals(vietnameseShortCut)){ - System.out.println("############### Chúng ta có một người chiến thắng ###############"); - System.out.printf("Người chơi %d đã thắng. Làm tốt!%n",player); - } + checkLanguage("Spieler "+player+" hat gewonnen! Gut gespiel","Player "+player+" won! Well played genius!","Người chơi "+player+" đã thắng. Làm tốt!"); } /** + * Methode: outputNextPlayerText * Diese Methode informiert den Nutzer über den Spieler, welcher am Zug ist. - * @param nextPlayer + * @param nextPlayer beinhaltet den Integer, welcher den Spieler representiert. */ public void outputNextPlayerText(int nextPlayer){ - if(outputLanguage.equals(germanShortCut)){ - System.out.printf("Du bist dran %d%n",nextPlayer); - }else if(outputLanguage.equals(englishShortCut)){ - System.out.printf("It's your turn %d%n",nextPlayer); - }else if(outputLanguage.equals(vietnameseShortCut)){ - System.out.printf("Đến lượt bạn %d%n",nextPlayer); - } + checkLanguage("Du bist dran "+ nextPlayer,"It's your turn "+nextPlayer,"Đến lượt bạn "+nextPlayer); } /** - * Diese Methode informiert den Nutzer falls ein falsches Feld ausgewählt wird. + * Methode: outputWrongFieldSelected + * Diese Methode informiert den Nutzer über eine Konsolenausgabe, falls ein falsches Feld ausgewählt wird. */ public void outputWrongFieldSelected(){ + checkLanguage("Dieses Feld ist nicht zulässig","This Field is not valid","Trường này không được phép"); + } + + /** + * Methode: checkLanguage + * Diese Methode prüft auf welchen Wert das Datenfeld gesetzt ist und gibt die entsprechende Aussage zurück. + * @param de Enthält die Deutschsprachige Aussage. + * @param en Enthält die Englischsprachige Aussage. + * @param vn Enthält die Vietnamesischsprachige Aussage. + * @return Gibt die Aussage zurück, welche dem Datenfeld outputLanguage entspricht. + */ + private String checkLanguage(String de,String en, String vn){ + String result = ""; if(outputLanguage.equals(germanShortCut)){ - System.out.println("Dieses Feld ist nicht zulässig"); + result = de; }else if(outputLanguage.equals(englishShortCut)){ - System.out.println("This Field is not valid"); + result = en; }else if(outputLanguage.equals(vietnameseShortCut)){ - System.out.println("Trường này không được phép"); + result = vn; } + return result; } }