Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.42.94] |
|
Сообщ.
#1
,
|
|
|
Топик создан как в продолжение проблемы Можно ли как-то "подвигать" картинку?, решение будет происходить на flash...
В первый раз начал работать с этой технологией... понравилось... и есть сразу несколько вопросов... По причине того, что флешка не может быть с позрачным фоном, нужно ей "подложить мой фон". на одном слое лежит рисунок, на втором слое - фон... Делаю движение так: ... this._x += 2 ... но у меня при этом происходит движение всех слоев ведь как-то можно работать с каждым слоем отдельно? |
Сообщ.
#2
,
|
|
|
/////////////создаем элементы _root.createEmptyMovieClip("img", 1); with (_root.img) { lineStyle(0, 0x000000, 100); beginFill(0x000000, 100); moveTo(-50, -50); lineTo(50, -50); lineTo(50, 50); lineTo(-50, 50); lineTo(-50, -50); _x = 100; _y = 100; } _root.createEmptyMovieClip("bg", 0); with (_root.bg) { lineStyle(0, 0x000000, 100); beginFill(0xFF0000, 30); moveTo(0, 0); lineTo(550, 0); lineTo(550, 400); lineTo(0, 400); lineTo(0, 0); } ///////////////////// двигаем function mov():Void { _root.img._x += .1; if (_root.img._x>300) { clearInterval(ID_Interval); } } var ID_Interval:Number = setInterval(mov, 10); место создания элементов кодом их можно либо создать в ручную либо, загрузить (флеш программно грузит тол ко jpg). двигать можно двумя способами используя setInterval или событие OnEnterFrame _root.onEnterFrame = function() { if (_root.img._x<300) { _root.img._x++; } }; Во втором случае для плавного движения нужно выставить fps не ниже 24 =) |
Сообщ.
#3
,
|
|
|
Цитата Leech @ По причине того, что флешка не может быть с позрачным фоном... Почему ето неможет? Может просто в HTML при установке фляшки надо задать: <param name="wmode" value="transparent"> т.е <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="115" height="17"> <param name="movie" value="хх.swf"> <param name="wmode" value="transparent"> <param name="quality" value="high"> <embed src="хх.swf" wmode="transparent" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="115" height="17"></embed> </object> и тогда фляшка будет транспарентной. Попробуй!!! Ну а если это тбя не устраивает, то отвечу на твой вопрос: Просто ту картинку каторую ты хочеш отдельно двигать надо цонвертировать в символ, тогда етому символу в Instance name задать имя (напр.: qq) и тогда вместо того что ты прописал прописать: this.qq._x += 2; |
Сообщ.
#4
,
|
|
|
Скажите плиз ламеру, зачем делать движение во флешке на ActionScript, когда анимацию можно сделать просто, задав ключевые кадры?
|
Сообщ.
#5
,
|
|
|
А если тебе надо двинуть 100 объектов =) для каждого будешь Motion Tween делать или нужно создать движение например за курсором мыши.
|
Сообщ.
#6
,
|
|
|
Цитата Edva @ и тогда фляшка будет транспарентной. Попробуй!!! ... оп-па... сенк... а ведь скока часов потрачено на то, чтобы двигать слои раздельно единственный ма-а-аленький минус - присутствует какой-то фон под анимированным объектом.... |
Сообщ.
#7
,
|
|
|
Цитата Leech @ единственный ма-а-аленький минус - присутствует какой-то фон под анимированным объектом.... А ты можеш привести пример своей фляшки? Интересно что за фон у тебя там присутствует? Поидеи никакого фона быть не должно |