- Timestamp:
- 2014-07-22 10:57:46 (9 years ago)
- Location:
- 2014/30/AkseliK/Pinkkiponkki
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
2014/30/AkseliK/Pinkkiponkki/Pinkkiponkki/Pinkkiponkki/Pinkkiponkki.cs
r5519 r5530 9 9 public class Pinkkiponkki : PhysicsGame 10 10 { 11 Vector nopeusYlos = new Vector(0, 200);12 Vector nopeusAlas = new Vector(0, -200);11 Vector nopeusYlos = new Vector(0, 200); 12 Vector nopeusAlas = new Vector(0, -200); 13 13 14 14 PhysicsObject pallo; … … 16 16 PhysicsObject maila2; 17 17 18 PhysicsObject vasenReuna; 19 PhysicsObject oikeaReuna; 20 21 IntMeter pelaajan1Pisteet; 22 IntMeter pelaajan2Pisteet; 18 23 public override void Begin() 19 24 { … … 22 27 luokentta(); 23 28 AloitaPeli(); 29 LisaaLaskurit(); 24 30 AsetaOhjaimet(); 25 31 … … 34 40 pallo.X = -200.0; 35 41 pallo.Y = -0.0; 36 maila1 = LuoMaila(Level.Left + 40.0, 0.0); 37 maila2 = LuoMaila(Level.Right - 40.0, 0.0); 42 maila1 = LuoMaila(Level.Left + 40.0, 0.0); 43 maila2 = LuoMaila(Level.Right - 40.0, 0.0); 44 AddCollisionHandler(pallo, KasittelePallonTormays); 38 45 39 Level.CreateBorders(1 - 0, false); 46 vasenReuna = Level.CreateLeftBorder(); 47 vasenReuna.Restitution = 1.0; 48 vasenReuna.IsVisible = false; 49 oikeaReuna = Level.CreateRightBorder(); 50 oikeaReuna.Restitution = 1.0; 51 oikeaReuna.IsVisible = false; 52 53 PhysicsObject ylaReuna = Level.CreateTopBorder(); 54 ylaReuna.Restitution = 1.0; 55 ylaReuna.IsVisible = false; 56 57 PhysicsObject alaReuna = Level.CreateBottomBorder(); 58 alaReuna.Restitution = 1.0; 59 alaReuna.IsVisible = false; 60 40 61 pallo.Restitution = 1.0; 41 62 Level.Background.Color = Color.BloodRed; … … 59 80 void AsetaOhjaimet() 60 81 { 61 62 Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "pelaaja 1:liikuta mailaa ylös",maila1, nopeusYlos);63 Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null,maila1, Vector.Zero);82 83 Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "pelaaja 1:liikuta mailaa ylös", maila1, nopeusYlos); 84 Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 64 85 Keyboard.Listen(Key.Z, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusAlas); 65 86 Keyboard.Listen(Key.Z, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); … … 70 91 Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 71 92 72 Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 93 Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 73 94 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 74 75 76 95 96 97 } 77 98 void AsetaNopeus(PhysicsObject maila, Vector nopeus) 78 99 { 79 if((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 80 81 100 if ((nopeus.Y < 0) && (maila.Bottom < Level.Bottom)) 101 { 102 maila.Velocity = Vector.Zero; 103 return; 82 104 } 83 105 if ((nopeus.Y > 0) && (maila.Top > Level.Top)) … … 90 112 91 113 114 115 } 116 117 void LisaaLaskurit() 118 { 119 pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 120 pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 121 } 122 IntMeter LuoPisteLaskuri(double x, double y) 123 { 124 IntMeter laskuri = new IntMeter(0); 125 laskuri.MaxValue = 10; 92 126 127 128 Label naytto = new Label(); 129 naytto.BindTo(laskuri); 130 naytto.X = x; 131 naytto.Y = y; 132 naytto.TextColor = Color.White; 133 naytto.BorderColor = Level.Background.Color; 134 naytto.Color = Level.Background.Color; 135 Add(naytto); 136 137 return laskuri; 93 138 } 139 void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 140 { 141 if (kohde == oikeaReuna) 142 { 143 pelaajan1Pisteet.Value += 1; 144 } 145 else if (kohde == vasenReuna) 146 { 147 pelaajan2Pisteet.Value += 1; 148 } 149 150 } 151 94 152 }
Note: See TracChangeset
for help on using the changeset viewer.