source: 2012/27/LeeviK/PhysicsBall/PhysicsBall/PhysicsBall/PhysicsBall.cs @ 3542

Revision 3542, 3.7 KB checked in by lekopakk, 10 years ago (diff)

Talletus.

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class PhysicsBall : PhysicsGame
10{
11
12    Image Barrel = LoadImage("Kohde");
13    PhysicsObject Tynnyri;
14    Image Kuva = LoadImage("Tausta");
15    PhysicsObject Pelaaja;
16    PhysicsObject Maali;
17    PhysicsObject Nappula;
18    PhysicsObject Katoava;
19    Image Pallo = LoadImage("Ball");
20    Image button = LoadImage("Nappula");
21    Image Tausta = LoadImage("Tausta");
22    Image Sahko = LoadImage("Warning");
23    Image Tausta2 = LoadImage("Tausta42");
24
25    public override void Begin()
26    {
27
28
29        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
30  LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja);
31        ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
32          LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja);
33        ControllerOne.Listen(Button.A, ButtonState.Down,
34          MuutaPainovoima, null);
35
36        Level.Background.Image = Kuva;
37        LuoKatoava();
38
39        LuoMaali();
40        AloitaKentta();
41        Pelaaja = new PhysicsObject(100, 100);
42        Pelaaja.X = -400;
43        Pelaaja.Y = -350;
44        Pelaaja.Shape = Shape.Circle;
45        Pelaaja.Color = Color.Lime;
46
47
48
49        Add(Pelaaja);
50        AddCollisionHandler(Pelaaja, KasittelePallonTormays);
51        Level.CreateBorders();
52        Pelaaja.KineticFriction = 0.8;
53        Pelaaja.Restitution = 0.2;
54        Pelaaja.Image = Pallo;
55
56
57
58        Gravity = new Vector(0, -700);
59        Keyboard.Listen(Key.Space, ButtonState.Pressed,
60            MuutaPainovoima, null);
61        Keyboard.Listen(Key.A, ButtonState.Down,
62          LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja);
63        Keyboard.Listen(Key.D, ButtonState.Down,
64           LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja);
65        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
66        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
67        Level.BackgroundColor = Color.Gray;
68        Camera.Follow(Pelaaja);
69   
70    void AloitaKentta()
71    {
72       
73    }
74    void LiikutaPelaajaa(Vector vektori, PhysicsObject pelaaja)
75    {
76        pelaaja.Push(vektori);
77    }
78    Object LuoMaali()
79    {
80       
81        PhysicsObject Nappula = PhysicsObject.CreateStaticObject(50, 30);
82        Nappula.X = -250;
83        Nappula.Y = 330;
84        Nappula.Color = Color.Red;
85        PhysicsObject Maali = PhysicsObject.CreateStaticObject(400.0, 400.0);
86        Maali.Image = Sahko;
87        Maali.Shape = Shape.Rectangle;
88        Maali.X = Level.Right;
89        Maali.Y = Level.Bottom;
90        Add(Maali);
91        PhysicsObject Tynnyri = PhysicsObject.CreateStaticObject(100, 100);
92        Tynnyri.X = 240;
93        Tynnyri.Y = 75;
94        Add(Tynnyri);
95        Tynnyri.Image = Barrel;
96
97        return Maali;
98        Nappula.Image = button;
99
100       
101
102
103    }
104    void MuutaPainovoima()
105    {
106        Gravity = Gravity * (-1);
107        if (Level.Background.Image == Tausta2)
108        {
109            Level.Background.Image = Tausta;
110        } else
111             Level.Background.Image = Tausta2;   
112    }
113    Object LuoKatoava()
114    {
115        PhysicsObject Katoava = PhysicsObject.CreateStaticObject(100, 50);
116        Katoava.X = 240;
117        Katoava.Y = 0;
118        Katoava.Color = Color.Black;
119        Add(Katoava);
120        return Katoava;
121        Katoava.Shape = Shape.Rectangle;
122    }
123    void KasittelePallonTormays(PhysicsObject Pelaaja, PhysicsObject kohde)
124    {
125        if (kohde == Nappula)
126        {
127            MessageDisplay.Add("Bump!");
128
129        }
130
131    }
132
133
134
135   
136     
137    }
138 
139       
140 
141
142
143
Note: See TracBrowser for help on using the repository browser.