Skip to content
Snippets Groups Projects
Commit c39321bc authored by Klemettinen Veera Eveliina's avatar Klemettinen Veera Eveliina
Browse files

muutoksia

parent cc8bd806
No related branches found
No related tags found
No related merge requests found
...@@ -42,51 +42,66 @@ public class Suunnistuspeli : PhysicsGame ...@@ -42,51 +42,66 @@ public class Suunnistuspeli : PhysicsGame
Image bear = LoadImage("bear.png"); Image bear = LoadImage("bear.png");
Image pelaaja = LoadImage("suunnistaja.png"); Image pelaaja = LoadImage("suunnistaja.png");
public override void Begin() public override void Begin()
{ {
//Gravity = new Vector(0, -981); LuoKentta();
Level.Background.CreateGradient(Color.LightBlue, Color.White); AsetaOhjaimet();
TileMap tiles = TileMap.FromStringArray(lines); }
tiles.SetTileMethod('X', LuoPalikka, Color.Black);
tiles.SetTileMethod('=', LuoKarhu, Color.Brown);
tiles.SetTileMethod('*', LuoRasti, Color.Pink);
tiles.Execute(tileWidth, tileHeight);
PlatformCharacter suunnistaja = new PlatformCharacter(30, 30); void LuoKentta()
suunnistaja.Image = pelaaja;
suunnistaja.Mass = 0.5;
Add(suunnistaja);
void Liikuta(PhysicsObject suunnistaja, Vector suunta)
{ {
suunnistaja.Velocity = suunta; //Gravity = new Vector(0, -981);
Level.Background.CreateGradient(Color.LightBlue, Color.White);
TileMap tiles = TileMap.FromStringArray(lines);
tiles.SetTileMethod('X', LuoPalikka, Color.Black);
tiles.SetTileMethod('=', LuoKarhu, Color.Brown);
tiles.SetTileMethod('*', LuoRasti, Color.Pink);
tiles.Execute(tileWidth, tileHeight);
LuoPistelaskuri();
Level.CreateBorders();
Camera.ZoomToLevel();
PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
} }
Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(-500, 0));
Keyboard.Listen(Key.Left, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(500, 0));
Keyboard.Listen(Key.Right, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Down, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(0, -500));
Keyboard.Listen(Key.Down, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Up, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(0, 500));
Keyboard.Listen(Key.Up, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
LuoPistelaskuri(); void AsetaOhjaimet()
{
PlatformCharacter suunnistaja = new PlatformCharacter(30, 30);
suunnistaja.Image = pelaaja;
suunnistaja.Mass = 0.5;
suunnistaja.Tag = "suunnistaja";
Add(suunnistaja);
AddCollisionHandler(suunnistaja, "bear", PelaajatTormaavat); Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(-500, 0));
AddCollisionHandler(suunnistaja, "rasti", RastienKerääminen); Keyboard.Listen(Key.Left, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(500, 0));
Keyboard.Listen(Key.Right, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Down, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(0, -500));
Keyboard.Listen(Key.Down, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Keyboard.Listen(Key.Up, ButtonState.Down, Liikuta, null, suunnistaja, new Vector(0, 500));
Keyboard.Listen(Key.Up, ButtonState.Released, Liikuta, null, suunnistaja, Vector.Zero);
Level.CreateBorders(); AddCollisionHandler(suunnistaja, "bear", PelaajatTormaavat);
Camera.ZoomToLevel(); AddCollisionHandler(suunnistaja, "rasti", RastienKerääminen);
PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); void Liikuta(PhysicsObject suunnistaja, Vector suunta)
Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); {
Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); suunnistaja.Velocity = suunta;
} }
}
/// <summary> /// <summary>
/// Aliohjelma, joka kasvattaa pistelaskuria yhdellä, kun suunnistaja osuu rastiin. /// Aliohjelma, joka kasvattaa pistelaskuria yhdellä, kun suunnistaja osuu rastiin.
...@@ -107,13 +122,28 @@ public class Suunnistuspeli : PhysicsGame ...@@ -107,13 +122,28 @@ public class Suunnistuspeli : PhysicsGame
/// <param name="karhu">Törmäyksen kohde</param> /// <param name="karhu">Törmäyksen kohde</param>
void PelaajatTormaavat(PhysicsObject suunnistaja, PhysicsObject karhu) void PelaajatTormaavat(PhysicsObject suunnistaja, PhysicsObject karhu)
{ {
MessageDisplay.Add("Bump!"); Label tekstikentta = new Label(500.0, 20.0, "Peli päättyi!");
tekstikentta.TextColor = Color.Green;
Vector keskipiste = new Vector();
tekstikentta.Position = keskipiste;
Add(tekstikentta);
suunnistaja.Destroy();
//AloitaAlusta();
}
void AloitaAlusta()
{
ClearAll();
LuoKentta();
AsetaOhjaimet();
} }
/// <summary> /// <summary>
/// Pistelaskurin luominen /// Pistelaskurin luominen
/// </summary> /// </summary>
IntMeter pisteLaskuri; IntMeter pisteLaskuri;
void LuoPistelaskuri() void LuoPistelaskuri()
...@@ -176,6 +206,33 @@ public class Suunnistuspeli : PhysicsGame ...@@ -176,6 +206,33 @@ public class Suunnistuspeli : PhysicsGame
karhu.IgnoresGravity = true; karhu.IgnoresGravity = true;
karhu.Color = vari; karhu.Color = vari;
karhu.IgnoresPhysicsLogics = true; karhu.IgnoresPhysicsLogics = true;
karhu.CanRotate = false;
//PathFollowerBrain karhunAivot = new PathFollowerBrain();
//List<Vector> polku = new List<Vector>();
//polku.Add(new Vector(0, 0));
//polku.Add(new Vector(-100, 0));
//polku.Add(new Vector(-100, 100));
//polku.Add(new Vector(100, 100));
//polku.Add(new Vector(-100, 100));
//karhunAivot.Path = polku;
//karhunAivot.Loop = true;
//karhunAivot.Speed = 100;
const int RUUDUN_KOKO = 40;
LabyrinthWandererBrain karhunAivot = new LabyrinthWandererBrain(RUUDUN_KOKO);
karhunAivot.Speed = 100.0;
karhunAivot.LabyrinthWallTag = "rakenne";
//FollowerBrain karhunAivot = new FollowerBrain("suunnistaja");
//RandomMoverBrain karhunAivot = new RandomMoverBrain(200);
//karhunAivot.ChangeMovementSeconds = 3;
//karhunAivot.Speed = 10;
karhu.Brain = karhunAivot;
karhu.Tag = "bear"; karhu.Tag = "bear";
karhu.Image = bear; karhu.Image = bear;
Add(karhu); Add(karhu);
......
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