4.1 spielen mit formen

269 Aufrufe

Veröffentlicht am

Veröffentlicht in: Bildung
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
269
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
3
Aktionen
Geteilt
0
Downloads
1
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • Lösung:' Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten.GraphicsWindow.Hide()gw = 620gh = 450endtime = Clock.ElapsedMillisecondsstarttime = Clock.ElapsedMillisecondsblinktime = Clock.ElapsedMillisecondsgamestarttime = Clock.ElapsedMillisecondsGraphicsWindow.CanResize = "False"GraphicsWindow.Width = gwGraphicsWindow.Height = ghGraphicsWindow.Top = (Desktop.Height - gh) / 2GraphicsWindow.Left = (Desktop.Width - gw) / 2GraphicsWindow.Title = "Blume"GraphicsWindow.BrushColor = "Pink"GraphicsWindow.Show()CreateUI()GraphicsWindow.MouseDown = MouseActionControls.ButtonClicked = OnclickButtonstarttimer()Sub MouseAction x = GraphicsWindow.MouseX y = GraphicsWindow.MouseYGraphicsWindow.MouseMove = MouseMoveIf x > px And x < px + 180 And y > py And y < py + 400 ThenGraphicsWindow.MouseUp = onMouseUpEventIf x < px + 90 and y < py + 100 Thensh = leaf1 bsh = leafs[1]GetShapeXY()ElseIf x < px + 200 And y < py + 100 Thensh = petal1 bsh = petals[1]GetShapeXY() ElseIf x < px + 90 and y < py + 200 Thensh = stikbsh = stickGetShapeXY() ElseIf x < px + 200 And y < py + 200 Thensh = circle bsh = circ GetShapeXY() ElseIf x < px + 90 And y < py + 300 Thensh = petal2bsh = petals[2]GetShapeXY() ElseIf x < px + 200 And y < py + 300 thensh = petal3 bsh = petals[3]GetShapeXY() ElseIf x < px+90 And y < py + 400 Thensh = petal4 bsh = petals[4]GetShapeXY() ElseIf x < px + 200 And y < py + 400 Thensh = leaf2 bsh = leafs[2]GetShapeXY() EndIfEndIfEndSubSub GetShapeXYshx = shapes.GetLeft(sh) shy = shapes.GetTop(sh)EndSubSub CreateUIGraphicsWindow.DrawRectangle(10, 10, 380, 420)GraphicsWindow.DrawRectangle(410, 10, 200, 420) GraphicsWindow.BrushColor = "Brown" stick = Shapes.AddRectangle(5, 180) Shapes.Move(stick, 174, 238) GraphicsWindow.BrushColor = "Pink" petals[1] = Shapes.AddEllipse(70, 55) Shapes.Move(petals[1], 93, 115)Shapes.Rotate(petals[1], 15) petals[2] = Shapes.AddEllipse(70, 55) Shapes.Move(petals[2], 148, 81)Shapes.Rotate(petals[2], 105) petals[3] = Shapes.AddEllipse(75, 55) Shapes.Move(petals[3], 185, 135)Shapes.Rotate(petals[3], 200) petals[4] = Shapes.AddEllipse(75, 55) Shapes.Move(petals[4], 135, 175)Shapes.Rotate(petals[4], 90) GraphicsWindow.BrushColor = "Yellow" circ = Shapes.AddEllipse(25, 25) Shapes.Move(circ, 162, 140) GraphicsWindow.BrushColor = "Green"For i = 1 To 2 leafs[i] = Shapes.AddEllipse(50, 25) Shapes.Move(leafs[i], 223 -(i * 48), 258)Shapes.Rotate(leafs[i], 180 * i) EndFor Hide() px = 420py = 20 pw = 90 ph = 100GraphicsWindow.DrawRectangle(px, py, 180, 200)GraphicsWindow.DrawRectangle(px, 220, 180, 200)GraphicsWindow.DrawRectangle(px, py, pw, ph)GraphicsWindow.DrawRectangle(px + 90, py, pw, ph)GraphicsWindow.DrawRectangle(px, py + 100, pw, ph) GraphicsWindow.DrawRectangle(px + 90, py + 100, pw, ph)GraphicsWindow.DrawRectangle(px, py + 200, pw, ph)GraphicsWindow.DrawRectangle(px + 90, py + 200, pw, ph)GraphicsWindow.DrawRectangle(px, py + 300, pw, ph)GraphicsWindow.DrawRectangle(px + 90, py + 300, pw, ph)GraphicsWindow.BrushColor = "Green" leaf1 = Shapes.AddEllipse(50, 25) Shapes.Move(leaf1, px + 20, py + 40) leaf2 = Shapes.AddEllipse(50, 25) Shapes.Move(leaf2, px + 115, py + 340) GraphicsWindow.BrushColor = "Pink" petal1 = Shapes.AddEllipse(65, 50) Shapes.Move(petal1, px + 105, py + 30) Shapes.Rotate(petal1, 15) petal2 = Shapes.AddEllipse(65, 50) Shapes.Move(petal2, px + 20, py + 230) Shapes.Rotate(petal2, 105) petal3=Shapes.AddEllipse(65, 50) Shapes.Move(petal3, px + 105, py + 230) Shapes.Rotate(petal3, 200) petal4 = Shapes.AddEllipse(65, 50) Shapes.Move(petal4, px + 20, py + 330) Shapes.Rotate(petal4, 90)GraphicsWindow.BrushColor = "Brown"stik = Shapes.AddRectangle(5, 50) Shapes.Move(stik, px + 40, py + 130) GraphicsWindow.BrushColor = "Yellow" circle = Shapes.AddEllipse(25, 25) Shapes.Move(circle, px + 120, py + 130)EndSubSub HideFor i = 1 To 8Shapes.SetOpacity(petals[i], 10) EndForFor i = 1 To 2Shapes.SetOpacity(leafs[i], 10) EndForShapes.SetOpacity(circ, 10)Shapes.SetOpacity(stick, 10)EndSubSub MouseMove x = GraphicsWindow.MouseX y = GraphicsWindow.MouseYIf Mouse.IsLeftButtonDown ThenShapes.Move(sh, x, y) EndIfEndSubSub onMouseUpEventIf bsh = stick ThenIf (Shapes.GetLeft(sh) + 10) >= Shapes.GetLeft(bsh) And (Shapes.GetLeft(sh) - 10) <= Shapes.GetLeft(bsh) ThenShapes.SetOpacity(bsh, 100)Shapes.Remove(sh) dropped = dropped + 1 ElseShapes.Move(sh, shx, shy) EndIfEndIfIf (Shapes.GetLeft(sh) + 10) >= Shapes.GetLeft(bsh) And (Shapes.GetLeft(sh) - 10) <= Shapes.GetLeft(bsh) And (Shapes.GetTop(sh) + 10) >= Shapes.GetTop(bsh) And (Shapes.GetTop(sh) - 10) <= Shapes.GetTop(bsh) ThenShapes.SetOpacity(bsh, 100)Shapes.Remove(sh) dropped = dropped + 1 ElseShapes.Move(sh, shx, shy) EndIfEndSubSub starttimerGraphicsWindow.BrushColor = "Black"Submitbtn = Controls.AddButton("Absenden", 300, 390)Controls.SetSize(Submitbtn, 70, 35) end = Clock.ElapsedMilliseconds start = Clock.ElapsedMilliseconds blink = Clock.ElapsedMillisecondsgamestart = Clock.ElapsedMilliseconds init = 0While init < 1 game = Clock.ElapsedMilliseconds - startGraphicsWindow.BrushColor = "#3975e5" GraphicsWindow.FontSize = 15GraphicsWindow.FillRectangle(250, 20, 120, 25)GraphicsWindow.BrushColor = "Black"tsecamt = Math.Round(game / 1000) tsec = Math.Remainder(tsecamt, 60)tming = Math.Floor(tsecamt / 60) tmin = Math.Remainder(tming, 60)thour = Math.Floor(tming / 60)If tsec < 10 ThenstrSec = Text.Append(":0", tsec) ElsestrSec = Text.Append(":", tsec) EndIfIf tmin < 10 ThenstrMin = Text.Append("0", tmin) ElsestrMin = Text.Append("", tmin) EndIf sec = Text.Append(strMin, strSec)GraphicsWindow.DrawText(250, 22, " Zeit: " + thour + ":" + sec) GraphicsWindow.FontSize = 10 end = Clock.ElapsedMilliseconds fps = 0 Program.Delay(1000)EndWhileEndSubSub OnclickButtonIf Controls.GetButtonCaption(Controls.LastClickedButton) = "Absenden" ThenIF dropped = 8 Then init = 2 GraphicsWindow.ShowMessage("Herzlichen Glückwunsch! Sie benötigten " + thour +":"+ tsec + " Sekunden, um diese Blume zu schaffen.","Result")Program.End() EndIfEndIfEndSub
  • 4.1 spielen mit formen

    1. 1. Microsoft® Small Basic Spielen mit Formen Geschätzte Zeit für den Abschluss dieser Lektion: 1 Stunde
    2. 2. Spielen mit Formen In dieser Lektion erhalten Sie Informationen über: Erstellen von Spielen mittels Formen. Erstellen Sie Spielelemente, indem Sie verschiedene Eigenschaften und Prozesse des Shapes-Objekts verwenden.
    3. 3. Spaß mit Formen Bisher haben Sie gesehen, wie Sie einzelne Formen mittels des Shapes-Objekts im Grafikfenster zeichnen. Nun ist es an der Zeit, Spaß mit Formen zu haben… Wissen Sie, dass Sie mit Formen spielen und Spiele erstellen können? Wie Sie wissen, können Sie verschiedene Prozesse des Shapes-Objekts verwenden, um Formen im Grafikfenster zu zeichnen, zu färben, zu rotieren und zu animieren. Nun erfahren Sie, wie Sie verschiedene Formen verwenden können, um Spiele zu erstellen. Beginnen wir mit einem sehr einfachen Spiel, das Sie mittels des Shapes-Objekts in Small Basic erstellen können.
    4. 4. Balance für den Ball – Das Spiel In diesem einfachen Spiel balancieren Sie den Ball im Grafikfenster auf einer Wippe. Das Spiel testet die Reaktionsfähigkeit einer Person. Der Zeitnehmer zeigt an, wie lange der Benutzer den Ball auf der Wippe in der Balance hält. Beachten Sie, wie Sie verschiedene Formen mittels Shapes-Objekts erstellen können, um dem Spiel farbige Elemente hinzuzufügen.
    5. 5. Balance für den Ball – So wird es gespielt Wie spielen Sie also dieses Spiel? Schritte für das Spielen des Spiels  Zunächst lassen Sie den Ball auf die Wippe fallen, indem Sie auf der Tastatur die EINGABETASTE drücken.  Nachdem Sie den Ball fallen gelassen haben, drücken Sie die Tasten PFEIL NACH LINKS und PFEIL NACH RECHTS auf der Tastatur, um den Ball auf der Wippe zu balancieren, ohne dass dieser fällt.
    6. 6. Balance für den Ball – Der Code Betrachten wir den Code für das Spiel nun im Detail… Sie erstellen mittels des GraphicsWindow-Objekts eine Benutzeroberfläche für das Spiel. Sie fügen eine Form hinzu und verschieben sie, indem Sie verschiedene Prozesse und Eigenschaften des Shapes-Objekts verwenden. Sie fügen Ereignishandler hinzu und verwenden für die verschiedenen Aktionen verschiedene Bedingungen.
    7. 7. Triff die richtige Form – Das Spiel Betrachten wir nun ein komplexeres Spiel. In diesem Beispiel erhalten Sie Punkte, indem Sie die Maus für die Auswahl der richtigen Form aus den Formen verwenden, die im Grafikfenster angezeigt werden. Ziel des Spiels ist es, durch Klicken auf die richtige Form Punkte zu erhalten. Beachten Sie, wie die einzelnen Arten von farbigen Formen mittels des Shapes-Objekts verwendet werden.
    8. 8. Triff die richtige Form – So wird es gespielt Wie spielen Sie also dieses Spiel? Schritte für das Spielen des Spiels  Verschiedene Formen werden über den Bildschirm bewegt.  Der Name für eine Form wird kurz angezeigt, und der Benutzer muss auf die Form klicken, die dem Formnamen entspricht.  Der Benutzer erhält durch Klicken auf die richtige Form Punkte.
    9. 9. Triff die richtige Form – Der Code Betrachten wir den Code für das Spiel nun im Detail… Sie erstellen mittels des GraphicsWindow-Objekts eine Benutzeroberfläche für das Spiel. Sie fügen das Textfeld hinzu und legen den Text im Textfeld fest, indem Sie verschiedene Prozesse für das Controls-Objekt verwenden. Sie fügen verschiedene Arten von Formen hinzu und verschieben diese, indem Sie das Shapes-Objekts verwenden, und fügen mittels Clock einen Zeitnehmer hinzu. Außerdem legen Sie verschiedene Bedingungen für die Ausführung der verschiedenen Aktionen fest.
    10. 10. Fassen wir zusammen… Herzlichen Glückwunsch! Sie haben Folgendes gelernt: Spiele mittels Formen erstellen. Spielelemente erstellen, indem Sie verschiedene Eigenschaften und Prozesse des Shapes-Objekts verwenden.
    11. 11. Zeigen Sie, was Sie wissen Schreiben Sie ein Programm, um ein Grafikfenster anzuzeigen, und führen Sie anschließend die folgenden Schritte durch:  Erstellen Sie im Fenster eine leicht verdeckte Blume, indem Sie verschiedene Formen verwenden.  Erstellen Sie einen getrennten Bereich mit eigenen Formen, die den Formen entsprechen, die Sie für die Erstellung der Blume verwendet haben.  Ziehen Sie die einzelnen Formen aus dem Bereich, um die Blume erneut zu erstellen.

    ×