- Timestamp:
- 2010-07-28 11:30:44 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/30/samipunn/Misle Launch/Peli.cs
r1328 r1361 6 6 public class Peli : PhysicsGame 7 7 { 8 9 8 10 PhysicsObject ohjus; 11 PhysicsObject ohjus2; 9 12 double kaantyyOikealle = 5; 10 13 double kaantyyVasemmalle = -5; 11 14 protected override void Begin() 12 15 { 16 LuoReunat(); 17 Camera.ZoomToLevel(); 18 13 19 ohjus = new PhysicsObject(10, 40); 14 20 ohjus.Shape = Shapes.Rectangle; 15 ohjus.X = -600; 16 ohjus.Y = -470; 21 ohjus.X = -100; 22 ohjus.Y = -0; 23 AddCollisionHandler(ohjus, Tormays); 17 24 Add(ohjus); 25 26 27 ohjus2 = new PhysicsObject(10, 40); 28 ohjus2.Shape = Shapes.Rectangle; 29 ohjus2.X = 100; 30 ohjus2.Y = 0; 31 AddCollisionHandler(ohjus2, Tormays2); 32 Add(ohjus2); 18 33 AsetaOhjaimet(); 34 35 Painovoima(); 36 Ilmanvastus(); 19 37 } 20 38 void AsetaOhjaimet() 21 39 { 22 Keyboard.Listen(Key.A, ButtonState.Down, OhjusKaantyy, "Kaanna Ohjusta Vasemmalle", ohjus, kaantyyVasemmalle); 40 Keyboard.Listen(Key.Z, ButtonState.Down, OhjusKaantyy, "Kaanna Ohjusta Vasemmalle", ohjus, kaantyyVasemmalle); 41 Keyboard.Listen(Key.Z, ButtonState.Released, OhjusKaantyy, null, ohjus,0.0); 42 Keyboard.Listen(Key.A, ButtonState.Down, OhjusKaantyy, "Kaanna Ohjusta Oikealle", ohjus, kaantyyOikealle); 23 43 Keyboard.Listen(Key.A, ButtonState.Released, OhjusKaantyy, null, ohjus,0.0); 24 Keyboard.Listen(Key.Z, ButtonState.Down, OhjusKaantyy, "Kaanna Ohjusta Oikealle", ohjus, kaantyyOikealle);25 Keyboard.Listen(Key.Z, ButtonState.Released, OhjusKaantyy, null, ohjus,0.0);26 44 27 //Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusYlos);28 //Keyboard.Listen(Key.Up, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero);29 //Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusAlas);30 //Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero);45 Keyboard.Listen(Key.Up, ButtonState.Down, Ohjus2Kaantyy, "Kaanna Ohjusta2 Vasemmalle", ohjus2, kaantyyVasemmalle); 46 Keyboard.Listen(Key.Up, ButtonState.Released, Ohjus2Kaantyy, null, ohjus2, 0.0); 47 Keyboard.Listen(Key.Down, ButtonState.Down, Ohjus2Kaantyy, "Kaanna Ohjusta2 Oikealle", ohjus2, kaantyyOikealle); 48 Keyboard.Listen(Key.Down, ButtonState.Released, Ohjus2Kaantyy, null, ohjus2, 0.0); 31 49 32 50 Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); … … 40 58 ohjus.Angle = valiaik; 41 59 } 60 61 void Ohjus2Kaantyy(PhysicsObject ohjus2, double nopeus) 62 { 63 Angle valiaik = ohjus2.Angle; 64 valiaik.Degree += nopeus; 65 ohjus2.Angle = valiaik; 66 } 67 void Paivitys() 68 { 69 ohjus.Push(Vector.FromLengthAndAngle(1500, ohjus.Angle + Angle.RightAngle)); 70 ohjus2.Push(Vector.FromLengthAndAngle(1500, ohjus2.Angle + Angle.RightAngle)); 71 72 } 73 74 void Painovoima() 75 { 76 Gravity = new Vector(0.0, -800.0); 77 78 } 79 80 void Ilmanvastus() 81 { 82 ohjus.LinearDamping = 0.9; 83 ohjus2.LinearDamping = 0.9; 84 } 85 protected override void Update(Time time) 86 { 87 Paivitys(); 88 base.Update(time); 89 } 90 91 void LuoReunat() 92 { 93 Level.CreateBottomBorder(); 94 Level.CreateTopBorder(); 95 } 96 97 void Tormays(PhysicsObject ohjus, PhysicsObject kohde) 98 { 99 ohjus.Destroy(); 100 Explosion rajahdys = new Explosion(60); 101 rajahdys.Position = ohjus.Position; 102 rajahdys.Speed = 300.0; 103 rajahdys.Force = 90; 104 Add(rajahdys); 105 106 107 } 108 109 void Tormays2(PhysicsObject ohjus, PhysicsObject kohde) 110 { 111 ohjus2.Destroy(); 112 Explosion rajahdys = new Explosion(60); 113 rajahdys.Position = ohjus2.Position; 114 rajahdys.Speed = 300.0; 115 rajahdys.Force = 90; 116 Add(rajahdys); 117 } 118 119 DoubleMeter alaspainLaskuri; 120 121 void LuoAikaLaskuri() 122 { 123 alaspainLaskuri = new DoubleMeter(30); 124 125 Timer aikaLaskuri = new Timer(); 126 aikaLaskuri.Interval = 0.1; 127 aikaLaskuri.Trigger += LaskeAlaspain; 128 Add(aikaLaskuri); 129 aikaLaskuri.Start(); 130 131 Label aikaNaytto = new Label(); 132 aikaNaytto.TextColor = Color.White; 133 aikaNaytto.DecimalPlaces = 1; 134 aikaNaytto.BindTo(alaspainLaskuri); 135 Add(aikaNaytto); 42 136 } 137 138 void LaskeAlaspain(Timer timer) 139 { 140 alaspainLaskuri.Value -= 0.1; 141 142 if (alaspainLaskuri.Value <= 0) 143 { 144 MessageDisplay.Add("Aika loppui..."); 145 timer.Stop(); 146 147 // täydennä mitä tapahtuu, kun aika loppuu 148 } 149 } 150 151 152 } 153
Note: See TracChangeset
for help on using the changeset viewer.