Luento06
|
00001 using System; 00002 using System.Collections.Generic; 00003 using Jypeli; 00004 using Jypeli.Assets; 00005 using Jypeli.Controls; 00006 using Jypeli.Effects; 00007 using Jypeli.Widgets; 00008 00009 /// @authos Vesa Lappalainen 00010 /// @version 25.9.2012 00011 /// 00012 /// <summary> 00013 /// Lumiukko, jonka palloa voi lyödä 00014 /// </summary> 00015 public class Lumiukko : PhysicsGame 00016 { 00017 /// <summary> 00018 /// Piirretään lumiukko kolmella pallolla ja asetetaan kunntelijat 00019 /// </summary> 00020 public override void Begin() 00021 { 00022 Level.Size = Screen.Size; 00023 Camera.ZoomToLevel(); 00024 Level.BackgroundColor = Color.Black; 00025 Level.CreateBorders(); 00026 00027 PhysicsObject p1 = new PhysicsObject(2 * 100.0, 2 * 100.0, Shape.Circle); 00028 p1.Y = Level.Bottom + 200.0; 00029 Add(p1); 00030 00031 PhysicsObject p2 = new PhysicsObject(2 * 50.0, 2 * 50.0, Shape.Circle); 00032 p2.Y = p1.Y + 100 + 50; 00033 Add(p2); 00034 00035 PhysicsObject p3 = new PhysicsObject(2 * 30.0, 2 * 30.0, Shape.Circle); 00036 p3.Y = p2.Y + 50 + 30; 00037 Add(p3); 00038 00039 // p3.Hit(new Vector(80, 1)); 00040 00041 Gravity = new Vector(0, -400); 00042 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 00043 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 00044 Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Avustus"); 00045 00046 Keyboard.Listen(Key.Up, ButtonState.Pressed, LyoPalloa, "Lyö keskipalloa ylöspäin", p2, new Vector(0, 1000)); 00047 } 00048 00049 00050 /// <summary> 00051 /// Lyö valittua palloa haluutuun suuntaan 00052 /// </summary> 00053 /// <param name="pallo">pallo jota lyödään</param> 00054 /// <param name="suunta">suuntavektori lyönnille</param> 00055 private void LyoPalloa(PhysicsObject pallo, Vector suunta) 00056 { 00057 pallo.Hit(suunta); 00058 } 00059 }