diff --git "a/peli/harkkaty\303\266/pomppu possu/Megaporkkanat.cs" "b/peli/harkkaty\303\266/pomppu possu/Megaporkkanat.cs"
new file mode 100644
index 0000000000000000000000000000000000000000..13da6fce265e6f122e9d29f2df369fde22679e53
--- /dev/null
+++ "b/peli/harkkaty\303\266/pomppu possu/Megaporkkanat.cs"	
@@ -0,0 +1,30 @@
+namespace pomppu_possu;
+using Jypeli;
+
+public class Megaporkkanat : PhysicsObject
+{
+    private Color[] _varit; // Yksityinen oliomuuttuja
+    private int _osumat;
+    public Megaporkkanat(double leveys, double korkeus, Color[] varit) : base(leveys, korkeus)
+    {
+        _varit = varit;
+        _osumat = 0;
+        Color = varit[0];
+    }
+
+    public void OtaVastaanOsuma()
+    {
+        _osumat++;
+        if (_osumat == 1)
+        {
+            TuhoaPalikka();
+        }
+        else Color = _varit[_osumat];
+        
+    }
+
+    public virtual void TuhoaPalikka()
+    {
+        this.Destroy();
+    }
+}
\ No newline at end of file
diff --git "a/peli/harkkaty\303\266/pomppu possu/Tasot.cs" "b/peli/harkkaty\303\266/pomppu possu/Tasot.cs"
new file mode 100644
index 0000000000000000000000000000000000000000..b81e19783d74ba2ef6b5f1cdaf1a7f8b345ddedd
--- /dev/null
+++ "b/peli/harkkaty\303\266/pomppu possu/Tasot.cs"	
@@ -0,0 +1,12 @@
+namespace pomppu_possu;
+using Jypeli;
+
+public class Tasot : Megaporkkanat
+{
+    public Tasot(double leveys, double korkeus)
+        : base(leveys, korkeus,new Color[] { Jypeli.Color.Pink, Jypeli.Color.SeaGreen, Jypeli.Color.Black })
+    {
+        
+    }
+
+}
\ No newline at end of file
diff --git "a/peli/harkkaty\303\266/pomppu possu/pomppu possu.cs" "b/peli/harkkaty\303\266/pomppu possu/pomppu possu.cs"
index d00d68e4f683ea5a7712a5962f06c17c4502b555..379c116c6f6ebea06d24d95ca640e0db12c43823 100644
--- "a/peli/harkkaty\303\266/pomppu possu/pomppu possu.cs"	
+++ "b/peli/harkkaty\303\266/pomppu possu/pomppu possu.cs"	
@@ -15,11 +15,70 @@ namespace pomppu_possu;
 public class pomppu_possu : PhysicsGame
 {
     public override void Begin()
-    {
-        // Pomppu possun megamaailma
+    {Level.Size = new Vector(1920, 1080);
+        SetWindowSize(1920, 1080);
+        CenterWindow();
+        Level.CreateBorders();
+        Level.Background.Color = Color.SpringGreen;
+
+        PhysicsObject pomppuPossu = new PhysicsObject(30, 80, Shape.Rectangle);
+        Add(pomppuPossu);
+
+        Keyboard.Listen(Key.Up, ButtonState.Down, Liikuta, "Liikuttaa pelaajaa ylös", pomppuPossu, new Vector(0,1000));
+        Keyboard.Listen(Key.Down, ButtonState.Down, Liikuta, "Liikuttaa pelaajaa alas", pomppuPossu, new Vector(0,-1000));
+        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikuttaa pelaajaa vasemmalle", pomppuPossu, new Vector(-1000,0));
+        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikuttaa pelaajaa oikealle", pomppuPossu, new Vector(1000,0));
 
-        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
+        for (int i = 0; i < 20; i++)
+        {
+            Color[] varit = { Color.Red, Color.Yellow, Color.Green };
+            Megaporkkanat pisteet = new Megaporkkanat(50, 50, varit);
+            pisteet.Position = RandomGen.NextVector(Level.BoundingRect);
+            AddCollisionHandler<PhysicsObject, Megaporkkanat>(pomppuPossu, pisteet, TormattiinEsineeseen);
+            Add(pisteet);
+        }
+        
+        
+
+        for (int i = 0; i < 10; i++)
+        {
+            Color[] varit = { Color.Black, Color.White };
+            Megaporkkanat ympyra = new Megaporkkanat(60, 60, varit);
+            ympyra.Shape = Shape.Circle;
+            ympyra.Position = RandomGen.NextVector(Level.BoundingRect);
+            AddCollisionHandler<PhysicsObject, Megaporkkanat>(pomppuPossu, ympyra, TormattiinEsineeseen);
+            Add(ympyra);
+        }
+        
+        for (int i = 0; i < 5; i++)
+        {
+            Tasot paikallaan = new Tasot(150, 20);
+            paikallaan.MakeStatic();
+            paikallaan.Position = RandomGen.NextVector(Level.BoundingRect);
+            Add(paikallaan);
+        }
+        
+        
         Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
     }
+
+    public void TormattiinEsineeseen(PhysicsObject tormaaja, Megaporkkanat kohde)
+    {
+        kohde.OtaVastaanOsuma();
+    }
+
+    /// <summary>
+    /// Liikuttaa fysiikkaoliota.
+    /// </summary>
+    /// <param name="liikuteltava">Liikutettava</param>
+    /// <param name="suunta">Suunta</param>
+    public void Liikuta(PhysicsObject liikuteltava, Vector suunta)
+    {
+        liikuteltava.Push(suunta);
+    }
+        // Pomppu possun megamaailma
+
+        
 }
 
+