Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Вставить мувик по клику. (http://www.flasher.ru/forum/showthread.php?t=174742)

UzerTeapot 01.02.2012 15:33

Вставить мувик по клику.
 
Помогите, пожалуйста, чайнику с кодом. Буду очень благодарен.
Хочу сделать небольшую шутку-прикол. Имеется фотография и курсор в виде прицела. Необходимо чтобы по клику мышки в месте клика оставался след от пули, т.е. вставлялся мувик.

Hauts 01.02.2012 17:12

1. Создаем в библиотеке мувиклип и называем его "bullet". В окне создания мувиклипа ставим галочку "Export for ActionScript" и рядом же прописываем в поле "Identifier" значение "bullet". Это нужно для того, чтобы можно было программно этот мувиклип добавлять на сцену.

2. В этом мувиклипе рисуем след от пули.

3. Возвращаемся на основную временную шкалу и щелкнув на кадре дописываем код:

Код AS1/AS2:

this.onMouseDown = function(){
    var newBulletDepth = this.getNextHighestDepth();
    var newBullet = this.attachMovie("bullet", "bullet_" + newBulletDepth, newBulletDepth);
    newBullet._x = this._xmouse;
    newBullet._y = this._ymouse;
}

В принципе, все.

UzerTeapot 01.02.2012 18:11

Огромная благодарность Вам, добрый человек, за помощь.
Осталось решить еще одну проблему.
Первый кадр у меня с меню, где можно выбрать фото. После обстрела фото и возврата в меню дырки от пуль остаются. Как быть?

Hauts 01.02.2012 18:37

Создать пустой мувиклип и положить его поверх фото, в более высоком слое. Положить в нулевые координаты, в левый верхний край сцены. Этот мувиклип на сцене назвать (присвоить instance name), например, "bullets_holder". Ну и чуток поменять код:

Код AS1/AS2:

this.onMouseDown = function(){
    var newBulletDepth = bullets_holder.getNextHighestDepth();
    var newBullet = bullets_holder.attachMovie("bullet", "bullet_" + newBulletDepth, newBulletDepth);
    newBullet._x = this._xmouse;
    newBullet._y = this._ymouse;
}

В таком случае все следы от выстрелов будут создаваться внутри одного клипа и при переходе по кадрам, не будут оставаться.

UzerTeapot 01.02.2012 19:05

Еще раз благодарю за помощь. +15 к ауре.

Добавлено через 7 часов 33 минуты
Все хорошо, только дырки получаются сверху прицела. Никак не могу справиться с этим.

Hauts 02.02.2012 07:08

Слой с прицелом нужно поместить выше слоя с клипом bullet_holder :)

dark256 02.02.2012 14:11

После выстрела делайте:

Код AS1/AS2:

прицел.swapDepths( там_где_лежит_клип_с_дырками.getNextHighestDepth() )


UzerTeapot 02.02.2012 16:31

Спасибо всем. Я уже сам догадался что нужно прицел в самый верхний слой поместить -))

Добавлено через 54 минуты
Для желающих посмотреть результат ВОТ


Часовой пояс GMT +4, время: 17:07.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.