Innen: Hungarian Scratch-Wiki
A Mondd() blokk egy Kinézet blokk és egy Kirakóelem blokk.
A blokk létrehoz a szereplőhöz egy szövegbuborékot a megfelelő szöveggel. Ez a buborék addig látható, amíg nem aktiválunk egy másik szöveg- vagy gondolati buborékot, illetve amíg meg nem nyomjuk az Álljon le gombot. Ez a blokk hasonlít a Gondold () (blokk)ra, azzal a különbséggel, hogy ez a blokk egy szövegbuborékot, míg a másik egy gondolatbuborékot hoz létre. Ez a blokk a végrehajtása után egyből a következő blokkra ugrik, ellentétben a Mondd () () mp-ig blokkal.
Példák
Mivel a létrehozott szövegbuborék adott esetben bármeddig látható maradhat (lásd: a típushibát a szövegbuborék leállításáról), ezért gyakran használjuk olyan szövegbuborék megjelenítésére, amelyet egy előre meg nem határozott idő elteltével (például egy kiváltó esemény vagy üzenet hatására) szeretnénk leállítani.
Néhány tipikus alkalmazás:
- folyamatos szöveget kiadó objektum
mondd [Bzz... Bzz...]
- kép- vagy jelsorozat
mondd [<-- Dragon {} Bank -->]
- olyan üzenet, amelyről nem akarjuk, hogy eltűnjön
mondd [Én vagyok a soha el nem tűnő jel. Az idő úgy megkoptatott...]
- üzenet, amely a szóköz lenyomására a következő üzenetre vált
zz-ra kattintáskor mondd [Szeretnéd tudni a választ az élet értelmére? (Nyomd meg a szóközt.)] várj eddig <key [szóköz] pressed?> mondd [42]
- befejező üzenet (például 'Nyertél' vagy 'Kérlek, magyarázd meg gondolataidat')
zz-ra kattintáskor várj eddig <(pontszám) > (9)> mondd [Gratulálok, 10 ponttal nyertél!]
- üzenet, amelyről a felhasználó döntheti el, meddig lehessen látni
zz-ra kattintáskor kérdezd meg [Milyen hosszan mondjam a π-t?] és várj mondd [3.14159265358979323846264338327950288...] várj (válasz) mp-et mondd []
- változó hosszúságú üzenet (például amíg várunk a játékos lépésére)
zz-ra kattintáskor mondd [Nyomd meg a szóközt a folytatáshoz!] várj eddig <key [szóköz] pressed?> broadcast [continue v] mondd []
Típushiba
A Mondd () blokkról gyakran tévesen azt hisszük, hogy a szöveg eltűnik, amikor a program véget ér vagy a következő blokkra ugrik. Valójában a szövegbuborék ezt követően is ott marad, egészen addig, amíg a szereplő nem mond vagy gondol valami mást. Ha el akarjuk tüntetni a szövegbuborékot, a szereplőnek egy üres szöveget kell mondania, amely elrejti a buborékot.
Megjegyzés: Egy projekt indítása és leállítása megállítja a szereplők összes beszédét.
A következő program példát ad arra, amikor egy szereplő előre meg nem határozott ideig mond egy szövegbuborékot, majd eltűnik a buborék.
zz-ra kattintáskor mondd [Figyelj rám!] ismételd (véletlen (90) és (110) között) fordulj (4) fokot end mondd []
Hibakeresés
A Mondd () blokk hasznos lehet hibakeresésre, hiszen segítségével megjeleníthetünk bizonyos változóértékeket, amelyekre szükségünk van, ha ezeket egy Mindig ciklusba tesszük. Például:
mindig mondd ((változó1) + ((változó2) * (változó3))) end