Hilfestellung Würfelmaschine Lehrbuch

Startseite Foren Deutsches LiveCode-Forum Hilfestellung Würfelmaschine Lehrbuch

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #26921
      Pflatsch
      Teilnehmer

        Ein freundliches Hallo an die LiveCodeBlog Community 🙂

        Mit großer freute beschäftige ich mich gerade als “Programmierneuling” mit dem Buch “Eigene Apps Programmieren”. Bis zu Seite 129 bin ich gut voran gekommen. Nun stockt es aber bei der Würfelmaschine.

        Ich konnte wie im Buch gut beschrieben meinen würfelbutton sowie schönen Grafiken einfügen und das Programm funktioniert fehlerfrei. Danke dafür

        Nun zu meiner eigentlich Frage. Zum Abschluss des Projekts auf Seite 128 fügt man einen 2. Würfel hinzu. Der über den gleichen Button mit angesteuert wird und ebenfalls eine zufallszahl ausspuckt.

        1 on mouseup
        2 put random(6) into zahl
        3 put random(6) into zahl2
        4 put “wuerfel” &zahl into grafikname
        5 put “wuerfel” &zah2 into grafikname2
        6 set the icon of button “wuerfelbild” to the id of img (grafikname) of card “Elemente”
        7 set the icon of button “wuerfelbild2” to the id of img (grafikname2) of card “Elemente”
        8 end mouseup

        Mein “kopierter” “Button” wurde korrekt umbenannt in “wuerfelbild2”.

        Leider folgt folgende Fehlermeldung beim live ausführen.

        “” button “wuefelbutton”: execution error at line 7 (Chunk: no such object), char 45 “”

        Vielleicht könnt ihr mir helfen und meinen Fehler erklären. Oder benötigt es noch weiter Information meinerseits ?

        Grüße Pflatsch

      • #26923
        Klaus Major
        Administrator

          Hallo Pflatsch,

          willkommen im Forum!

          Kleiner Flüchtigkeitsfehler in Zeile 6:
          ## put “wuerfel” & zah2 into grafikname2
          put “wuerfel” & zahl2 into grafikname2

          Bitte nicht so geizig mit Leerzeichen sein, die machen ein Skript lesbarer! 🙂

          Gruß

          Klaus

          • #26925
            Pflatsch
            Teilnehmer

              Das ist mir ja nun regelrecht peinlich :P.

              einige mal in ruhe durch gelesen und trotzdem ist es einen nicht aufgefallen.

              Vielen dank für die schnelle und nun doch einfache Hilfe Stellung 😀

              Gruß Pflatsch

              P.s. kurze zwischen frage. Wenn ich “variablen” setze Vor allem “globale variablen” gibt es die Möglichkeit diese in einer Art liste anzuzeigen ? ohne den ganzen Skript lesen zu müssen ? Ich denke das wird bei umfangreicheren Geschichten schwieriger alle im überblick zu behalten.

              Beispiel:
              variable x = 1
              variable y = 2
              variable z = 3

          • #26926
            Klaus Major
            Administrator

              Hi Pflatsch,

              kein Grund zur Peinlichkeit, da waren wir alle schon einmal! 🙂

              Zur Frage, ja gibt es:

              ...
              put the globalnames
              ...
              ## Und sogar:
              put the localnames
              ...

              Gruß

              Klaus

            • #26943
              Axwald
              Teilnehmer

                Hallo,

                Wenn ich “variablen” setze Vor allem “globale variablen” gibt es die Möglichkeit diese in einer Art liste anzuzeigen ?

                Hast Du schon im Skript-Editor unten den Reiter “Variables” gesehen? Da sind alle aufgelistet, die im aktuellen Kontext gültig sind, mit Werten.
                Beachte auch die anderen Reiter, und die Check-Boxen!

                Des weiteren hat die Message-Box eine ganze Reihe wichtiger Informationen, gut versteckt in den “anderen Tabs”.

                Viel Spaß!

                • #26995
                  Pflatsch
                  Teilnehmer

                    Nein diese ist mir neu , danke für den Tipp.

                    Aktuell lese ich mich ein zum Thema schleifen. S.141/142

                    Aus aktuellen tipp habe ich mal wenn auch Sinnfrei einfach 2 Variablen mit in den Script genommen.

                    ////////////////////////////////////////////////

                    1 global zufallszahl
                    2 put 12 into alter
                    3 on mouseUp
                    4 repeat with z = 1 to 100
                    5 put z & return into fld “ausgabe”
                    6 end repeat
                    7 wait 4 sec
                    8 put empty into fld “ausgabe”
                    9 end mouseUp

                    ////////////////////////////////////////////////

                    leider zeigt es mir keine der Variablen unter “Variables” an. Weder die Globale noch die “12 into alter”

                    Gruß Pflasch

                    P.s. auch danke an die Klaus für die Tipps ,

                • #27003
                  Klaus Major
                  Administrator

                    Hi Pflatsch,

                    1. Bitte lass die Numerierung weg und benutze die CODE Tags nach dem Einfügen von Skripten, dann belibt die Formatierung erhalten und sieht so aus:

                    global zufallszahl
                    put 12 into alter
                    on mouseUp
                       repeat with z = 1 to 100
                          put z & return into fld "ausgabe"
                       end repeat
                       wait 4 sec
                       put empty into fld "ausgabe"
                    end mouseUp

                    2. Wo genau hast Du nachgesehen?

                    leider zeigt es mir keine der Variablen unter “Variables” an.

                    Wenn du den Reiter im Skript-Editor meinst, der wird nur beim DEBUGgen gefüllt und angezeigt.

                    Aber die zweite Zeile -> put 12 into alter
                    wird niemals ausgeführt, da sie ausserhalb eines Handlers liegt!

                    Wann, wie und wo möchtest Du die Variablen denn anzeigen?

                    Gruß

                    Klaus

                Ansicht von 4 Antwort-Themen
                • Du musst angemeldet sein, um auf dieses Thema antworten zu können.