Changeset 2584
- Timestamp:
- 2011-08-05 12:01:30 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2011/31/TommiL/pallopeli/pallopeli/pallopeli/Peli.cs
r2563 r2584 10 10 { 11 11 PhysicsObject robotti; 12 Timer aikaLaskuri; 12 13 int elama = 0; 13 14 14 15 Image olionKuva = LoadImage("kuva"); 15 16 Image olionKuva2 = LoadImage("sydän"); 16 Image olionkuva3 = LoadImage("maali");17 18 19 17 20 18 PhysicsObject[] sydamet = new PhysicsObject[10]; 19 ScoreList topLista = new ScoreList(10, false, 5); 21 20 22 21 public override void Begin() 23 22 { 23 if (DataStorage.Exists("pisteet.xml")) 24 topLista = DataStorage.Load<ScoreList>(topLista, "pisteet.xml"); 25 26 27 28 24 29 robotti = new PhysicsObject(30,30); 25 30 Add(robotti); … … 29 34 robotti.Image = olionKuva; 30 35 robotti.Tag = "robotti"; 36 37 31 38 32 39 robotti.CanRotate = false; … … 40 47 Keyboard.Listen(Key.Down, ButtonState.Down, 41 48 LiikutaPelaajaa, null, new Vector(0, -1000)); 42 AddCollisionHandler(robotti, kasittelerobotintormays);43 49 44 50 … … 50 56 51 57 tehdapallot(); 52 luomaali(); 53 tehdasyotavaa(); 58 LuoAikaLaskuri(); 54 59 while (elama < 3) 55 60 { … … 57 62 } 58 63 59 60 61 64 } 65 66 62 67 63 68 void LiikutaPelaajaa(Vector vektori) … … 69 74 { 70 75 int i = 0; 71 while (i < 3 5)76 while (i < 30) 72 77 { 73 78 PhysicsObject pallo = new PhysicsObject(20, 20); … … 79 84 pallo.Restitution = 1.5; 80 85 pallo.Tag = "pallo"; 81 pallo.CollisionIgnoreGroup = 1;86 pallo.CollisionIgnoreGroup = (1); 82 87 robotti.LinearDamping = 0.95; 83 88 … … 94 99 { 95 100 if (kohde.Tag.ToString() == "robotti") 96 97 98 101 { 99 102 Explosion rajahdys = new Explosion(100.100); … … 101 104 Add(rajahdys); 102 105 rajahdys.Speed = 150.0; 103 rajahdys.Force = 30; 106 rajahdys.Force = 30; 104 107 elama--; 105 108 sydamet[elama].Destroy(); 106 if (elama == 0) kohde.Destroy(); 109 if (elama == 0) 110 { 111 kohde.Destroy(); 112 double aikaaKulunut = aikaLaskuri.SecondCounter.Value; 113 aikaLaskuri.Stop(); 114 115 HighScoreWindow topIkkuna = new HighScoreWindow("pallopeli", 116 "Parhaat pisteet", 117 "Onneksi olkoon, pääsit listalle pisteillä %p! Syötä nimesi:", 118 topLista, aikaaKulunut); 119 topIkkuna.Closed += TallennaPisteet; 120 Add(topIkkuna); 121 } 122 123 124 125 126 127 107 128 } 108 129 } … … 125 146 126 147 } 127 void luomaali()128 {129 PhysicsObject maali = new PhysicsObject(50, 50);130 maali.X = 475;131 maali.Y = 375;132 maali.CanRotate = false;133 maali.IgnoresExplosions = true;134 maali.CollisionIgnoreGroup = 1;135 maali.Image = olionkuva3;136 maali.Tag = "maali";137 Add(maali);138 139 }140 void kasittelerobotintormays(PhysicsObject robotti, PhysicsObject kohde)141 {142 if (kohde.Tag.ToString() == "maali")143 144 {145 Exit();146 }147 }148 149 void tehdasyotavaa()150 {151 int i = 0;152 while (i < 20)153 {154 PhysicsObject syötävä = new PhysicsObject(10, 10);155 156 Add(syötävä);157 syötävä.X = RandomGen.NextDouble(-400, 400);158 syötävä.Y = RandomGen.NextDouble(-400, 400);159 i++;160 }161 }162 148 163 149 150 151 152 153 void LuoAikaLaskuri() 154 { 155 aikaLaskuri = new Timer(); 156 aikaLaskuri.Start(); 157 158 Label aikaNaytto = new Label(); 159 aikaNaytto.TextColor = Color.Gray; 160 aikaNaytto.DecimalPlaces = 1; 161 aikaNaytto.BindTo(aikaLaskuri.SecondCounter); 162 Add(aikaNaytto); 163 } 164 165 void TallennaPisteet(Window sender) 166 { 167 DataStorage.Save<ScoreList>(topLista, "pisteet.xml"); 168 } 164 169 } 165 170
Note: See TracChangeset
for help on using the changeset viewer.