diff --git a/Hiko/Hiko/Hiko.cs b/Hiko/Hiko/Hiko.cs
index e66cb756c921710dc36f4ce07db8eeed7098b668..1ae6b300e582313644cc02d3a12119720e182fc4 100644
--- a/Hiko/Hiko/Hiko.cs
+++ b/Hiko/Hiko/Hiko.cs
@@ -28,6 +28,7 @@ namespace Hiko
         PhysicsObject pelaaja;
         GameObject tahtain;
         Image taustakuva = LoadImage("Testitaustakuva");
+        IntMeter pistelaskuri;
 
         /// <summary>
         /// Luodaan peliin kenttä
@@ -63,6 +64,24 @@ namespace Hiko
         public override void Begin()
         {
             // Kirjoita ohjelmakoodisi tähän
+            string[] vaihtoehdot = { "Aloita peli", "Parhaat pisteet", "Lopeta" };
+            MultiSelectWindow alkuvalikko = new MultiSelectWindow("HIKO", vaihtoehdot);
+            
+            alkuvalikko.AddItemHandler(0, AloitaPeli);
+            //alkuvalikko.AddItemHandler(1, ParhaatPisteet);
+            alkuvalikko.AddItemHandler(2, Exit);
+            alkuvalikko.Color = Color.AshGray;
+            alkuvalikko.SetButtonColor(Color.BlueGray);
+            alkuvalikko.SetButtonTextColor(Color.Blue);
+            Add(alkuvalikko);
+        }
+
+
+        /// <summary>
+        /// Tämä aliohjelma aloittaa sen varsinaisen pelin
+        /// </summary>
+        public void AloitaPeli()
+        {
 
             Level.CreateBorders();
             Camera.ZoomToLevel();
@@ -75,8 +94,9 @@ namespace Hiko
             LuoOhjaimet();
             LuoTahtain();
             LuoAikalaskuri();
-            tiles.SetTileMethod('X',LuoMaavihu);
-            tiles.SetTileMethod('_',LuoTaso);
+            LuoPisteLaskuri();
+            tiles.SetTileMethod('X', LuoMaavihu);
+            tiles.SetTileMethod('_', LuoTaso);
             tiles.Execute(tileWidth, tileHeight);
         }
 
@@ -93,10 +113,15 @@ namespace Hiko
             pelaaja.Image = LoadImage("pääjehu2");
             pelaaja.CanRotate = false;
             pelaaja.AddCollisionIgnoreGroup(1);
+            AddCollisionHandler<PhysicsObject, Vihu>(pelaaja, PelaajaTormasi);
             Add(pelaaja);
             return pelaaja;
         }
-
+        void PelaajaTormasi(PhysicsObject tormaaja, Vihu kohde)
+        {
+            MessageDisplay.Add("You died!");
+            //Exit();
+        }
 
         /// <summary>
         /// Luo vihollisolion
@@ -116,6 +141,7 @@ namespace Hiko
             tasoaivot.Speed = 100;
             maavihu.Brain = tasoaivot;
             maavihu.Image = LoadImage("örkki");
+            
             Add(maavihu);
         }
 
@@ -256,6 +282,21 @@ namespace Hiko
             
         }
 
+        /// <summary>
+        /// Tämä aliohjelma luo pistelaskurin
+        /// </summary>
+        void LuoPisteLaskuri()
+        {
+            pistelaskuri = new IntMeter(0);
+
+            Label pistenaytto = new Label();
+            pistenaytto.X = Screen.Left + 100;
+            pistenaytto.Y = Screen.Top - 100;
+            pistenaytto.TextColor = Color.Black;
+            pistenaytto.Color = Color.White;
 
+            pistenaytto.BindTo(pistelaskuri);
+            Add(pistenaytto);
+        }
     }
 }
\ No newline at end of file