Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 08.05.2007, 02:23
Djonnik вне форума Посмотреть профиль Отправить личное сообщение для Djonnik Найти все сообщения от Djonnik
  № 1  
Ответить с цитированием
Djonnik

Регистрация: Mar 2006
Адрес: Владивосток
Сообщений: 28
По умолчанию Удаление клипов

Доброе время суток !

Подскажите плиз как рендомно удалить клип.

То есть на сцене есть допустим 10 рэндомно аттачиных клипов.
По клику мыши onMouseDown аттачится еще один клип...
Нужно в этот момент удалить другой клип.

Вобщем по принципу: один появился, другой исчез...

Заранее благодарен Всем откликнувшимся...

Старый 08.05.2007, 02:50
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 2  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Поместите ссылки на все мувики в массив, при аттаче нового мувика добавляйте ссылку на него в массив, затем удаляйте мувиклип ссылка на который хранится в первом элементе массива, после удаляйте первый элемент массива со сдвигом.
Код:
var ar:Array=['a','b','c']
ar.push('d')
ar.shift()
trace(ar)
Если хотите удалить случайный элемент массива( shift удаляет первый), то, пожалуйста, метод splice
Код:
var ar:Array = ['a', 'b', 'c'];
var a:Number = 1;
ar.push('d');
ar.splice(a, 1);
trace(ar);
, где а случайное число, но не больше длины массива -1.


Последний раз редактировалось this.create; 08.05.2007 в 03:22.
Старый 08.05.2007, 03:22
Djonnik вне форума Посмотреть профиль Отправить личное сообщение для Djonnik Найти все сообщения от Djonnik
  № 3  
Ответить с цитированием
Djonnik

Регистрация: Mar 2006
Адрес: Владивосток
Сообщений: 28
не получается ...
я правда немного не так написал..
вот код...
Код:
var nebo:Array =["st1","st2","st3","st4","st5","st6","st7","st8","st9","st10"];
for(i=0;i<10;i++){
attachMovie("st","st"+i, i,{_x:1+Math.random()*500,_y:1+Math.random()*400})
nebo[i]=this["st"+i];
}

onMouseDown=function(){
	nebo.push("st"+i);
attachMovie("st","st"+i,++i,{_x:1+Math.random()*500,_y:1+Math.random()*400})
_root["st"+i].gotoAndStop (Math.round(Math.random()*2));
nebo.shift(0);
trace(["st"+i]);
}

Старый 08.05.2007, 03:36
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 4  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Код:
var nebo:Array = [];
for (i=0; i<10; i++) {
    attachMovie("st", "st"+i, i, {_x:1+Math.random()*500, _y:1+Math.random()*400});
    nebo[i] = this["st"+i];
}
trace(nebo);
onMouseDown = function () {
    nebo.push(this["st"+i]);
    attachMovie("st", "st"+i, ++i, {_x:1+Math.random()*500, _y:1+Math.random()*400});
    _root["st"+i].gotoAndStop(Math.round(Math.random()*2));
    nebo[0].removeMovieClip();
    nebo.shift();
    trace(["st"+i]);
};
Но что-то код ваш мне не очень нравится...
Вот мой вариант, но получилось достаточно сложно. И проверить как следует не успел (уже спать хочу), так что на ваш страх и риск используйте.
Код:
var nebo:Array = [];
for (i=0; i<10; i++) {
	var mc:MovieClip = this.attachMovie("st", "st"+i, this.getNextHighestDepth(), {_x:1+Math.random()*500, _y:1+Math.random()*400});
	nebo[i] = mc;
	mc.onPress = function():Void  {
		pressFc();
	};
}
var count:Number = i;
//
function pressFc():Void {
	count == 100 ? count=0 : count++;
	var mc:MovieClip = this.attachMovie("st", "st"+count, this.getNextHighestDepth(), {_x:1+Math.random()*500, _y:1+Math.random()*400});
	mc.onPress = function():Void  {
		pressFc();
	};
	nebo.push(mc);
	this.gotoAndStop(Math.round(Math.random()*2));
	nebo[0].removeMovieClip();
	nebo.shift();
}


Последний раз редактировалось this.create; 08.05.2007 в 04:02.
Старый 08.05.2007, 10:15
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 5  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
Да, но видимо нужно кликать на сцену, а не на клипы, потому надо mouseDown, а не onPress.
2автор Неработало потому что вы сначала пытались в массив запехать ссылку на клип, а потом уже клип создавали.
__________________
"We Are The Champions My Friends!" Queen

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:25.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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