diff --git a/.idea/modules.xml b/.idea/modules.xml
index beae4e23c8e3b3ba09a6d5225e6cde44eb92f153..6c329bed375bbca2f09d1d5752ec12b3c4583414 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,7 +2,7 @@
 <project version="4">
   <component name="ProjectModuleManager">
     <modules>
-      <module fileurl="file://$PROJECT_DIR$/untitled4.iml" filepath="$PROJECT_DIR$/untitled4.iml" />
+      <module fileurl="file://$PROJECT_DIR$/UNO_THE_GAME.iml" filepath="$PROJECT_DIR$/UNO_THE_GAME.iml" />
     </modules>
   </component>
 </project>
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 387eb97ae37bf6306a6a01e684c004ad77ada2b6..d3f410a31eb53e71650e2c8af803d1cb0e951738 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -5,12 +5,14 @@
   </component>
   <component name="ChangeListManager">
     <list default="true" id="8ee76397-4d4b-4c15-b3e9-7f1b49a6172e" name="Changes" comment="UNO">
+      <change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/Regelwerk.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Regelwerk.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/SpielerHand.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SpielerHand.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/UNO.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/UNO.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/UnoDeck.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/UnoDeck.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/UnoKarte.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/UnoKarte.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/untitled4.iml" beforeDir="false" afterPath="$PROJECT_DIR$/UNO_THE_GAME.iml" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -20,6 +22,9 @@
   <component name="Git.Settings">
     <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
   </component>
+  <component name="HighlightingSettingsPerFile">
+    <setting file="file://$PROJECT_DIR$/src/UNO.java" root0="FORCE_HIGHLIGHTING" />
+  </component>
   <component name="MarkdownSettingsMigration">
     <option name="stateVersion" value="1" />
   </component>
@@ -29,19 +34,27 @@
     <option name="hideEmptyMiddlePackages" value="true" />
     <option name="showLibraryContents" value="true" />
   </component>
