Просмотр полной версии : почему не убивается клип?
Denisator
18.09.2002, 13:28
Не понимаю хоть убейте!!!
Множу клип:
duplicateMovieClip (_root.dead_body, "_root.dead_body"+name, random(1000)+50000);
в клипе _root.dead_body прописано:
onClipEvent (enterFrame) {
if (_root.gameover==1) {
removeMovieClip (this);
}
}
все другие клипы с подобной системой создания/удаления ликвидируются при _root.gameover=1, а "_root.dead_body"+name не желает исчезать. Почему?
Nox Noctis
18.09.2002, 14:25
так что тебя удивляет-то ?
removeMovieClip работает только с клипами созданными динамически...
а исходный dead_body, как я понял, у тебя просто лежит в таймлайне...
используй аттач, или скрой исходный дублируемый клип
greyshaman
18.09.2002, 14:32
a.swapDepths(1);
a.removeMovieClip();
Nox Noctis
18.09.2002, 14:46
читерство :)
ремувМувиКлип не работает с отрицательными глубинами...
про всякие такие фишки в теме про глубины писали :) где-то была тут такая :)
Denisator
18.09.2002, 19:07
removeMovieClip работает только с клипами созданными динамически...
а исходный dead_body, как я понял, у тебя просто лежит в таймлайне... ты не внимательно прочитал, у меня написано: "_root.dead_body"+name не желает исчезать, тоесть я пытаюсь удалить динамически созданый клип.
ремувМувиКлип не работает с отрицательными глубинами...
про всякие такие фишки в теме про глубины писали где-то была тут такая это ты мне или greyshaman'у?
Nox Noctis
18.09.2002, 19:18
1. ты шутник :)))
я сначала не обратил внимания...
duplicateMovieClip (_root.dead_body, "_root.dead_body"+name , random(1000)+50000);
...в результате этой операции ты получишь клип:
_level0._root.dead_body###
то есть "_root.dead_body###" - это имя такое :)
вывод: надо либо правильно пользоваться дубликейтом, либо писать
this.removeMovieClip(), потому что этой функции абсолютно все равно что там за имя у мувика,
а вот функция removeMovieClip(...) это не метод: она ищет указанный клип по строке, которую ты передал в качестве параметра
2. а шаман кстати, тоже невнимательно читал :P
Denisator
18.09.2002, 19:48
Заменил removeMovieClip(this) на this.removeMovieClip() и всё равно не работает! :-(
И что удивительно, ведь в других клипах у меня эта конструкция отлично работает.
Nox Noctis
18.09.2002, 23:52
"_root." из имени дублированного клипа убрать пробовал ?
оно там совершенно незачем...
я пробовал - this.removeMovieClip() у меня работает
даже с таким извращенным именем клипа...
давай исходник вобщем :)
Denisator
19.09.2002, 00:44
Блин! В моём исходнике чёрт ногу сломит. :D
Вообщем смотреть надо в клипах dvornik и dead_body.
Заранее благодарю.
Denisator
19.09.2002, 00:47
ах да! вот исходник!! :)
sergwizard
19.09.2002, 06:50
Да уж, в твоем исходнике точно можно ногу сломать. И мувик ведет себя странно.
То дворник топчется на месте, то игра заканчивается только после 4-го тела, хотя столов не прибавляется. После начала новой игры, ничего не выпадает из окна.
Не знаю почему, но вот такое:
removeMovieClip(_root.dead_body[name]);
- убивает твой клип.
Мне кажется, что ты слишком много того, что можно было вписать во фрейм action, вписывал в клип action. Да к тому же много противоречащих друг другу кодов. Например в "мониторе" ты пишешь:
onClipEvent (load) {
..........
_root.dvornik._visible = false;
........
А в самом "дворнике" -:
onClipEvent (load) {
this._visible = true;
Не очень понимаю, для чего это код в "ambulance"
onClipEvent (load) {
this.swapDepths(10000);
}
onClipEvent (enterFrame) {
if (_root.gameover==1) {
removeMovieClip (this);
}
}
Стоит она себе в таймлайне и никому не мешает, ну и пусть стоит. Сама исчезнет, когда мувик перейдет на 3-й фрейм.
И т.д.
Вообще код надо бы почистить, тогда легче в нем разобраться.
Удачи.
Denisator
19.09.2002, 17:59
То дворник топчется на месте,
исправление этого бага уже на очереди
то игра заканчивается только после 4-го тела, хотя столов не прибавляется.
так задумано
После начала новой игры, ничего не выпадает из окна.
тоже на очереди
Не знаю почему, но вот такое:
removeMovieClip(_root.dead_body[name]);
- убивает твой клип.
действительно работает. УРА!
Мне кажется, что ты слишком много того, что можно было вписать во фрейм action, вписывал в клип action. Да к тому же много противоречащих друг другу кодов. Например в "мониторе" ты пишешь:
onClipEvent (load) {
..........
_root.dvornik._visible = false;
........
А в самом "дворнике" -:
onClipEvent (load) {
this._visible = true;
первый код скрывает клип dvornik, а второй код делает дубликат дворника видимым
Вообще код надо бы почистить, тогда легче в нем разобраться.
Удачи.
сейчас займусь.
И вообще, подскажите что лучше пихать в таймлайн клипа, а что в onClipEvent?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.