source: 2014/koodauskerho/38/JaakkoS/pallopeli/pallopeli/pallopeli/pallopeli.cs @ 5776

Revision 5776, 3.3 KB checked in by sieerinn, 9 years ago (diff)
Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class pallopeli : PhysicsGame
10{
11    PhysicsObject maila2;
12    PhysicsObject maila;
13    public override void Begin()
14    {
15
16        maila = new PhysicsObject(220, 30);
17        maila.Image = LoadImage("lauta");
18        maila.Position = new Vector(-200, 100);
19        Add(maila);
20        maila.Oscillate(Vector.UnitY, 100, 0.4, Math.PI);
21        maila.MakeStatic();
22 
23
24        maila2 = new PhysicsObject(220, 30);
25        maila2.Image = LoadImage("lauta");
26        maila2.Position = new Vector(200, 100);
27        Add(maila2);
28        maila2.Oscillate(Vector.UnitY, 100, 0.4);
29        maila2.MakeStatic();
30     
31
32
33        Keyboard.Listen(Key.Up, ButtonState.Down, LiikutaPelaajaa, "lyömailalla", 4.0);
34        Keyboard.Listen(Key.W , ButtonState.Down, LiikutaPelaajaa2, "lyömailalla", -4.0);
35        Keyboard.Listen(Key.Down, ButtonState.Down, LiikutaPelaajaa, "lyömailalla", -5.0);
36        Keyboard.Listen(Key.S, ButtonState.Down, LiikutaPelaajaa2, "lyömailalla", 5.0);
37
38        PhysicsObject alareuna = Level.CreateBottomBorder(0,false);
39        alareuna.Tag = "alareuna";
40
41        PhysicsObject pallo = new PhysicsObject(50,50);
42        pallo.Image = LoadImage("naama1");
43        pallo.Position = new Vector(-75, 300);
44        Add(pallo);
45        Vector impulssi = new Vector(10.0, 10.0);
46        pallo.Hit(impulssi);
47        pallo.Mass =100;
48        AddCollisionHandler(pallo,"alareuna", PelaajaTormasi);
49
50
51
52        PhysicsObject maali1 = new PhysicsObject(100, 100);
53        maali1.Image = LoadImage("maali vasen");
54        maali1.Position = new Vector(-450, 200);
55        maali1.Oscillate(Vector.UnitY, 100, 0.4);
56        Add(maali1);
57        maali1.CanRotate = false;
58        maali1.IgnoresCollisionResponse=true;
59        maali1.MakeStatic();
60
61        PhysicsObject maali2 = new PhysicsObject(90, 90);
62        maali2.Image = LoadImage("maali oikea");
63        maali2.Position = new Vector(450, 200);
64        maali2.Oscillate(Vector.UnitY, 100, 0.4, Math.PI);
65        Add(maali2);
66        maali2.CanRotate = false;
67        maali2.IgnoresCollisionResponse = true;
68        maali2.MakeStatic();
69
70        PhysicsObject palkki = new PhysicsObject(50, 200);
71        palkki.Image = LoadImage("palkkipysty");
72        palkki.Position = new Vector(Level.Center.X , 100);
73        Add(palkki);
74        palkki.CanRotate = false;
75        palkki.IgnoresPhysicsLogics = true;
76        palkki.MakeStatic();
77       
78       
79       
80
81
82        // TODO: Kirjoita ohjelmakoodisi tähän
83        Level.CreateBorders();
84       
85        Camera.ZoomToLevel();
86
87
88        Gravity = new Vector(0.0, -800.0);
89
90
91
92        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
93        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
94    }
95
96    void LiikutaPelaajaa(double voima)
97    {
98        maila2.AngularAcceleration +=(voima);
99 
100    }
101    void LiikutaPelaajaa2(double voima)
102    {
103        maila.AngularAcceleration += (voima);
104   
105    }
106    void PelaajaTormasi(PhysicsObject tormaaja, PhysicsObject kohde)
107    {
108        tormaaja.Position = new Vector(Level.Center.X, Level.Top+10);
109    }
110   
111   
112   
113
114
115}
Note: See TracBrowser for help on using the repository browser.