diff --git a/Matopeli/Matopeli/Matopeli.cs b/Matopeli/Matopeli/Matopeli.cs
index fba91822c9911f8a3325939fef5708490b99fc51..a6b886bdb928c88302428b40794553289a7fe133 100644
--- a/Matopeli/Matopeli/Matopeli.cs
+++ b/Matopeli/Matopeli/Matopeli.cs
@@ -9,11 +9,12 @@ using Jypeli.Widgets;
 
 namespace matopeli;
 
-/// @author Omanimi
+/// @author Paulus Kopperoinen
 /// @version 30.10.2023
 /// <summary>
-/// 
+/// Perinteinen matopeli, jossa tavoitteena kasvattaa matoa mahdollisimman suureksi omenia syömällä.
 /// </summary>
+
 public class matopeli : PhysicsGame
 {
     private static readonly string[] tasonkuva = {
@@ -65,11 +66,17 @@ public class matopeli : PhysicsGame
     private bool MatoLiikkunut;
 
     private bool OmenaKentalla;
+    
+    
     public override void Begin()
     {
         AloitaUusiPeli();
     }
 
+    
+    /// <summary>
+    /// Poistaa vanhan pelin tiedot ja alustaa uuden pelin
+    /// </summary>
     public void AloitaUusiPeli()
     {
         MatoKeho.Clear();
@@ -84,10 +91,13 @@ public class matopeli : PhysicsGame
         Asetaohjaimet();
         LuoAikalaskuri();
         LuoPistelaskuri();
-        //LuoEnnatyslaskuri();
         LuoOmena();
-
     }
+    
+    
+    /// <summary>
+    /// Määrittää ohjaimet, joita pelaaja voi käyttää ja mitä niitä painamalla tapahtuu
+    /// </summary>
     private void Asetaohjaimet()
     {
         Keyboard.Listen(Key.Up, ButtonState.Pressed, VaihdaSuuntaYlos, "Turn upwards");
@@ -98,6 +108,9 @@ public class matopeli : PhysicsGame
     }
 
 
+    /// <summary>
+    /// Laskee pisteet, joita kerätään omenoita syömällä
+    /// </summary>
     void LuoPistelaskuri()
     {
         pistelaskuri = new IntMeter(0);               
@@ -112,22 +125,11 @@ public class matopeli : PhysicsGame
         pistenaytto.BindTo(pistelaskuri);
         Add(pistenaytto);
     }
+    
 
-    void LuoEnnatyslaskuri()
-    {
-        Ennatyslaskuri = new IntMeter(0);               
-        
-        Label Ennatys = new Label(); 
-        Ennatys.X = Screen.Left + 700;
-        Ennatys.Y = Screen.Top - 10;
-        Ennatys.TextColor = Color.Black;
-        Ennatys.Color = Color.White;
-        Ennatys.Title = "Ennätys:";
-
-        Ennatys.BindTo(Ennatyslaskuri);
-        Add(Ennatys);
-    }
-
+    /// <summary>
+    /// Pelin asetukset
+    /// </summary>
     private void Asetukset()
     {
     leveys = 40;
@@ -141,10 +143,19 @@ public class matopeli : PhysicsGame
     OmenaKentalla = true;
     }
     
+    
+    /// <summary>
+    /// Päättää pelin ja aloitaa uuden, kun mato kuolee
+    /// </summary>
     private void MatoKuolee()
     {
         AloitaUusiPeli();
     }
+    
+    /// <summary>
+    /// Luo madon kentälle
+    /// </summary>
+    /// <returns></returns>
     private PhysicsObject LuoMato()
     {
         Mato = new Objektit(leveys-5, korkeus-5);
@@ -159,6 +170,7 @@ public class matopeli : PhysicsGame
         return Mato;
     }
 
+    
     /// <summary>
     /// Luodaan omena johonkin satunnaiseen kohtaan kartalla, joka ei ole samassa kohtaa madon kanssa.
     /// </summary>
@@ -176,6 +188,11 @@ public class matopeli : PhysicsGame
         return Omena;
     }
 
+    
+    /// <summary>
+    /// tehtävä on arpoa omenalle paikka, johon se luodaan. En ole vieläkään varma kuinka hyvin tämä toimii.
+    /// </summary>
+    /// <returns></returns>
     private Vector ArvoOmenaPaikka()
     {
         Vector OmenaPaikka;
@@ -218,6 +235,10 @@ public class matopeli : PhysicsGame
     }
         
     
+    /// <summary>
+    /// Luo kentän reunat
+    /// </summary>
+    /// <returns></returns>
     private PhysicsObject LuoSeina()
     {
         PhysicsObject Seina = new PhysicsObject(leveys, korkeus);
@@ -228,6 +249,7 @@ public class matopeli : PhysicsGame
         return Seina;
     }
     
+    
     /// <summary>
     /// Tehdään aliohjelma, joka luo uusia osia madon perään.
     /// </summary>
@@ -243,6 +265,10 @@ public class matopeli : PhysicsGame
         return MatoMuu;
     }
     
