PDA

Просмотр полной версии : Исчезновение клипов


dimaMJ
03.02.2013, 17:27
У меня в чем проблема, есть клип cat и есть другой клип moneta, при их соприкосновении клип moneta должен исчезать. Как вы поняли есть персонаж и монеты и он их собирает. Когда есть одна монета персонаж ее собирает, когда я делаю еще копию этой монеты и их уже две и более собирается только та которая была создана первой, уже не знаю что делать, помогите вот код:

if (_root.moneta.hitTest(_root.cat) )
{

_root.moneta.unloadMovie();


}

mooncar
03.02.2013, 18:15
dimaMJ, код нужно оформлять тегами.

dimaMJ
03.02.2013, 23:42
ну что никто не знает решения этой проблемы?(

Gasoline
04.02.2013, 10:53
var numberOfCoins:Number = 10;
//количество монеток
for (var i = 0; i<numberOfCoins; i++) {
_root.attachMovie('coin','coin'+i,i,{_x:120*i, _y:80*i});
//размещаем монетки на экране
}
_root.onEnterFrame = function() {
collectable();
};
function collectable() {
// проверяем соприкосновение
for (var i = 0; i<=numberOfCoins; i++) {
if (_root['coin'+i].hitTest(_root.cat)) {
_root['coin'+i].removeMovieClip();
// удаляем клип
trace(i)
}
}
}
Не забудьте настроить идентификатор связи.

dimaMJ
04.02.2013, 22:25
спасибо большое ) все работает, я просто как то видел что создают одну монетку а потом прости копи паст и все работает поэтому пробовал как то так) еще раз спасибо!

Добавлено через 6 минут
только вот монетки остаются на всех последующих кадрах если персонаж их не собрал

Gasoline
04.02.2013, 23:42
Что мешает их удалить?
for (var i = 0; i<=numberOfCoins; i++) {
_root['coin'+i].removeMovieClip();
}

Можно и копипастом сделать, только необходимо вручную называть их - 'coin1', 'coin2'. Зачем делать то, что программно сделать проще.

dimaMJ
05.02.2013, 00:14
я то понял как их удалить но именно чтоб на последующих кадрах они не оставались, нужно написать ведь условие ? или во всех остальных кадрах прописывать удаление

Добавлено через 20 минут
просто не удобно во всех других кадрах писать удаление, оно то работает все удаляется но не удобно)