Changeset 1336 for 2010/30/aneesavi/Pong/Peli.cs
- Timestamp:
- 2010-07-27 14:58:47 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/30/aneesavi/Pong/Peli.cs
r1316 r1336 5 5 6 6 public class Peli : PhysicsGame 7 {PhysicsObject pallo; 7 { 8 Vector nopeusylos = new Vector(0, 200); 9 Vector nopeusalas = new Vector(0, -200); 10 11 PhysicsObject pallo; 12 PhysicsObject maila1; 13 PhysicsObject maila2; 14 15 IntMeter pelaajan1pisteet; 16 IntMeter pelaajan2pisteet; 17 18 8 19 protected override void Begin() 9 20 { … … 11 22 AsetaOhjaimet(); 12 23 AloitaPeli(); 24 LisaaLaskurit(); 13 25 } 14 26 15 27 16 28 void Luokentta() … … 22 34 pallo.Y = 0.0; 23 35 24 LuoMaila(Level.Left + 20.0, 0.0);25 LuoMaila(Level.Right - 20.0, 0.0);26 36 maila1 = LuoMaila(Level.Left + 20.0, 0.0); 37 maila2 = LuoMaila(Level.Right - 20.0, 0.0); 38 27 39 Level.CreateBorders(1.0, false); 28 40 pallo.Restitution = 1.0; … … 31 43 Camera.ZoomToLevel(); 32 44 33 34 45 46 35 47 } 36 48 void AloitaPeli() 37 { 49 { 38 50 39 51 Vector impulssi = new Vector(500.0, 0.0); 40 52 pallo.Hit(impulssi); 41 53 } 42 voidLuoMaila(double x, double y)54 PhysicsObject LuoMaila(double x, double y) 43 55 { 44 56 PhysicsObject maila = PhysicsObject.CreateStaticObject(20.0, 100.0); … … 48 60 maila.Restitution = 1.0; 49 61 Add(maila); 62 return maila; 50 63 } 51 64 … … 53 66 { 54 67 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "poistu"); 55 Keyboard.Listen(Key.A, ButtonState.Down, LiikutaMailaaYlos, "Pelaaja 1: Liikuta Mailaa Ylos"); 56 Keyboard.Listen(Key.A, ButtonState.Released, PysaytaMaila, null); 68 Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta Mailaa Ylos", maila1, nopeusylos); 69 Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 70 Keyboard.Listen(Key.Z, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusalas); 71 Keyboard.Listen(Key.Z, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 72 73 Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusylos); 74 Keyboard.Listen(Key.Up, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 75 Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusalas); 76 Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 77 78 Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 79 80 } 81 void AsetaNopeus(PhysicsObject maila, Vector nopeus) 82 83 { 84 if ( ( nopeus.Y < 0) && (maila.Bottom < Level.Bottom) ) 85 { 86 maila.Velocity = Vector.Zero; 87 return; 88 } 89 if( (nopeus.Y > 0) && (maila.Top > Level.Top) ) 90 { 91 maila.Velocity = Vector.Zero; 92 return; 93 } 94 95 maila.Velocity = nopeus; 96 } 97 98 void LisaaLaskurit() 99 { 100 pelaajan1pisteet = LuoPistelaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 101 pelaajan2pisteet = LuoPistelaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 102 } 103 104 IntMeter LuoPistelaskuri(double x, double y) 105 { 106 IntMeter laskuri = new IntMeter(0); 107 laskuri.MaxValue = 10; 108 Label naytto = new Label(); 109 naytto.BindTo(laskuri); 110 naytto.X = x; 111 naytto.Y = y; 112 naytto.TextColor = Color.White; 113 Add(naytto); 114 return laskuri; 57 115 58 116 }
Note: See TracChangeset
for help on using the changeset viewer.