Changeset 48
- Timestamp:
- 2009-07-21 11:31:07 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
joni_j/FysiikkaPeli1/Peli.cs
r32 r48 22 22 { 23 23 PhysicsObject pallo; 24 PhysicsObject maila1; 25 PhysicsObject maila2; 24 26 25 27 protected override void LoadContent() 26 28 { 27 29 28 30 29 31 30 32 Level = LuoKentta(); 31 33 AsetaOhjaimet(); 32 34 AloitaPeli(); 35 33 36 34 37 } … … 38 41 { // LuoKentta-aliohjelman sisältö... 39 42 Level kentta = new Level( this ); 40 kentta.BackgroundColor = Color. Purple;43 kentta.BackgroundColor = Color.Black; 41 44 42 45 IShape ympyra = Shapes.CreateCircle( 20.0 ); … … 49 52 50 53 51 IShape suorakulmio = Shapes.CreateRectangle( 20.0, 100.0 ); 52 PhysicsObject maila = PhysicsObject.CreateStaticObject( suorakulmio ); 53 maila.X = kentta.Left + 20.0; 54 maila .Y = 0.0;55 maila .Restitution = 1.0;56 kentta.Objects.Add( maila ); 54 55 56 57 maila1 = LuoMaila(kentta.Left + 20.0, 0.0, kentta); 58 maila2 = LuoMaila(kentta.Right - 20.0, 0.0, kentta); 59 57 60 58 61 kentta.CreateBorder( 1.0, false ); 59 62 60 63 return kentta; 64 65 66 67 61 68 } 62 69 63 70 64 71 void AloitaPeli() 65 72 { … … 67 74 pallo.Hit(impulssi); 68 75 } 76 77 78 PhysicsObject LuoMaila( double x, double y, Level kentta ) 79 { 80 IShape suorakulmio = Shapes.CreateRectangle( 20.0, 100.0 ); 81 PhysicsObject maila = PhysicsObject.CreateStaticObject( suorakulmio ); 82 maila.X = x; 83 maila.Y = y; 84 maila.Restitution = 1.0; 85 kentta.Objects.Add( maila ); 86 return maila; 87 } 88 89 void AsetaOhjaimet() 90 { 91 Controls.Listen(Keys.W, ButtonPosition.Down, LiikutaMailaaYlos, "Pelaaja 1: Liikuta mailaa ylös", maila1); 92 Controls.Listen(Keys.S, ButtonPosition.Down, LiikutaMailaaAlas, "Pelaaja 1: Liikuta mailaa alas", maila1); 93 94 Controls.Listen(Keys.Up, ButtonPosition.Down, LiikutaMailaaYlos, "Pelaaja 2: Liikuta mailaa ylös", maila2); 95 Controls.Listen(Keys.Down, ButtonPosition.Down, LiikutaMailaaAlas, "Pelaaja 2: Liikuta mailaa alas", maila2); 69 96 70 97 71 98 } 72 } 73 74 99 100 bool LiikutaMailaaYlos( ControlEvent e ) 101 { 102 PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 103 if (maila.Y < Level.Top) 104 maila.Y += 10.0; 105 return false; 106 } 107 108 bool LiikutaMailaaAlas( ControlEvent e ) 109 { 110 PhysicsObject maila = e.Parameter0.ToPhysicsObject(); 111 double nopeus = 200.0; 112 double sekuntejaKulunut = e.Time.ElapsedGameTime.TotalSeconds; 75 113 76 114 maila.Y += nopeus * sekuntejaKulunut; 77 115 78 116 return false; 117 } 79 118 80 119 120 81 121 82 122 123 124 } 125 }
Note: See TracChangeset
for help on using the changeset viewer.