Snaps Library

Aus Flinkwiki
Wechseln zu: Navigation, Suche
Seitenübersicht
Zur Seite "C-Sharp-Programmierung"
Zur Seite "Programmierung"



Die "Snap Library" von Rob Miles enthält eine Sammlung nützlicher Methoden für C#, die dem Programmieranfänger einen schnellen und komfortablen Einstieg ermöglichen.


Installation

Nuget-Paket SNAPS Library for Learning to Program 1.4.0


Bei Installation von Visual Studio 2015 / 2017 (keine niedrigeren Versionen) Windows 10 SDK bzw. Win10SDK mit installieren.

In Visual Studio

PROJEKT  > NuGet-Pakete verwalten > Durchsuchen > SNAPS Library
using SnapsLibrary;




Snaps-Anweisungen


Teil 1: Grundlagen der Programmierung

Textausgabe:

       SnapsEngine.SetTitleString("xyz");
       SnapsEngine.DisplayString("abcd");

Textausgabe (ohne Löschen/Überschreiben der vorhergehenden Zeile):

       SnapsEngine.AddLineToTextDisplay(pepperoniCount.ToString() + " Pepperoni");

Sprachausgabe:

       SnapsEngine.SpeakString("Guten Tag!");

Pause:

       SnapsEngine.Delay(10.5);

Farben:

       SnapsEngine.SetTextColor(SnapsColor.Cyan);
       SnapsEngine.SetTitleColor(SnapsColor.Green);
       SnapsEngine.SetBackgroundColor(SnapsColor.Red);

Eigene Farben erstellen, z. B. lilac (fliederfarben:

       SnapsEngine.SetBackgroundColor(red: 200, green: 162, blue: 200); 

Strings einlesen:

       guestName = SnapsEngine.ReadString("What is your name");

Wochentag einlesen:

       weekDay = SnapsEngine.GetDayOfWeekName();

Uhrzeit:

       int hourValue = SnapsEngine.GetHourValue();
       int minuteValue = SnapsEngine.GetMinuteValue();
       SnapsEngine.DisplayString(day+" "+ hourValue + ":" + minuteValue);

Schriftgröße verändern:

       SnapsEngine.SetDisplayStringSize(40);

Würfeln:

       int spotCount = SnapsEngine.ThrowDice();

Button-Auswahl:

       ride = SnapsEngine.SelectFrom2Buttons(
           "Scenic River Cruise",
           "The Regurgitator");
       
       -> SnapsEngine.SelectFrom2Buttons, SnapsEngine.SelectFrom3Buttons, SnapsEngine.SelectFrom4Buttons, SnapsEngine.SelectFrom5Buttons


Ganzzahlen einlesen:

           int ageInt = SnapsEngine.ReadInteger("What is your age?");

Sounds abspielen (aus ./Sounds/SoundEffects/):

       SnapsEngine.PlaySoundEffect("explosion");

Bilder aufrufen:

       string url = "ms-appx:///Images/City.jpg";
       SnapsEngine.DisplayImageFromUrl(imageURL: url);

bzw.

       string url = "https://farm9.staticflickr.com/8713/16988005732_7fefe368cc_d.jpg";
       SnapsEngine.DisplayImageFromUrl(imageURL:url);

Text vom Display löschen

               SnapsEngine.ClearTextDisplay();

Button zum Wiederholen einer Schleife (eingebettet in eine Endlos-Schleife)

           SnapsEngine.WaitForButton("Press to continue");

Schlüsselwort break beim Antippen/Anklicken des Displays

using SnapsLibrary;

class Ch06_07_TapScreenToStop
{
    public void StartProgram()
    {
        SnapsEngine.SetTitleString("Talking Times Tables");

        while (true)
        {
            int timesValue = 2;

            // Make sure that the screen tapped flag is clear
            SnapsEngine.ClearScreenTappedFlag();

            for (int count = 1; count < 13; count = count + 1)
            {

                int result = count * timesValue;

                string message = count.ToString() +
                    " times " + timesValue.ToString() +
                    " is " + result.ToString();

                SnapsEngine.DisplayString(message);
                SnapsEngine.SpeakString(message);

                // If the screen is tapped, break out of the for loop
                if (SnapsEngine.ScreenHasBeenTapped())
                    break;
            }
            SnapsEngine.WaitForButton("Press to continue");
        }
    }
}

Spracheingabe:

           string toppingChoice = SnapsEngine.SelectFromFiveSpokenPhrases(
                   prompt: "What pizza topping do you want",
                   phrase1: "Cheese and Tomato",
                   phrase2: "Pepperoni",
                   phrase3: "Chicken",
                   phrase4: "Vegetarian",
                   phrase5: "Show Totals");

Passwort-Eingabe (Buchstaben nur als Punkte sichtbar):

           string password = SnapsEngine.ReadPassword("Enter your secret password.");



Teil 2: Fortgeschrittene Programmierung


Teil 3: Spiele erstellen

Spiel-Engine starten:

       SnapsEngine.StartGameEngine(fullScreen: false, framesPerSecond: 60);

Spielfeld anlegen (in der Game Loop):

           SnapsEngine.DrawGamePage();

Sprite anlegen (vor der Game Loop):

       ImageSprite ball = new ImageSprite(imageURL: "ms-appx:///Images/ball.png");
       SnapsEngine.AddSpriteToGame(ball);

Größenverhältnis von Ansichtsfenster und Sprites:

       double ballWidth = SnapsEngine.GameViewportWidth / 20.0;




Quellen

Miles, Rob: Begin to Code with C#

Downloads zum Buch "Begin to Code with C#"


| |