Ukr:Ковзати () сек до X: () Y: () (блок)

Блок Ковзати сек до X:  Y:  належить до блоків руху та зчіплюючих блоків. Він рівномірно рухає спрайт до позиції з указаними координатами X та Y з таким розрахунком, аби досягти цілі за вказаний проміжок часу в секундах. Такого самого ефекту можна досягти, повернувши спрайт у вказаному напрямку та періодично застосовуючи блок Перемістити на кроків. Блок "Ковзати сек до X:  Y: " зробить те саме більш акуратно, але його проблема в тім, що на час руху спрайта він зупиняє виконання скрипта, запобігаючи будь-яким іншим діям цього спрайта. Отже, інші блоки, як-от Якщо на межі, відбити, не спрацьовуватимуть під час такого руху. До того ж, цей рух можна перервати лише зупинкою скрипта.

Приклади застосування
Типові приклади застосування блоку: завжди ковзати (випадкове від (1) до (2)) сек до x: (випадкове від (-240) до (240)) y: (випадкове від (-100) до (100))
 * Риба рухається в наперед заданому акваріумі

коли я отримую [ПускМашини v] сховати задати x (240) повторити до <(граВсе) = [1]> створити клон з [мене v]   чекати (3) секунд end
 * Спрайт-перешкода створюється й рухається до межі екрану, як у Frogger

коли я починаю як клон показати ковзати (5) сек до x:(-240) y:(значення y) вилучити цей клон

задати y (180) ковзати (1) сек до x:(значення x) y:(-180)
 * Об'єкти, які безперешкодно падають

ковзати (1) сек до x: ([значення x v] з [спрайт2 v]) y: ([значення y v] з [спрайт2 v])
 * Спрайт рухається до іншого, який стоїть

Порівняння блоків Ковзати та Перемістити на
Обидва наступні скрипти переміщують спрайт рівномірно з лівого кута екрану до правого за 8 секунд.

Ковзання із ефектом сповільнення
Блок "Ковзати сек ..." обчислює рух за лінійною формулою, тобто спрайт не пришвидшується на початку й не сповільнюється наприкінці. Але ефект сповільнення наприкінці, що часто застосовується в графічному дизайні, легко відтворити в Скретч.

коли я отримую [давай v] повторити до <<([abs v] з ((x цілі) - (значення x))) < [.25]> і <([abs v] з ((y цілі) - (значення y))) < [.25]>> змінити x на (((x цілі) - (значення x)) / (2)) змінити y на (((y цілі) - (значення y)) / (2)) end перемістити в x: (x цілі) y: (y цілі)

Можна використати натомість наступний скрипт, який, разом із ефектом сповільнення, дозволяє визначити наперед, скільки часу необхідно спрайту, аби дістатися кінцевої позиції. В цьому прикладі 200 - це значення координати X, якого спрайт має досягти. Число 10 визначає час на досягнення потрібної позиції, з його зростанням цей час зростатиме. Сповільнення наприкінці виходить дуже сильним.

коли я отримую [давай v] повторити до <(округлити (значення x)) = [200]> змінити x на (((200) - (значення x)) / (10)) end

Дивись також

 * Перемістити в X: Y:
 * Перейти до
 * Перемістити на кроків