- Timestamp:
- 2010-08-03 10:43:37 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/31/niostuom/Pong/Peli.cs
r1517 r1547 6 6 public class Peli : PhysicsGame 7 7 { 8 Vector nopeusYlos = new Vector(0, 200);9 Vector nopeusAlas = new Vector(0, - 200);8 Vector nopeusYlos = new Vector(0, 700); 9 Vector nopeusAlas = new Vector(0, -700); 10 10 11 11 PhysicsObject pallo; … … 14 14 PhysicsObject maila2; 15 15 16 PhysicsObject vasenReuna; 17 PhysicsObject oikeaReuna; 18 19 IntMeter pelaajan1Pisteet; 20 IntMeter pelaajan2Pisteet; 21 22 16 23 protected override void Begin() 17 24 { … … 19 26 AsetaOhjaimet(); 20 27 AloitaPeli(); 21 28 LisaaLaskurit(); 22 29 } 23 30 … … 33 40 maila2 = LuoMaila (Level.Right - 20.0, 0.0); 34 41 35 36 Level.CreateBorders(1.0, false); 37 pallo.Restitution = 1.01; 42 43 vasenReuna = Level.CreateLeftBorder(); 44 vasenReuna.Restitution = 1.0; 45 vasenReuna.IsVisible = false; 46 47 oikeaReuna = Level.CreateRightBorder(); 48 oikeaReuna.Restitution = 1.0; 49 oikeaReuna.IsVisible = false; 50 51 PhysicsObject alaReuna = Level.CreateBottomBorder(); 52 alaReuna.Restitution = 1.0; 53 alaReuna.IsVisible = false; 54 55 PhysicsObject yläReuna = Level.CreateTopBorder(); 56 yläReuna.Restitution = 1.0; 57 yläReuna.IsVisible = false; 58 59 60 pallo.Restitution = 1.10; 38 61 Level.BackgroundColor = Color.Black; 39 62 Camera.ZoomToLevel(); 40 63 41 64 AddCollisionHandler(pallo, KasittelePallonTormays); 65 42 66 } 43 67 void AloitaPeli() … … 77 101 void AsetaNopeus(PhysicsObject maila, Vector nopeus) 78 102 { 103 if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 104 { 105 maila.Velocity = Vector.Zero; 106 return; 107 } 108 109 if ((nopeus.Y > 0) && (maila.Top > Level.Top)) 110 111 { 112 maila.Velocity = Vector.Zero; 113 return; 114 } 115 79 116 maila.Velocity = nopeus; 80 117 } 81 118 119 void LisaaLaskurit() 120 { 121 pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 122 pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 123 124 } 125 126 IntMeter LuoPisteLaskuri( double x, double y) 127 { 128 IntMeter laskuri = new IntMeter(0); 129 laskuri.MaxValue = 10; 130 Label naytto = new Label(); 131 naytto.BindTo(laskuri); 132 naytto.X = x; 133 naytto.Y = y; 134 naytto.TextColor = Color.White; 135 Add(naytto); 136 137 return laskuri; 138 } 139 140 void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 141 { 142 if (kohde == oikeaReuna) 143 { 144 pelaajan1Pisteet.Value += 1; 145 } 146 else if (kohde == vasenReuna) 147 { 148 pelaajan2Pisteet.Value += 1; 149 } 150 } 151 82 152 }
Note: See TracChangeset
for help on using the changeset viewer.