diff --git a/KelaCombat/KelaCombatTesti/Content/kentta1.png b/KelaCombat/KelaCombatTesti/Content/kentta1.png
index 496e9698dbff8ccc88faaaa707c8d8927ce83088..3372318fa08b9077c6cb5f171e29a8aa5ab1c052 100644
Binary files a/KelaCombat/KelaCombatTesti/Content/kentta1.png and b/KelaCombat/KelaCombatTesti/Content/kentta1.png differ
diff --git a/KelaCombat/KelaCombatTesti/KelaCombatTesti.cs b/KelaCombat/KelaCombatTesti/KelaCombatTesti.cs
index 0c9117c6bcdfa2cae7f1f2350c4574b47126142a..90cbf48727f5ecbab9f9f2665e8dfe0127e655df 100644
--- a/KelaCombat/KelaCombatTesti/KelaCombatTesti.cs
+++ b/KelaCombat/KelaCombatTesti/KelaCombatTesti.cs
@@ -71,17 +71,17 @@ namespace KelaCombatTesti;
         
             void LiikuVasemmalle(Vector vektori)
             {
-                pelaaja.Walk(-100);
+                pelaaja.Walk(-120);
             }
 
             void LiikuOikealle(Vector vektori)
             {
-                pelaaja.Walk(100);
+                pelaaja.Walk(120);
             }
             
             void Hyppaa(Vector vektori)
             {
-                pelaaja.Jump(300.0);
+                pelaaja.Jump(280.0);
             }
         }
         
@@ -93,7 +93,7 @@ namespace KelaCombatTesti;
         {
 
             Level.Background.CreateGradient(Color.DarkGray, Color.Blue);
-            Gravity = new Vector(0, -981.0);
+            Gravity = new Vector(0, -1100.0);
             
            
             // pelissä kentät luodaan piirtämällä pikseleitä. Pikselin väri kuvaa aina jotain tiettyä asiaa kentällä
@@ -105,7 +105,7 @@ namespace KelaCombatTesti;
             ruudut.SetTileMethod(Color.Red, LuoKelabottiSpawni); //PUNAISEEN voi spawnaa vihu
             ruudut.SetTileMethod(Color.SkyBlue, LuoViinapullo); //VAALEANSNISET on pelaajaa parantavia viinapulloja
             
-            ruudut.Execute(70, 70);
+            ruudut.Execute(80, 80);
 
             
             
@@ -166,6 +166,7 @@ namespace KelaCombatTesti;
             //Siis pelaajan elämien väheneminen VahnigoitaPelaajaa-aliohjelman mukaisesti 
             AddCollisionHandler(pelaaja, "Kelabotti", VahingoitaPelaajaa);
             AddCollisionHandler(pelaaja, "Viinapullo", ParannaPelaajaa);
+            AddCollisionHandler(pelaaja, "kappale", VahingoitaPelaajaa);
             
             Add(pelaaja);
             
@@ -241,14 +242,17 @@ namespace KelaCombatTesti;
         /// <returns>Kelabotti</returns>
         void LuoKelabotti()
         {
-            Jypeli.PhysicsObject spawni = spawnipaikat[RandomGen.NextInt(spawnipaikat.Count)];
+            PhysicsObject spawni = spawnipaikat[RandomGen.NextInt(spawnipaikat.Count)];
             PlatformCharacter Kelabotti = new PlatformCharacter(80.0, 80.0);
             Kelabotti.Color = Color.Orange;
             Kelabotti.Image = KelabottiKuva;
+            Kelabotti.CollisionIgnoreGroup = 3;
             Kelabotti.MirrorImage();
             Kelabotinelamalaskuri = new IntMeter(5); // Alussa on 5 elämää 
             Kelabotti.Tag = "Kelabotti";
             Kelabotti.Position = spawni.Position;
+            Kelabotti.Weapon = new AssaultRifle(30, 10);
+            Kelabotti.Weapon.ProjectileCollision = VahingoitaPelaajaa;
             Add(Kelabotti);
             
             
@@ -256,16 +260,43 @@ namespace KelaCombatTesti;
             seuraajanAivot.Speed = 100;
 
             Kelabotti.Brain = seuraajanAivot;
-           
+            
+            Timer heittoajastin = new Timer();
+            heittoajastin.Interval = 2;
+            heittoajastin.Timeout += delegate() { KelabotinAmmus(Kelabotti, "pelaaja"); };
+            heittoajastin.Start();
+
+            // Destroyed-tapahtuma Jypelissä:
+            // https://tim.jyu.fi/view/kurssit/jypeli/tapahtumat/muuttapahtumat
+            Kelabotti.Destroyed += heittoajastin.Stop;
+
             
         }
-       
+       /// <summary>
+       /// Aliohjelma, jossa käsitellään Kelabotin heittämä ammus
+       /// </summary>
+       /// <param name="heittavaOlio">Kelabotti heittää ammuksen</param>
+       /// <param name="kohdeolionTunniste">pelaajan tunniste</param>
+        public void KelabotinAmmus(PhysicsObject heittavaOlio, string kohdeolionTunniste)
+        {
+            PhysicsObject kappale = new PhysicsObject(15, 15, Shape.Circle);
+            //kappale.Hit(new Vector(180,80));
+            kappale.Hit(new Vector());
+            kappale.Position = heittavaOlio.Position;
+            kappale.CollisionIgnoreGroup = 3;
+            kappale.Color = Color.Silver;
+            kappale.Tag = "kappale";
+            kappale.MaximumLifetime = TimeSpan.FromSeconds(8);
+            Add(kappale);
+        }
+
+        
         /// <summary>
         /// Tämä aliohjelma käsittlee sen, kun pelaaja osuu Kelabottiin
         /// </summary>
         /// <param name="pelaaja">pelaajahahmo</param>
         /// <param name="Kelabotti">pelin vihu; Kelabotti</param>
-        void VahingoitaPelaajaa(PhysicsObject pelaaja, PhysicsObject Kelabotti)
+        void VahingoitaPelaajaa(PhysicsObject pelaaja, PhysicsObject kappale)
         {
             int luku = RandomGen.NextInt(19, 34);
             pelaajanelamaLaskuri.Value = pelaajanelamaLaskuri - luku; // Vähentää pelaajan elämää satunnaisen määrän