source: 2010/30/johulkko/pong/Peli.cs @ 1289

Revision 1289, 1.8 KB checked in by johulkko, 10 years ago (diff)

Pong

Line 
1using System;
2using Jypeli;
3using Jypeli.Widgets;
4using Jypeli.Assets;
5
6public class Peli : PhysicsGame
7{
8    Vector nopeusYlos = new Vector(0, 200);
9    Vector nopeusAlas = new Vector(0, -200);
10
11    PhysicsObject pallo; 
12   
13    PhysicsObject maila1;
14    PhysicsObject maila2;
15
16
17    protected override void Begin()
18    {
19
20        LuoKentta();
21        AsetaOhjaimet();
22        AloitaPeli();
23
24
25    }
26    void LuoKentta()
27    {
28        pallo = new PhysicsObject(20.0, 20.0);
29        pallo.Shape = Shapes.Circle;
30        Add(pallo);
31        pallo.X = -200.0;
32        pallo.Y = 0.0;
33        pallo.Restitution = 1.0;
34        Add(pallo);
35
36        LuoMaila(Level.Left + 10.0, 0.0);
37        LuoMaila(Level.Right - 10.0, 0.0);
38
39
40
41
42
43        Level.CreateBorders(1.0, false);
44        Level.BackgroundColor = Color.Black;
45
46        Camera.ZoomToLevel();
47
48
49    }
50
51    void AsetaOhjaimet()
52    {
53        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu");
54        Keyboard.Listen(Key.A, ButtonState.Down, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylös");
55        Keyboard.Listen(Key.A, ButtonState.Released, PysaytaMaila, null);
56        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu");
57
58    }
59
60
61
62    void LuoMaila(double x, double y)
63          PhysicsObject LuoMaila( double x, double y )
64    {
65        PhysicsObject maila = PhysicsObject.
66        CreateStaticObject(10.0, 100.0);
67        maila.Shape = Shapes.Rectangle;
68        maila.X = x;
69        maila.Y = y;
70        maila.Restitution = 1.0;
71        Add(maila);
72        return maila;
73
74    }
75
76    void AloitaPeli()
77    {
78        Vector impulssi = new Vector(500.0, 0.0);
79        pallo.Hit(impulssi);
80
81    }
82
83    void AsetaNopeus(PhysicsObject maila, Vector nopeus)
84    {
85        maila.Velocity = nopeus;
86    }
87}
88
89
90
91
92
93
94
Note: See TracBrowser for help on using the repository browser.