Innen: Hungarian Scratch-Wiki
A „Glide() Secs to X: () Y:()” – „Csússz egy másodpercig” egy két részből álló alakzat: az egyik a „Motion” – „Mozgás” blokk, a másik a „Stack” blokk – „”. A blokk mozgatja a sprite-ot meghatározott X és Y pozíciókban meghatározott időn belül – ez olyan, mintha beállítanánk a sprite-ot egy irányba és többször egymás után használnánk a „Move” – „Mozgás” lépéseket, de nagyobb pontossággal. Ennek a „Glide” – „Csúszás” blokknak az a hátránya, hogy a sprite mozgása közben megszakítja az előre tervezett folyamatot (forgatókönyvet), ezzel megakadályozza, hogy a sprite mozgása közben bármi más folyamat végbemenjen. Továbbá a „Glide” – „Csúszás”-t csak egy „Stopping” – „Megállító” blokk tudja visszatartani és az „If on Edge, Bounce” – „A széléről pattanjon vissza” blokk sem fogja végezni az eredeti feladatát, miközben amíg a sprite csúszkál. Csússz_11
Tartalom
- 1 Példák a használatra
- 2 A „Glide” – „Csúszás” és a „Move Step” – „Mozgás” blokkok összehasonlítása
- 3 Csúszás az „Ease Out” – „könnyed” effekttel
- 4 Lásd még
Példák a használatra
A blokkot akkor használják, amikor a spritenak siklania kell – alább láthatóak a közös/mindennapi használatai:
- A hal mozog az akváriumban
mindig csússz (véletlen (1) és (2) között) mp-ig ide x: (véletlen (-240) és (240) között) y: (véletlen (-100) és (100) között)
- Akadály – sprite-tokat hozunk létre és siklanak a képernyő széle felé, úgy, mint a Frogger-ben
[szóköz v] gomb lenyomásakor tűnj el menj (240) lépést ismételd eddig <(játék vége) = [1]> készíts másolatot:[magadról v] várj eddig: (3) end ezen szereplőre kattintáskor jelenj meg csússz (5) mp-ig ide x:(-240) y:(y hely) töröld ezt a másolatot
- Leeső tárgyak
y legyen (180) csússz (1) mp-ig ide x:(x hely) y:(-180)
- A sprite költözik/elmozdul
csússz (1) mp-ig ide x: ([szereplő2 v] [x hely v]) y: ([szereplő2 v] [y hely v])
A „Glide” – „Csúszás” és a „Move Step” – „Mozgás” blokkok összehasonlítása
Ez a leírás a „Move Step” – „Mozgás” blokkot arra használja, hogy a sprite-ot állandóan a balfaltól, a jobb falig mozgassa.
x legyen (-240) ismételd (80) menj (6) lépést várj (0.1) mp-et end
Ez a leírás ugyanazt csinálja.
x legyen (-240) csússz (8) mp-ig ide x:(240) y:(y hely)
Csúszás az „Ease Out” – „könnyed” effekttel
A Glide blokk lineáris módszert használ. Ez azt jelenti, hogy a sprite mozgása nem lassul vagy gyorsul. Igaz, nagyon könnyű lemásolni az „Ease Out” – „könnyed” effektet, amelyet sokszor használnak is grafikus tervezésné, ahol a tárgy lelassul, amint megközelíti a célját.
[szóköz v] gomb lenyomásakor ismételd <<([abs v] ((cél x) - (x pozíció))) < [.25]> és <([abs v] ((cél y) - (y pozíció))) < [.25]>> x változzon (((cél x) - (x pozíció)) / (2)) y változzon (((cél y) - (y pozíció)) / (2)) end ugorj ide x: (cél x) y: (cél y)
Másképpen a következő leírást, protokollt vagy forgatókönyvet is lehet használni, amely-amellett, hogy az „Ease Out” – „könnyed” effektet (könnyítsük hatást) végzi, még azt is lehetővé teszi, hogy megválasszuk: milyen sokáig tartsona kívánt pozícióba eljutni. A „200” lenne az a pozíció (ez esetben, az X axisban) amelybe a sprite-nak el kell siklania. Abban az esetben, ha a sprite-ot az Y X pozíciójú blokk felcserélhető lenne egy Y-nal. A 10-es szám a tizedmásodpercek számát jelöli, amelyek kellenek a pozíció eléréséhez – ez a szám egyenlő a másodpercszámok tízszeresével.
[szóköz v] gomb lenyomásakor ismételd <((x pozíció) kerekítve) = [200]> x változzon (((200) - (x pozíció)) / (10)) end
Lásd még
- Ugorj X: () Y()
- Ugorj ()
- Mozogj