Innen: Hungarian Scratch-Wiki

Sablon:Block

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

Sablon:Motion Blocks

Cookies help us deliver our services. By using our services, you agree to our use of cookies.