source: 2015/30/EliasHy/SpaceAdventure/SpaceAdventure/SpaceAdventure/SpaceAdventure.cs @ 6886

Revision 6886, 2.9 KB checked in by misakana, 4 years ago (diff)

peli

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class SpaceAdventure : PhysicsGame
10{
11    PhysicsObject pelaaja;
12    Image CoolAlusKuva = LoadImage("cool alus");
13    Image CoolHyvisalus = LoadImage("coolhyvisalus");
14    Image CoolAsteroidi = LoadImage("coolasteroidya");
15   
16    public override void Begin()
17    {
18        LuoKentta();
19        //AddCollisionHandler(Laser, CollisionHandler.ExplodeTarget(150, false));
20        Camera.Zoom(2.5);
21        Camera.FollowedObject = pelaaja;
22        Keyboard.Listen(Key.Left, ButtonState.Down,
23        LiikutaPelaajaa, null, new Vector(-100, 0));
24        Keyboard.Listen(Key.Right, ButtonState.Down,
25        LiikutaPelaajaa, null, new Vector(100, 0));
26        Keyboard.Listen(Key.Up, ButtonState.Down,
27        LiikutaPelaajaa, null, new Vector(0, 100));
28        Keyboard.Listen(Key.Down, ButtonState.Down,
29        LiikutaPelaajaa, null, new Vector(0, -100));
30    }
31
32    void LiikutaPelaajaa(Vector vektori)
33    {
34        pelaaja.Push(vektori);
35
36
37       
38        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
39    }
40
41    void LuoKentta()
42    {
43        //1. Luetaan kuva uuteen ColorTileMappiin, kuvan nimen perässä ei .png-päätettä.
44        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("cool tausta");
45
46        //2. Kerrotaan mitä aliohjelmaa kutsutaan, kun tietyn värinen pikseli tulee vastaan kuvatiedostossa.
47        ruudut.SetTileMethod(Color.FromHexCode("00FFFF"), LuoPelaaja);
48        ruudut.SetTileMethod(Color.Black, LuoVihollinen);
49        ruudut.SetTileMethod(Color.Gold, LuoAsteroidi);
50        ruudut.SetTileMethod(Color.FromHexCode("FF0000"), LuoVihollinen2);
51
52        //3. Execute luo kentän
53        //   Parametreina leveys ja korkeus
54        ruudut.Execute(20, 20);
55    }
56    void LuoPelaaja(Vector paikka, double leveys, double korkeus)
57    {
58        pelaaja = new PhysicsObject(10, 10);
59        pelaaja.Restitution = 1.0;
60        pelaaja.Color = Color.Blue;
61        pelaaja.Position = paikka;
62        Add(pelaaja);
63    }
64    void LuoVihollinen(Vector paikka, double leveys, double korkeus)
65    {
66        PhysicsObject Vihollinen = new PhysicsObject(CoolAlusKuva);
67        Vihollinen.Position = paikka;
68        Add(Vihollinen);
69
70    }
71    void LuoAsteroidi(Vector paikka, double leveys, double korkeus)
72    {
73        PhysicsObject Asteroidi = new PhysicsObject(10, 10);
74        Asteroidi.Color = Color.Red;
75        Asteroidi.Position = paikka;
76        Add(Asteroidi);
77
78    }
79    void LuoVihollinen2(Vector paikka, double leveys, double korkeus)
80    {
81        PhysicsObject Vihollinen2 = new PhysicsObject(10, 10);
82        Vihollinen2.Color = Color.Gold;
83        Vihollinen2.Position = paikka;
84        Add(Vihollinen2);
85
86    }
87 
88}
Note: See TracBrowser for help on using the repository browser.