/// <summary> /// Alustetaan peli /// </summary> public override void Begin() { Level.Background.Color = Color.Black; double dy = Screen.Height / NY; // Lasketaan ruudun korkeus pikseleinä int nx = (int)(Screen.Width / dy); // ja montako mahtuu X-suuntaan int ny = NY; sukupolvi = new int[ny, nx]; // Luodaan taulukot seuraavaSukupolvi = new int[ny, nx]; oliot = new GameObject[ny, nx]; // seuraavaSukupolvi = sukupolvi; // jos tämä on mukana, käyttäytyy eri tavalla LuoOliot(this, oliot); // IsFullScreen = true; timer.Interval = 0.1; // timeri antamaan tapahtuma 0.1 sek välein timer.Timeout += LaskeJaPiirraSeuraavaSukupolvi; timer.Start(); ArvoSukupolvi(); // jos halutaan käynnistää automaattisesti Camera.ZoomToAllObjects(); // Camera.Zoom(20); // Camera.Move(new Vector(Screen.Width/2, Screen.Height/2)); // Kuuntelijat: Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu"); Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); Keyboard.Listen(Key.Enter, ButtonState.Pressed, Jatka, "Jatka"); Keyboard.Listen(Key.Space, ButtonState.Pressed, ArvoSukupolvi, "Arvo sukupolvi"); Keyboard.Listen(Key.Delete, ButtonState.Pressed, TyhjennaSukupolvi, "Tyhjennä sukupolvi"); Keyboard.Listen(Key.Right, ButtonState.Pressed, LaskeJaPiirraSeuraavaSukupolvi, "Seuraava sukupolvi"); Keyboard.Listen(Key.Left, ButtonState.Pressed, PiirraEdellinenSukupolvi, "Edellinen sukupolvi"); Mouse.IsCursorVisible = true; Mouse.Listen(MouseButton.Left, ButtonState.Pressed, HiiriPainettu, null); Mouse.Listen(MouseButton.Right, ButtonState.Pressed, delegate { Jatka(); }, "Jatka"); TouchPanel.Listen(ButtonState.Pressed, NayttoaPainettu, null); TouchPanel.ListenGesture(GestureType.DoubleTap, delegate { Jatka(); }, "Jatka"); TouchPanel.ListenGesture(GestureType.VerticalDrag, delegate { TyhjennaSukupolvi(); }, "Tyhjennä taulukko"); TouchPanel.ListenGesture(GestureType.HorizontalDrag, delegate { ArvoSukupolvi(); }, "Arvo sukupolvi"); Accelerometer.Listen(AccelerometerDirection.Shake, delegate { ArvoSukupolvi(); }, "Arvo sukupolvi"); PhoneBackButton.Listen(Exit, "Lopeta peli"); }