Форум 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)
-   -   dublicateMovieClip - не понимаю (http://www.flasher.ru/forum/showthread.php?t=93109)

romulko 14.03.2007 01:38

dublicateMovieClip - не понимаю
 
Доброй ночи, коллеги.
Пожалуйста, помогите написать простейший код дублирования клипа. Вот пример того, что я сваял вручную, размещая мувики трещин в новом слое и на новом кадре инкрементируя единичку, и, на событии onMouseDown перемещался на один кадр вперед, чем запуская новую трещину (желательно кликнуть с интервалом пару секунд и только четыре раза ударить, так как там больше нет мувиков трещин) –

http://www.ifrastudio.com/test/111.swf


А надо, чтобы мувик трещины просто дублировался в том месте, где был сделан удар молотком (то есть, после дублирования привязывались координаты).
Пожалуйста, помогите мне написать код дублирования, а то я ниак не могу сам понять, как эта функция работает – dublicateMovieClip
В моей книге по программингу только одна страница по этой функции, потому, не могу разобраться, что и как.
Уже второй день в депрессии…
Спасибо большое!

this.create 14.03.2007 01:42

Не проще вставлять в место удара мувик трещины из библиотеки?

CorC 14.03.2007 10:03

http://livedocs.adobe.com/flash/8/main/00002452.html
а именно
(копируемый клип).duplicateMovieClip("(имя нового)", "(глубина)", (свойства));
хотя свойства необязательно

LeXi42006 14.03.2007 10:39

Я это так сделал:
Код:

var i=0;
d = "mc"
_root.onMouseDown = function  () {
        duplicateMovieClip("_root.mc", "mc"+i, i)
        _root[d+i]._x = _root._xmouse
        _root[d+i]._y = _root._ymouse
        i++
}

где мувик трещины - "mc"

CorC 14.03.2007 11:20

Цитата:

Сообщение от LeXi42006
Код:

duplicateMovieClip("_root.mc", "mc"+i, i)

жуть просто :)

romulko 14.03.2007 13:11

Вложений: 1
Ребята, спасибо что помогли... но, я ничего не могу сделать - не дублирует он мувик :(
ПОжалуйста, скажите, в чем зедсь дело???
Пробывал и код LeXi42006 и разбиратся в хелпе CorC'а - ничего не помогло....
ВОт, что-то сваял - но там только один мувик создается. после удара, он удаляется и появляется новый. А нужно, чтобы все сохранялись.
Исходинк в аттачменте.

CorC 14.03.2007 14:00

Код:

Mouse.hide();
var i = 1;
onMouseMove = function () {
        this.molotok._x = this._xmouse+70;
        this.molotok._y = this._ymouse-200;
        updateAfterEvent();
};
onMouseDown = function () {
        this.molotok.gotoAndPlay("s1");
        mc1=_root.mc.duplicateMovieClip("mc"+i, ++i);
        _root.mc1._y = this._ymouse-220;
        _root.mc1._x = this._xmouse-390;
        updateAfterEvent();
};

лишь чуток переделал то :)
правда ошибочку вижу, но нестрашную...

З.Ы.: если ПКМ то hidemouse не помогает :)

romulko 14.03.2007 14:47

уфф, наконец то, Все работает! ПАСИБА CorC.:yahoo:
Сваял уже сам код удаление мувика. Теперь я мастер! :bye:

romulko 16.03.2007 02:33

Ребята, доброй ночи.
Стыдно, конечно, но опять не работает как надо - трещины образуются над молотком, хотя слой ниже него. Глубина молотка не та, что ли? Но ведь дубликат формируется ниже него, почему же трещина залазит поверх молотка?

И при дублировании больше 20-30 трещин флешка очень сильно начинает виснуть.

Ребята, пожалуйста, помогите советом – в чем здесь дело?
Исходник и мувик в архиве http://www.ifrastudio.com/test/Untitled-1.rar
Эту штуку делаю за спасибо, но вот усилий уже столько потратил, что даже страшно подумать….

CorC 16.03.2007 10:17

Цитата:

Сообщение от romulko
Глубина молотка не та, что ли? Но ведь дубликат формируется ниже него

неправда, у молотка глубина отрицательная
а у трещин больше 0
лечится swapDepths'ом
Цитата:

Сообщение от romulko
И при дублировании больше 20-30 трещин флешка очень сильно начинает виснуть.

это если водить мышой по трещинам :)
Цитата:

Сообщение от romulko
Эту штуку делаю за спасибо, но вот усилий уже столько потратил, что даже страшно подумать….

за спасибо такие вещи не делают :)

З.Ы.: если нажать на морду, а потом не отпуская отвести молоток
и отпустить то трещина не удалиться, и остался баг с ПКМ


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

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