Beispiel #1
0
        static void Main()
        {
            CsharpCanvas canvas = new CsharpCanvas();
            DrawingArea  area   = new DrawingArea(canvas);

            canvas.Setup();
        }
        static void Main()
        {
            // eine neue Instanz von CsharpCanvas anlegen
            CsharpCanvas canvas = new CsharpCanvas();

            // eine neue Instanz des Pacmancontrollers anlegen und den canvas übergeben
            PacmanController controller = new PacmanController(canvas);

            // canvas starten
            canvas.Setup();
        }
        public DrawingArea(CsharpCanvas aCanvas)
        {
            canvas = aCanvas;
            // Vorder- und Hintergrund definieren
            canvas.SetBackgroundColor(0x00, 0xA8, 0xC6);
            canvas.SetForegroundColor(System.Drawing.Color.Blue);

            // Draw Event abonieren
            canvas.Draw += Canvas_Draw;

            // initialisiert das canvas
            canvas.Init();
        }
        /// <summary>
        /// Erstellt eine neue Instanz des Pacmancontrollers
        /// </summary>
        /// <param name="_canvas">Canvas in den gezeichnet werden soll</param>
        public PacmanController(CsharpCanvas _canvas)
        {
            // Solange der PacmanController lebt wollen wir Zugriff auf den übergebenen CsharpCanvas
            // haben. Darum wird eine Referenz im entsprechenden Attribut gespeichert.
            canvas = _canvas;

            // definieren was passieren soll, wenn der CsharpCanvas seinen Inhalt neu zeichnen
            // will. Hier wird die Methode als EventHandler an das Draw-Event gehängt.
            canvas.Draw += DrawPacmanAtItsCurrentPositionAndRedrawMaze;

            // Der CsharpCanvas wird als Spiel initialisiert (mit Punkte & Levelanzeige)
            // wenn das Spielfeld 30 mal pro Sekunde gezeichnet wird, sollte ein flüssiges
            // spielen möglich sein.
            canvas.InitGame(30);

            StartGame();
        }