Skip to content
Snippets Groups Projects
Commit bfbdbc4d authored by Salonen Leo Sakari's avatar Salonen Leo Sakari
Browse files

Tehtiin kaikkee

parent cd0a5286
No related branches found
No related tags found
No related merge requests found
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
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
...@@ -15,11 +15,70 @@ namespace pomppu_possu; ...@@ -15,11 +15,70 @@ namespace pomppu_possu;
public class pomppu_possu : PhysicsGame public class pomppu_possu : PhysicsGame
{ {
public override void Begin() public override void Begin()
{ {Level.Size = new Vector(1920, 1080);
// Pomppu possun megamaailma 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"); 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
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment