- Timestamp:
- 2011-06-30 14:49:05 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2011/26/HenriH/Alien Empire/Alien Empire/Alien Empire/Peli.cs
r2302 r2369 23 23 AssaultRifle Plasma1; 24 24 AssaultRifle Plasma2; 25 ExplosionSystem rajahdys; 25 26 public override void Begin() 26 27 { … … 87 88 Level.CreateBorders(); 88 89 alus1 = new PhysicsObject(50.0, 50.0); 89 alus2 = new PhysicsObject(50.0, 50.0); 90 alus1.Tag = "Alus1"; 91 90 92 alus1.X = 300; 91 93 alus1.Y = 150; 92 alus2.X = 150; 93 alus2.Y = 300; 94 94 95 alus1.Image = olionkuva; 95 alus2.Image = olionkuva2;96 96 97 alus1.AngularDamping = 0.50; 97 alus2.AngularDamping = 0.50;98 98 99 alus1.Restitution = 0.2; 99 alus2.Restitution = 0.2; 100 101 alus1.CollisionIgnoreGroup = 1; 102 103 LuoLaskuri(); 104 LuoLaskuri1(); 105 LuoAlus2(); 106 LuoAlus1(); 100 107 101 108 Plasma1 = new AssaultRifle(20, 5); … … 103 110 alus1.Add(Plasma1); 104 111 alus2.Add(Plasma2); 105 106 Add(alus1); 107 Add(alus2); 112 Plasma1.ProjectileCollision = AmmusOsui; 113 Plasma2.ProjectileCollision = AmmusOsui2; 114 rajahdys = new ExplosionSystem(LoadImage("special"), 150); 115 Add(rajahdys); 116 117 118 108 119 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Valikko, "Palaa valikkoon"); 109 120 Keyboard.Listen(Key.Up, ButtonState.Down, kiihdytaalus, "Kiihdytä alusta 1", alus1); … … 115 126 Keyboard.Listen(Key.W, ButtonState.Released, ajaalus2, null, alus2); 116 127 Keyboard.Listen(Key.D, ButtonState.Down, kaannaalus4, "Käännä alusta Oikealle.", alus2); 117 Keyboard.Listen(Key.RightShift, ButtonState.Down, AmmuAseella, "Ammu pelaajan 1 asetta", Plasma1 );118 // Keyboard.Listen(Key.LeftShift, ButtonState.Down, AmmuAseella, "Ammu Pelaajan 2 asetta");128 Keyboard.Listen(Key.RightShift, ButtonState.Down, AmmuAseella, "Ammu pelaajan 1 asetta", Plasma1, alus1); 129 Keyboard.Listen(Key.LeftShift, ButtonState.Down, AmmuAseella2, "Ammu Pelaajan 2 asetta", Plasma2, alus2); 119 130 120 131 … … 160 171 alus2.Push(voima); 161 172 } 162 void AmmuAseella(Weapon Plasma1 )173 void AmmuAseella(Weapon Plasma1, PhysicsObject alus) 163 174 { 164 175 PhysicsObject ammus = Plasma1.Shoot(); … … 168 179 if (ammus != null) 169 180 { 170 ammus.Size *= 3;181 ammus.Size *= 2; 171 182 ammus.Image = plasma_ammus1; 172 183 Plasma1.Ammo.Value = 3000; 173 Plasma1.ProjectileCollision = AmmusOsui; 174 } 175 } 176 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 177 { 178 ammus.Destroy(); 179 Explosion rajahdys = new Explosion(15); 180 rajahdys.Position = ammus.Position; 181 Add(rajahdys); 182 } 183 184 } 184 185 ammus.CollisionIgnoreGroup = alus.CollisionIgnoreGroup; 186 } 187 } 188 189 void AmmusOsui(PhysicsObject Ammus, PhysicsObject kohde) 190 { 191 if (kohde.Tag.ToString() == "Alus2") 192 { 193 rajahdys.AddEffect(Ammus.Position, 20); 194 elamalaskuri2.Value -= 10; 195 } 196 197 if (elamalaskuri2.Value<=0) 198 { 199 200 Remove(alus2); 201 elamalaskuri2.Value = 100; 202 //LuoAlus2(); 203 Timer.SingleShot(3.0, ajastinlaukesi); 204 kuolemalaskuri.Value -= 1; 205 } 206 207 Ammus.Destroy(); 208 } 209 210 void AmmuAseella2(Weapon Plasma2, PhysicsObject alus2) 211 { 212 PhysicsObject ammus = Plasma2.Shoot(); 213 214 215 216 if (ammus != null) 217 { 218 ammus.Size *= 2; 219 ammus.Image = plasma_ammus1; 220 Plasma2.Ammo.Value = 3000; 221 222 ammus.CollisionIgnoreGroup = alus2.CollisionIgnoreGroup; 223 } 224 } 225 226 void AmmusOsui2(PhysicsObject Ammus, PhysicsObject kohde) 227 { 228 if (kohde.Tag.ToString() == "Alus1") 229 { 230 rajahdys.AddEffect(Ammus.Position, 20); 231 elamalaskuri1.Value -= 10; 232 } 233 234 if (elamalaskuri1.Value <= 0) 235 { 236 237 Remove(alus1); 238 elamalaskuri1.Value = 100; 239 Timer.SingleShot(3.0, ajastinlaukesi2); 240 } 241 242 Ammus.Destroy(); 243 } 244 245 246 IntMeter elamalaskuri2; 247 248 void LuoLaskuri() 249 { 250 elamalaskuri2 = new IntMeter(100); 251 252 Label pisteNaytto = new Label(); 253 pisteNaytto.X = Screen.Right - 100; 254 pisteNaytto.Y = Screen.Top - 100; 255 pisteNaytto.TextColor = Color.White; 256 257 258 pisteNaytto.BindTo(elamalaskuri2); 259 Add(pisteNaytto); 260 } 261 void LuoAlus2() 262 { 263 alus2 = new PhysicsObject(50.0, 50.0); 264 alus2.Tag = "Alus2"; 265 alus2.X = 150; 266 alus2.Y = 300; 267 alus2.Image = olionkuva2; 268 alus2.AngularDamping = 0.50; 269 alus2.Restitution = 0.2; 270 alus2.CollisionIgnoreGroup = 2; 271 Add(alus2); 272 } 273 void ajastinlaukesi() 274 { 275 Add(alus2); 276 } 277 278 IntMeter elamalaskuri1; 279 280 void LuoLaskuri1() 281 { 282 elamalaskuri1 = new IntMeter(100); 283 284 Label pisteNaytto = new Label(); 285 pisteNaytto.X = Screen.Left + 100; 286 pisteNaytto.Y = Screen.Top - 100; 287 pisteNaytto.TextColor = Color.White; 288 289 290 pisteNaytto.BindTo(elamalaskuri1); 291 Add(pisteNaytto); 292 } 293 void LuoAlus1() 294 { 295 alus1 = new PhysicsObject(50.0, 50.0); 296 alus1.Tag = "Alus1"; 297 alus1.X = 300; 298 alus1.Y = 150; 299 alus1.Image = olionkuva; 300 alus1.AngularDamping = 0.50; 301 alus1.Restitution = 0.2; 302 alus1.CollisionIgnoreGroup = 1; 303 Add(alus1); 304 } 305 void ajastinlaukesi2() 306 { 307 Add(alus1); 308 } 309 310 IntMeter kuolemalaskuri; 311 312 void laskuri3() 313 { 314 kuolemalaskuri = new IntMeter(5); 315 316 Label pisteNaytto = new Label(); 317 pisteNaytto.X = Screen.Left + 50; 318 pisteNaytto.Y = Screen.Top - 100; 319 pisteNaytto.TextColor = Color.White; 320 321 pisteNaytto.BindTo(kuolemalaskuri); 322 Add(pisteNaytto); 323 324 if (kuolemalaskuri.Value <= 0) 325 { 326 Lopputeksti1(); 327 }} 328 void Lopputeksti1() 329 { 330 Level.Background.Image = taustakuva; 331 Label tekstikentta = new Label(50.0, 20.0, "Pelaaja 1, sinä voitit! Pelaaja 2, hävisit, olet surkea."); 332 Add(tekstikentta); 333 } 334 } 335
Note: See TracChangeset
for help on using the changeset viewer.