Просмотр полной версии : Движение маски
Skiminok
04.10.2008, 14:47
Подскажите новичку как сделать такой цикл.
имеется квадрат начальные координаты неизвестны.
надо сделать чтобы при запуске мувика квадрат начал двигаться по оси х примерно на +100, а при достижении +100 возвращался в изначальное положение и начинал все заново. Вот такой вот бесконечный цикл.
если уже где то обсуждалось прошу не казнить я просто не смог найти.
Заранее благодарен за ответ.
var dir = 1;
onEnterFrame = function(){
if(mc._x > max_x ) dir = -1;//delta_x- приращение по x;
if(mc._x < min_x ) dir = 1;
mc._x += dir*delta_x;
//max_x, min_x - значение крайней точки по x
//mc - ваш клип
}
Skiminok
04.10.2008, 15:30
вставил этот код
var dir = 1;
onEnterFrame = function(){
if(blesk._x > 100 ) dir = -1;//delta_x- приращение по x;
if(blesk._x < 1 ) dir = 1;
blesk._x += dir*delta_x;
}
и нет реакции. Может я что-то сделал не так?
честно говоря я не могу понять принцип этого цикла...
как мне кажется должно быть что-то типа такого
val dir = 1 //как я понял это объявление переменной
onEnterFrame = function(){
if (blesk._x < 100) dir=+1;
if (blesk._x > 99) dir = -100;
blesk._x += dir*delta_x;
}
Какую роль играет delta_x и почему она не описана?
если delta_x это итоговая сумма всех прибавлений то почему стоит знак *, а не +?
разъясните пожалуйста получше.
Skiminok, для оформления своего кода надо использовать теги и когда хотите что-то добавить, используйте кнопку http://www.flasher.ru/forum/images/russian/style3/buttons/edit.gif и редактируйте последнее сообщение, а не создавайте несколько сообщений подряд.
Читайте правила форума и разделов.
delta_x - это приращение координаты х вашего клипа за 1 фрейм. Задайте его больше 0, иначе клип будет на месте. Если клип ушел далеко вправо (blesk._x > 100 ) меняем направление назад (множитель dir отрицательное) и наоборот, если слишком далеко влево (blesk._x < 1) - направление положительное.
Skiminok
04.10.2008, 18:45
Уважаемый Flash33 если тебя не затруднит не мог-бы ты написать исходник с описанием где что происходит. А то честно говоря я не могу догнать как это сделать.
Заранее благодарен за ответ.
flazher, ты сам до конца не понял о чем я и переврал. Вот исходник разжеванный до немогу(swf-8), если уж и этого не поймете, добро пожаловать в среднюю школу :D
если уж и этого не поймете, добро пожаловать в среднюю школу
Я сам учусь в средней школе! :mad:
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.