Lumiukko

LumiukkoAli/LumiukkoAli/LumiukkoAli.cs

Go to the documentation of this file.
00001 using Jypeli;
00002 
00003 /// @author  Vesa Lappalainen
00004 /// @version 09.10.2011
00005 ///
00006 /// <summary>
00007 /// Kaksi lumiukkoa aliohjelman avulla
00008 /// </summary>
00009 public class LumiukkoAli : PhysicsGame
00010 {
00011     /// <summary>
00012     /// Pääohjelmassa laitetaan "peli" käyntiin Jypeli-kirjastolle tyypilliseen tapaan
00013     /// </summary>
00014     /// <param name="args">Ei käytössä</param>
00015     public static void Main(string[] args)
00016     {
00017         using (LumiukkoAli peli = new LumiukkoAli())
00018         {
00019             peli.Run();
00020         }
00021     }
00022 
00023 
00024     /// <summary>
00025     /// Aliohjelmassa piirretään ja zoomataan kamera siten, 
00026     /// että kenttä näkyy hyvin ruudulla.
00027     /// </summary>
00028     public override void Begin()
00029     {
00030         // Camera.ZoomToLevel();
00031         Level.BackgroundColor = Color.Black;
00032 
00033         PiirraLumiukko(this, 0, Level.Bottom + 200.0);
00034         PiirraLumiukko(this, 200.0, Level.Bottom + 300.0);
00035         Camera.ZoomToAllObjects(100);
00036         //        Level.CreateBorders();
00037         BoundingRectangle rect = Level.FindObjectLimits();
00038         Camera.ZoomTo(rect);
00039         Level.Width = rect.Width;
00040         Level.Height = rect.Height;
00041         Level.CreateBorders();
00042     }
00043 
00044 
00045     /// <summary>
00046     /// Aliohjelma piirtää lumiukon
00047     /// annettuun paikkaan.
00048     /// </summary>
00049     /// <param name="peli">Peli, johon lumiukko tehdään.</param>
00050     /// <param name="x">Lumiukon alimman pallon x-koordinaatti.</param>
00051     /// <param name="y">Lumiukon alimman pallon y-koordinaatti.</param>
00052     public static void PiirraLumiukko(PhysicsGame peli, double x, double y)
00053     {
00054         PhysicsObject p1, p2, p3;
00055         double r1 = 100;
00056         double r2 = 50;
00057         double r3 = 30;
00058 
00059         p1 = new PhysicsObject(2 * r1, 2 * r1, Shape.Circle);
00060         p1.X = x;
00061         p1.Y = y;
00062         peli.Add(p1);
00063 
00064         p2 = new PhysicsObject(2 * r2, 2 * r2, Shape.Circle);
00065         p2.X = x;
00066         p2.Y = p1.Y + r1 + r2;
00067         peli.Add(p2);
00068 
00069         p3 = new PhysicsObject(2 * r3, 2 * r3, Shape.Circle);
00070         p3.X = x;
00071         p3.Y = p2.Y + r2 + r3;
00072         peli.Add(p3);
00073     }
00074 }
 All Classes Files Functions