+    
+    /// <summary>
+    /// Tekee tarvittavat toimet, kun mato onnistuu syömään omenan
+    /// </summary>
     private void MatoSyoOmenan()
     {
         Omena.Destroy();
@@ -250,6 +276,10 @@ public class matopeli : PhysicsGame
         OmenaKentalla = false;
     }
     
+    
+    /// <summary>
+    /// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä ylös.
+    /// </summary>
      private void VaihdaSuuntaYlos()
         {
             
@@ -269,6 +299,10 @@ public class matopeli : PhysicsGame
             }
         }
      
+    
+    /// <summary>
+    /// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä alas.
+    /// </summary>
      private void VaihdaSuuntaAlas()
         {
             if (SuuntaYlos==true)
@@ -286,7 +320,11 @@ public class matopeli : PhysicsGame
                 SuuntaAlas = true;
             }
         }
-        
+      
+     
+    /// <summary>
+    /// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä oikeaan.
+    /// </summary>
      private void VaihdaSuuntaOikea()
         {
             if (SuuntaVasen == true)
@@ -306,7 +344,11 @@ public class matopeli : PhysicsGame
             }
 
         }
-        
+       
+     
+    /// <summary>
+    /// Antaa tiedon LiikutaMatoa aliohjelmalle, että madon pitäisi kääntyä vasempaan.
+    /// </summary>
      private void VaihdaSuuntaVasen()
         {
             if (SuuntaOikea==true)
@@ -324,6 +366,11 @@ public class matopeli : PhysicsGame
                 SuuntaAlas = false;
             }
         }
+     
+     
+     /// <summary>
+     /// Aikalaskuri toimii pelin moottorina ja antaa PaivitaKentälle tiedon, kun pitää tarkistaa mitä kentällä on tapahtunut.
+     /// </summary>
      private void LuoAikalaskuri()
         {
             Timer aikalaskuri = new Timer();
@@ -332,6 +379,7 @@ public class matopeli : PhysicsGame
             aikalaskuri.Timeout += PaivitaKentta; 
         }
 
+     
      /// <summary>
      /// Kun ajastimesta loppuu aika, siirtyy peli tähän funktioon, jonka tarkoituksena on hahmottaa, mitä kaikkea pelissä on tapahtunut ja miten siihen tulee reagoida.
      /// </summary>
@@ -347,15 +395,17 @@ public class matopeli : PhysicsGame
              LuoMatoKeho();
              LuoOmena();
          }
-
-
+         
          MatoSijainti.Add(new Vector(Mato.X,Mato.Y));
          LiikutaMatoa();
          LiikutaKehoa();
          MatoSijainti.Add(new Vector(Mato.X,Mato.Y));  
-
      }
      
+     
+     /// <summary>
+     /// LiikutaMatoa aliohjelman tehtävä on selvittää tieto siitä, mihin suuntaan on tarkoitus liikkua ja liikuttaa matoa siihen suuntaan.
+     /// </summary>
     private void LiikutaMatoa()
     {
         MatoLiikkunut = false;
@@ -385,10 +435,10 @@ public class matopeli : PhysicsGame
         MatoLiikkunut = true;
     }
 
+    
     /// <summary>
-    /// Tehdään silmukka, joka käy madon kaikki sijainnit ja liikuttaa madon muut osat niiden mukaan.
+    /// Liikutakehoa, aliohjelman tehtävänä on liikuttaa madon kehoa sen pään mukaisesti.
     /// </summary>
-
     private void LiikutaKehoa()
     {
         if (MatoKeho.Count==0)