-  <component name="PropertiesComponent">{
-  &quot;keyToString&quot;: {
-    &quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
-    &quot;WebServerToolWindowFactoryState&quot;: &quot;false&quot;,
-    &quot;last_opened_file_path&quot;: &quot;C:/Users/bluml/IdeaProjects/untitled4/src&quot;,
-    &quot;node.js.detected.package.eslint&quot;: &quot;true&quot;,
-    &quot;node.js.detected.package.tslint&quot;: &quot;true&quot;,
-    &quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;,
-    &quot;node.js.selected.package.tslint&quot;: &quot;(autodetect)&quot;,
-    &quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
+  <component name="PropertiesComponent"><![CDATA[{
+  "keyToString": {
+    "Downloaded.Files.Path.Enabled": "false",
+    "Repository.Attach.Annotations": "false",
+    "Repository.Attach.JavaDocs": "false",
+    "Repository.Attach.Sources": "false",
+    "RunOnceActivity.OpenProjectViewOnStart": "true",
+    "RunOnceActivity.ShowReadmeOnStart": "true",
+    "WebServerToolWindowFactoryState": "false",
+    "last_opened_file_path": "C:/Users/bluml/IdeaProjects/untitled4/src",
+    "node.js.detected.package.eslint": "true",
+    "node.js.detected.package.tslint": "true",
+    "node.js.selected.package.eslint": "(autodetect)",
+    "node.js.selected.package.tslint": "(autodetect)",
+    "project.structure.last.edited": "Project",
+    "project.structure.proportion": "0.15",
+    "project.structure.side.proportion": "0.2",
+    "settings.editor.selected.configurable": "preferences.lookFeel",
+    "vue.rearranger.settings.migration": "true"
   }
-}</component>
+}]]></component>
   <component name="RecentsManager">
     <key name="CopyFile.RECENT_KEYS">
       <recent name="C:\Users\bluml\IdeaProjects\untitled4\src" />
@@ -53,7 +66,7 @@
   <component name="RunManager">
     <configuration name="UNO" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
       <option name="MAIN_CLASS_NAME" value="UNO" />
-      <module name="untitled4" />
+      <module name="UNO_THE_GAME" />
       <method v="2">
         <option name="Make" enabled="true" />
       </method>
@@ -73,7 +86,11 @@
       <option name="presentableId" value="Default" />
       <updated>1682062534174</updated>
       <workItem from="1682062535374" duration="7279000" />
-      <workItem from="1682084928918" duration="2023000" />
+      <workItem from="1682084928918" duration="3701000" />
+      <workItem from="1682341500035" duration="3084000" />
+      <workItem from="1682345612030" duration="611000" />
+      <workItem from="1682351791026" duration="658000" />
+      <workItem from="1682352510671" duration="10641000" />
     </task>
     <task id="LOCAL-00001" summary="UNO">
       <created>1682074031978</created>
@@ -82,7 +99,21 @@
       <option name="project" value="LOCAL" />
       <updated>1682074031978</updated>
     </task>
-    <option name="localTasksCounter" value="2" />
+    <task id="LOCAL-00002" summary="UNO">
+      <created>1682109374507</created>
+      <option name="number" value="00002" />
+      <option name="presentableId" value="LOCAL-00002" />
+      <option name="project" value="LOCAL" />
+      <updated>1682109374507</updated>
+    </task>
+    <task id="LOCAL-00003" summary="UNO">
+      <created>1682275599885</created>
+      <option name="number" value="00003" />
+      <option name="presentableId" value="LOCAL-00003" />
+      <option name="project" value="LOCAL" />
+      <updated>1682275599885</updated>
+    </task>
+    <option name="localTasksCounter" value="4" />
     <servers />
   </component>
   <component name="TypeScriptGeneratedFilesManager">
diff --git a/untitled4.iml b/UNO_THE_GAME.iml
similarity index 100%
rename from untitled4.iml
rename to UNO_THE_GAME.iml
diff --git a/src/Regelwerk.java b/src/Regelwerk.java
index 02f6802f6184a8ad66157da70cfe26cbdd764498..b56445195bc6a1afa0490ab80ca03aed4d3d10c1 100644
--- a/src/Regelwerk.java
+++ b/src/Regelwerk.java
@@ -8,9 +8,9 @@ public class Regelwerk {
     public ArrayList<Integer> reihenfolge;
     public ArrayList<Farbe> color;
 
-    public void reihenfolgeFestlegen() {
+    public void reihenfolgeFestlegen() { // spieler index in Array gespeichert
         reihenfolge = new ArrayList<Integer>();
-        reihenfolge.add(0, 0);
+        reihenfolge.add(0, 0); // index , value
         reihenfolge.add(1, 1);
         reihenfolge.add(2, 2);
         reihenfolge.add(3, 3);
@@ -18,24 +18,24 @@ public class Regelwerk {
 
     public UnoKarte ersteKarte(UnoDeck hand, int zug, int anzahl) {
         if (zug == 1) {
-            Random rand = new Random();
-            int n = rand.nextInt(anzahl);
-            UnoKarte aktuellekarte = hand.get(n);
+            Random rand = new Random(); // random zahl wird generriert
+            int n = rand.nextInt(anzahl); // random zahl von 0 bis DeckSize wird in n gespeichert
+            UnoKarte aktuellekarte = hand.get(n); // n wird in aktuelle karte gespeichert
             System.out.println("Die Aktuelle Karte:");
-            System.out.println(aktuellekarte);
+            System.out.println(aktuellekarte); // ausgabe
             return aktuellekarte;
         }
         return hand.get(1);
     }
     public void aktuelleKarte(UnoKarte letzteKarte) {
         System.out.println("Die Aktuelle Karte:");
-        System.out.println(letzteKarte);
+        System.out.println(letzteKarte); // ausgabe aktuelle karte
     }
 
     public int reihenfolge() {
-        int aktuell = reihenfolge.get(0);
-        reihenfolge.remove(0);
-        reihenfolge.add(aktuell);
+        int aktuell = reihenfolge.get(0); // erster spieler wird gespeichert
+        reihenfolge.remove(0); //erster spieler wird geklöscht
+        reihenfolge.add(aktuell); // erster spieler wird am ende des arrays eingefügt
         return aktuell;
     }
     public void wunschFestlegen(){
@@ -44,21 +44,21 @@ public class Regelwerk {
     }
 
     public boolean karteLegbar(UnoKarte aktuellekarte, UnoKarte neueKarte, String PlayerName[], UnoDeck deck, SpielerHand spielerHand) {
-        if (color.size() == 2) {
+        if (color.size() == 2) {// wird erst bei einem kartenWunsch genutzt
             System.out.println("Wunchfarbe: " + color.get(1));
-            if ((color.get(1) == neueKarte.getFarbe()) || (color.get(0) == neueKarte.getFarbe())) {
-                color.remove(1);
+            if ((color.get(1) == neueKarte.getFarbe()) || (color.get(0) == neueKarte.getFarbe())) { //  bedingung wunschfarbe selbe wie aktuelle Karten farbe  oder bedingung ist wild auf wild
+                color.remove(1); // karte wird gelegt
                 return Lege(aktuellekarte, neueKarte, PlayerName, deck, spielerHand);
             }else {
                 return false;
             }
-        } else {
+        } else { // wird aufgerufen wenn keine wunschfarbe existiert
             return Lege(aktuellekarte, neueKarte, PlayerName, deck, spielerHand);
         }
     }
 
     public boolean Lege(UnoKarte aktuellekarte, UnoKarte neueKarte,String PlayerName[], UnoDeck deck, SpielerHand spielerHand){
-        if ((aktuellekarte.getFarbe() == neueKarte.getFarbe()) || (Farbe.Wild == neueKarte.getFarbe()) || ((aktuellekarte.getFarbe() == Farbe.Wild) && (Farbe.Wild != neueKarte.getFarbe()))) {
+        if ((aktuellekarte.getFarbe() == neueKarte.getFarbe()) || (Farbe.Wild == neueKarte.getFarbe()) || ((aktuellekarte.getFarbe() == Farbe.Wild) && (Farbe.Wild != neueKarte.getFarbe()))) {// Farb kontrolle -> Bedingungen ob legbar oder nicht
             if (neueKarte.getWert() == Wert.Zwei_Ziehen) {
                 Ziehen(PlayerName, deck, 2, spielerHand);
             } else if (neueKarte.getWert() == Wert.Aussetzen) {
@@ -72,7 +72,7 @@ public class Regelwerk {
                 Ziehen(PlayerName, deck, 4, spielerHand);
             }
             return true;
-        } else if ((aktuellekarte.getWert() == neueKarte.getWert()) || (Farbe.Wild == neueKarte.getFarbe()) || ((aktuellekarte.getFarbe() == Farbe.Wild) && (Farbe.Wild != neueKarte.getFarbe()))) {
+        } else if ((aktuellekarte.getWert() == neueKarte.getWert()) || (Farbe.Wild == neueKarte.getFarbe()) || ((aktuellekarte.getFarbe() == Farbe.Wild) && (Farbe.Wild != neueKarte.getFarbe()))) {// Wert kontrolle -> (zB gruene vier geht auft blaue vier)
             if (neueKarte.getWert() == Wert.Zwei_Ziehen) {
                 Ziehen(PlayerName, deck, 2, spielerHand);
             } else if (neueKarte.getWert() == Wert.Aussetzen) {
@@ -94,40 +94,40 @@ public class Regelwerk {
         spielerHand.befuelleSpieleHand(spieler, deck, anzahl);
     }
     public void aussetzen(){
-        int aktuell = reihenfolge.get(0);
-        reihenfolge.remove(0);
-        reihenfolge.add(aktuell);
+        int aktuell = reihenfolge.get(0);// spieler wird in aktuell gespeichert
+        reihenfolge.remove(0);// nächster spieler wird gelöscht
+        reihenfolge.add(aktuell);// wird am ende des arrays hinzugefügt
     }
     public void richtungaendern(){
-        int [] richtungswechsel = new int[4];
+        int [] richtungswechsel = new int[4];// neuer array richtungswechsel
         for(int i = 0; i < reihenfolge.size(); i++){
-            richtungswechsel[i] = reihenfolge.get(i);
+            richtungswechsel[i] = reihenfolge.get(i);// kopiervorgang der spieler zu richtungswechsel
         }
         int size = reihenfolge.size();
         for (int i = 0; i < size; i++) {
-            reihenfolge.remove(0);
+            reihenfolge.remove(0);// löscht die einträge vom altem array
         }
         for(int i = 3; i >= 0; i--){
-            reihenfolge.add(richtungswechsel[i]);
+            reihenfolge.add(richtungswechsel[i]);// werte werden umgekehrt in den alten array wieder eingefügt
         }
-        int zwischen = reihenfolge.get(0);
-        reihenfolge.remove(0);
-        reihenfolge.add(zwischen);
+        int zwischen = reihenfolge.get(0); // erster spieler wird in zwischen gespeichert
+        reihenfolge.remove(0);// erster spieler wird gelöscht
+        reihenfolge.add(zwischen);// erster spieler wird im array neu eingefügtr aber hinten
     }
     public void wunschFarbe(){
         System.out.println("Welche Farbe möchteswt du?(Gruen, Blau, Gelb, Rot)");
         switch (scanner.nextLine().toLowerCase()){
             case "gruen":
-                color.add(Farbe.Gruen);
+                color.add(Farbe.Gruen);// fügt in den array eine gruene Karte hinzu so kann als nächstes nur gruen gelegt werden
                 break;
             case "blau":
-                color.add(Farbe.Blau);
+                color.add(Farbe.Blau);// "
                 break;
             case "gelb":
-                color.add(Farbe.Gelb);
+                color.add(Farbe.Gelb);// "
                 break;
             case "rot":
-                color.add(Farbe.Rot);
+                color.add(Farbe.Rot);// "
                 break;
         }
     }
diff --git a/src/SpielerHand.java b/src/SpielerHand.java
index 574eea8fba954462a9ce4411f5fb83dc3d7396a3..fae31a8148a5d2452cb62b29ea86cb104a3a4b0f 100644
--- a/src/SpielerHand.java
+++ b/src/SpielerHand.java
@@ -5,54 +5,55 @@ public class SpielerHand{
     private String[] spielerNamen;
     public ArrayList<ArrayList<UnoKarte>> spielerHaende;
 
-    public SpielerHand(String spieler1, String spieler2, String spieler3, String spieler4) {
-        spielerNamen = new String[] {spieler1, spieler2, spieler3, spieler4};
-        spielerHaende = new ArrayList<ArrayList<UnoKarte>>();
+    public SpielerHand(String spieler1, String spieler2, String spieler3, String spieler4) { //1
+        spielerNamen = new String[] {spieler1, spieler2, spieler3, spieler4}; // in spielerNamen werden alle spielernamen die übergeben worden gespeichert
+        spielerHaende = new ArrayList<ArrayList<UnoKarte>>(); // erstellen vom 2 dimesionalem array
         for (int i = 0; i < 4; i++) {
-            spielerHaende.add(new ArrayList<UnoKarte>());
+            spielerHaende.add(new ArrayList<UnoKarte>()); //in dem einen array 4 weitere arrays erstellen
             //Diese Methode erstellt zu jedem Spieler eine ArrayListe
         }
     }
 
-    public void fuegeKarteHinzu(int spielerIndex, UnoDeck deck, int kartenIndex) {
-        UnoKarte karte = deck.get(kartenIndex);
-        spielerHaende.get(spielerIndex).add(karte);
-        deck.hand.remove(kartenIndex);
+    public void fuegeKarteHinzu(int spielerIndex, UnoDeck deck, int kartenIndex) {//3
+        UnoKarte karte = deck.get(kartenIndex); // karte wird erstellt mit der random n als kartenIndex
+        spielerHaende.get(spielerIndex).add(karte); //spielerhand wird karte hinzugefügt
+        deck.hand.remove(kartenIndex);//karte wird aus dem deck entfernt
         //Diese Fuktion fügt karten in die Hand des jeweiligen spielers
     }
 
-    public void entferneKarteHand(int spielerIndex, int kartenIdex, UnoDeck deck, int zug){
+    public void entferneKarteHand(int spielerIndex, int kartenIdex, UnoDeck deck, int zug){//5
         Regelwerk regel = new Regelwerk();
-        kartenIdex = kartenIdex-1;
-        regel.aktuelleKarte(spielerHaende.get(spielerIndex).get(kartenIdex));
-        deck.hand.add(spielerHaende.get(spielerIndex).get(kartenIdex));
-        spielerHaende.get(spielerIndex).remove(kartenIdex);
+        kartenIdex = kartenIdex-1; // Abfrage auf der konsole ist von 1-7 aber im array ist es von 0-6 deswegen -1
+        regel.aktuelleKarte(spielerHaende.get(spielerIndex).get(kartenIdex)); // aktuelle karte wird ausgegeben
+        deck.hand.add(spielerHaende.get(spielerIndex).get(kartenIdex));//karte wird dem deck hinzugefügt
+        spielerHaende.get(spielerIndex).remove(kartenIdex); //karte wird aus der hand des spielers entfernt
         //Diese Methode entfernt eine Karte aus der Hand des Spielers
     }
 
-    public void zeigeHaende(int indexSpieler) {
+    public void zeigeHaende(int indexSpieler) {//4
         System.out.println(spielerNamen[indexSpieler] + ":");
-        int j = 1;
+        int j = 1;// Index der Karten auf der hand
         for (UnoKarte karte : spielerHaende.get(indexSpieler)) {
             System.out.print("Index: " + j +"\t");
-            System.out.println(karte);
-            j++;
+            System.out.println(karte);//Karte wird ausgegeben
+            j++;//zahl wird erhöht für die nächste Karte
         }
         System.out.println();
         //Diese Methode zeigt die Hand des Spielers
     }
-    public void befuelleSpieleHand(int spielerIndex, UnoDeck deck, int anzahl){
-        Random rand = new Random();
+    public void befuelleSpieleHand(int spielerIndex, UnoDeck deck, int anzahl){//2
+        Random rand = new Random(); // random zahl wird in rand gespeichert
         for (int i = 0; i < anzahl; i++) {
-            int n = rand.nextInt(deck.hand.size());
-            fuegeKarteHinzu(spielerIndex, deck, n);
+            int n = rand.nextInt(deck.hand.size()); // random zahl von 0 bis DeckSize
+            fuegeKarteHinzu(spielerIndex, deck, n); // methode wird aufgerufen
         }
         //Diese Methode gibt die Anzhal der Karten die der Spieler bekommen soll und wählt die zufähligge karte aus
     }
-    public void ranking(){
+    public void ranking(){//6
         for (int i = 0; i < spielerHaende.size(); i++){
-            System.out.println(spielerNamen[i] + " Menge an Karten: " +spielerHaende.get(i).size());
+            System.out.println(spielerNamen[i] + " Menge an Karten: " +spielerHaende.get(i).size());// spieler werden azsgegeben und die menge an karten in der jeweiligen hand aber nicht sortiert
         }
     }
 }
 
+
diff --git a/src/UNO.java b/src/UNO.java
index 1e4a9333a2685d4eb2e206a90d4d139ae90bba40..74ed1011028ea15271773fe4e23848b729e3042e 100644
--- a/src/UNO.java
+++ b/src/UNO.java
@@ -1,21 +1,23 @@
 import java.util.Scanner;
 
+
 public class UNO {
     public static void main(String[] args) {
+        //Die benötigten Klassen werden aufgerufen
         UnoDeck deck = new UnoDeck();
         Regelwerk regel = new Regelwerk();
         Scanner scanner = new Scanner(System.in);
 
+        // Sobald start geschrieben wurde, wird das ganze spiel erstellt
         System.out.println("Zum Starten, Start schreiben");
         String start = scanner.nextLine();
         if ("start".equals(start.toLowerCase())) {
-            deck.befuellen();
-            deck.mischeHand();
+            deck.befuellen();                       //Befüllt das deck
+            deck.mischeHand();                      //mischehand mischt das Deck
             regel.reihenfolgeFestlegen();
-            regel.wunschFestlegen();
-
-            //Spiler Namen Abfrage und Anzahl der Spieler
+            regel.wunschFestlegen();                //
 
+            //Spieler Namen Abfrage und Anzahl der Spieler
             System.out.println("Kurze Information: mind. 2 Player max. 4 Player");
             System.out.println("Enter Player Names:");
             int index;
@@ -23,6 +25,7 @@ public class UNO {
             String Antwort;
             String PlayerNameInput;
             String PlayerName[] = {"Joy Bot", "Note Bot", "Quick Bot", "CyBot"};
+            //Spielernamen werden befüllt
             for (index = 0; index < 4; ) {
                 PlayerAnzahl++;
                 PlayerNameInput = scanner.nextLine();
@@ -39,6 +42,7 @@ public class UNO {
                 }
             }
 
+            //Die Klasse Spielerhand wird aufgerufen und die PlayerName Paramentern werden übergeben
             SpielerHand spielerHand = new SpielerHand(PlayerName[0], PlayerName[1], PlayerName[2], PlayerName[3]);
             spielerHand.befuelleSpieleHand(0,deck,7);
             spielerHand.befuelleSpieleHand(1,deck,7);
@@ -53,8 +57,9 @@ public class UNO {
             int zug = 1;
             UnoKarte aktuelleKarte = regel.ersteKarte(deck,zug,deck.hand.size());
             int legeKarte;
-            boolean geht = false;   //Das boolean hilft bei der kontrolle ob die Karte legbar ist!!!!
+            boolean geht = false;   //Das boolean hilft bei der kontrolle, ob die Karte legbar ist!!!!
             while (!win) {
+                //Zug wird gestartet, sobald start geschrieben wird
                 System.out.println("Zum Zug Starten, Start schreiben");
                 if("start" .equals(scanner.nextLine().toLowerCase())) {
                     System.out.println("Die Aktuelle Karte: \n" + aktuelleKarte);
@@ -62,66 +67,80 @@ public class UNO {
                     int spieler = regel.reihenfolge();
                     spielerHand.zeigeHaende(spieler);
                     System.out.println("legen oder ziehen");
+                    //Karte Legen
                     if ("legen".equals(scanner.nextLine().toLowerCase())) {
                         System.out.println("Welche Karte?(Index)");
                         legeKarte = Integer.parseInt(scanner.nextLine());
                         UnoKarte neueKarte = spielerHand.spielerHaende.get(spieler).get(legeKarte-1);
                         geht = true;
+                        //Wenn Karte legbar, wird Karte gelegt
                         if (geht == regel.karteLegbar(aktuelleKarte, neueKarte,PlayerName, deck, spielerHand)) {
                             spielerHand.entferneKarteHand(spieler, legeKarte, deck, zug);
                             System.out.println("karte wurde gelegt");
                             aktuelleKarte =neueKarte;
                             geht = false;
+                            //Karte kann nicht gelegt werden
                         }else {
                             while(geht == true) {
                                 System.out.println("Die Aktuelle Karte: \n" + aktuelleKarte);
                                 System.out.println("karte wurde nicht gelegt");
                                 System.out.println("Weiterhin legen?(ja/nein)");
+                                //Karte legen wenn ja geschrieben wird
                                 if ("ja".equals(scanner.nextLine().toLowerCase())) {
                                     System.out.println("Welche Karte?(Index)");
                                     legeKarte = Integer.parseInt(scanner.nextLine());
                                     neueKarte = spielerHand.spielerHaende.get(spieler).get(legeKarte-1);
+                                    //Wenn Karte legbar, wird Karte gelegt
                                     if (geht == regel.karteLegbar(aktuelleKarte, neueKarte,PlayerName,deck, spielerHand)) {
                                         spielerHand.entferneKarteHand(spieler, legeKarte, deck, zug);
-                                        aktuelleKarte =neueKarte;
+                                        aktuelleKarte = neueKarte;
                                         System.out.println("karte wurde gelegt");
                                         geht = false;
                                     }
-                                }else {
+                                    // Karte ziehen wenn ja nicht geschrieben wird
+                                } else {
                                     spielerHand.befuelleSpieleHand(spieler, deck, 1);
                                     System.out.println("Karte wurde gezogen");
                                     geht = false;
                                 }
                             }
                         }
+                        //Karte Ziehen
                     } else {
                         spielerHand.befuelleSpieleHand(spieler, deck, 1);
                         int size = spielerHand.spielerHaende.get(spieler).size();
                         System.out.println("Die Aktuelle Karte: \n" + aktuelleKarte);
                         System.out.println("Gezogene Karte: " + spielerHand.spielerHaende.get(spieler).get(size - 1));
                         System.out.println("legen oder behalten?");
+                        //Gezogene Karte legen
                         if ("legen".equals(scanner.nextLine().toLowerCase())) {
                             UnoKarte neueKarte = spielerHand.spielerHaende.get(spieler).get(size - 1);
                             System.out.println(neueKarte);
                             geht = true;
+                            //Karte ist legbar
                             if (geht == regel.karteLegbar(aktuelleKarte, neueKarte,PlayerName, deck, spielerHand)) {
                                 spielerHand.entferneKarteHand(spieler, size, deck, zug);
                                 System.out.println("karte wurde gelegt");
                                 aktuelleKarte =neueKarte;
                                 geht = false;
+                                //Karte ist nicht legbar
                             }else {
                                 System.out.println("Karte wurde nicht gelegt");
                             }
                         }
                     }
+                    //Wenn nur eine Karte vorhanden -> UNO
                     if(spielerHand.spielerHaende.get(spieler).size() == 1){
                         System.out.println("Möchtest du Uno sagen?");
+                        //Wenn uno eingegeben wird -> weitermachen
                         if("uno" .equals(scanner.nextLine().toLowerCase())){
                             continue;
+                            // Falls nicht -> 1 ziehen
                         }else {
                             spielerHand.befuelleSpieleHand(spieler, deck, 1);
                         }
                     }
+                    //Spieler gewinnt wenn 0 Karten in der Hand ist und Spieler werden nach den Anzahl der Karten gewertet
                     if(spielerHand.spielerHaende.get(spieler).size() == 0){
                         spielerHand.ranking();
                         win = true;
diff --git a/src/UnoDeck.java b/src/UnoDeck.java
index e0eedebb63e9110593a392142abfbdc6e0bad5c3..2e59f87a6b50df4bb03355a4bb61a89c047c6cb3 100644
--- a/src/UnoDeck.java
+++ b/src/UnoDeck.java
@@ -82,3 +82,4 @@ public class UnoDeck {
         //Diese Methode verbindet die Farben und die Zahlen der jeweiligen enums
     }
 }
+
diff --git a/src/UnoKarte.java b/src/UnoKarte.java
index 089c0c254934e698ca39413b39c40c717e3e3daa..bcee8a4fd6347c592843e3a6aa50c27e66f7f833 100644
--- a/src/UnoKarte.java
+++ b/src/UnoKarte.java
@@ -29,4 +29,4 @@ enum Farbe {
 enum Wert {
     Null, Eins, Zwei, Drei, Vier, Fuenf, Sechs, Sieben, Acht, Neun, Aussetzen, Richtungswechsel, Zwei_Ziehen, Multicolor, Draw_Four
     //Das sind die eigenschaften der jeweiligen Karten
-}
\ No newline at end of file
+}