From 8de2bcb29ae1bd7610db18e8326a24aa152f0cab Mon Sep 17 00:00:00 2001
From: Pekka Pihlajamaa <pepihlaj@student.jyu.fi>
Date: Tue, 15 Nov 2022 11:08:33 +0200
Subject: [PATCH] viimeiset viilaukset

---
 Hiko/Hiko/Hiko.cs | 81 +++++++++++++++++++++++++++++++----------------
 1 file changed, 54 insertions(+), 27 deletions(-)

diff --git a/Hiko/Hiko/Hiko.cs b/Hiko/Hiko/Hiko.cs
index 0488e8a..36a827e 100644
--- a/Hiko/Hiko/Hiko.cs
+++ b/Hiko/Hiko/Hiko.cs
@@ -3,11 +3,12 @@ using Jypeli.Assets;
 using Jypeli.Controls;
 using Jypeli.Widgets;
 using System;
-using System.Collections.Generic;
-using System.Runtime.CompilerServices;
-using System.Security.Cryptography;
-using System.Threading;
 
+/// @author pepihlaj
+/// @version 15.11.2022
+/// <summary>
+/// HIKO peli
+/// </summary>
 namespace Hiko
 {
     /// <summary>
@@ -20,24 +21,29 @@ namespace Hiko
         public Vihu(double leveys, double korkeus)
             :base(leveys, korkeus)
         {
-            elamalaskuri.LowerLimit += delegate { this.Destroy(); };
+            elamalaskuri.LowerLimit += delegate { this.Destroy(); }; //kun vihun hp tippuu nolliin se poistetaan
         }
     }
 
 
+
+    /// <summary>
+    /// Peli
+    /// </summary>
     public class Hiko : PhysicsGame
     {
-        PhysicsObject pelaaja;
-        GameObject tahtain;
-        Image taustakuva = LoadImage("Testitaustakuva");
-        IntMeter pistelaskuri;
-        Label aikanaytto;
-        int jaljellaOlevatVihut;
-        private ScoreList topLista = new ScoreList(10, false, 0);
-        bool temp = true;
+        PhysicsObject pelaaja; //varsinainen kontrolloitava pelaaja
+        GameObject tahtain; //tähtäin jota käyttäjä voi kontrolloida
+        Image taustakuva = LoadImage("Testitaustakuva"); //taustakuva peliin
+        IntMeter pistelaskuri; //piste laskuri jota käytetään käyttäjän tehokkuuden laskemiseen
+        Label aikanaytto; //tällä saadaan aika käytettävään muotoon
+        int jaljellaOlevatVihut; //vihujen lkm kentässä, pelaaja voittaa pelin kun niitä on nolla
+        private ScoreList topLista = new ScoreList(10, false, 0); 
+        bool tarkistin = true;
+
 
         /// <summary>
-        /// Luodaan peliin kenttä
+        /// Tällä taulukolla luodaan peliin kenttä
         /// </summary>
         private static readonly String[] lines =
         {
@@ -67,6 +73,13 @@ namespace Hiko
                   };
         private static readonly int tileWidth = 800 / lines[0].Length;
         private static readonly int tileHeight = 480 / lines.Length;
+
+
+        /// <summary>
+        /// Tämä funktio laskee vihollisten lukumäärän taulukosta silmukalla
+        /// </summary>
+        /// <param name="vihutaulukko">Annettu taulukko josta vihut lasketaan</param>
+        /// <returns></returns>
         public static int LaskeVihollistenMaara(String[] vihutaulukko)
         {
             int vihujenLkm = 0;
@@ -80,9 +93,13 @@ namespace Hiko
             return vihujenLkm;
         }
         
+
+        /// <summary>
+        /// Begin metodi avaa alkuvalikon
+        /// </summary>
         public override void Begin()
         {
-            if (temp)
+            if (tarkistin)
             {
                 // Kirjoita ohjelmakoodisi tähän
 
@@ -97,7 +114,7 @@ namespace Hiko
                 alkuvalikko.SetButtonTextColor(Color.Blue);
                 Add(alkuvalikko);
             }
-            temp = false;
+            tarkistin = false;
         }
 
 
@@ -134,17 +151,16 @@ namespace Hiko
         }
 
 
+        /// <summary>
+        /// Tämä aliohjelma avaa parhaat pisteet alkuvalikkoon
+        /// </summary>
         void ParhaatPisteet()
         {
-            temp = true;
+            tarkistin = true;
             topLista = DataStorage.TryLoad<ScoreList>(topLista, "pisteet.xml");
             HighScoreWindow topIkkuna = new HighScoreWindow("Tehokkaimmat nukkujat", topLista);
-
             Add(topIkkuna);
-
             Mouse.Listen(MouseButton.Left, ButtonState.Down, Begin, null);
-
-                
         }
 
         
@@ -169,8 +185,8 @@ namespace Hiko
         /// <summary>
         /// Kun pelaaja törmää vihuun aliohjelma
         /// </summary>
-        /// <param name="tormaaja"></param>
-        /// <param name="kohde"></param>
+        /// <param name="tormaaja">pelaaja törmää</param>
+        /// <param name="kohde">kohde johon pelaaja törmää</param>
         void PelaajaTormasi(PhysicsObject tormaaja, Vihu kohde)
         {
             PelaajaKuolee();
@@ -203,12 +219,13 @@ namespace Hiko
             Add(topIkkuna);
         }
 
+
         /// <summary>
-        /// Luo vihollisolion
+        /// Tämä luo maavihun kentälle
         /// </summary>
-        /// <param name="paikka"></param>
-        /// <param name="leveys"></param>
-        /// <param name="korkeus"></param>
+        /// <param name="paikka">mihin kohtaan kentälle sen luo</param>
+        /// <param name="leveys">vihun hitboxin leveys</param>
+        /// <param name="korkeus">vihun hitboxin korkeus</param>
         void LuoMaavihu(Vector paikka, double leveys, double korkeus)
         {
             //PlatformCharacter maavihu = new PlatformCharacter(leveys, korkeus);
@@ -335,6 +352,9 @@ namespace Hiko
         }
 
 
+        /// <summary>
+        /// Tätä aliohjelmaa kutsutaan kun pelaaja voittaa pelin
+        /// </summary>
         void VoitaPeli()
         {
             MessageDisplay.Add(Double.Parse(aikanaytto.Text).ToString());
@@ -354,6 +374,10 @@ namespace Hiko
         }
 
 
+        /// <summary>
+        /// Tämä aliohjelma tallentaa pisteet pisteet.xml tiedostoon
+        /// </summary>
+        /// <param name="sender">mitkä pisteet tallennetaan</param>
         private void TallennaPisteet(Window sender)
         {
             DataStorage.Save<ScoreList>(topLista, "pisteet.xml");
@@ -394,6 +418,7 @@ namespace Hiko
             
         }
 
+
         /// <summary>
         /// Tämä aliohjelma luo pistelaskurin
         /// </summary>
@@ -410,5 +435,7 @@ namespace Hiko
             pistenaytto.BindTo(pistelaskuri);
             Add(pistenaytto);
         }
+
+
     }
 }
\ No newline at end of file
-- 
GitLab