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

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

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

Регистрация: Jul 2013
Сообщений: 29
По умолчанию Добавить событие в динамический объект

создал динамические карты на столе.
Как сделать так что бы при наведении она просачивалась на передний план?

как уничтожить карту ? что бы она убралась со стола
подскажите плиз


Последний раз редактировалось infbyte; 13.07.2014 в 21:33.
Старый 13.07.2014, 22:27
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 2  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Это зависит от того, в какой версии actionscript вы пишите.

Старый 13.07.2014, 22:48
infbyte вне форума Посмотреть профиль Отправить личное сообщение для infbyte Найти все сообщения от infbyte
  № 3  
Ответить с цитированием
infbyte

Регистрация: Jul 2013
Сообщений: 29
AS3

Попробовал сейчас с прозрачностью, но метод не подходит:
Код AS3:
clip.addEventListener(MouseEvent.CLICK, qwe333);  
function qwe333(event:MouseEvent):void{  
 (event.target as MovieClip).alpha = 0;
}
Карта исчезает, но она блокирует другие карты.

Старый 13.07.2014, 23:08
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 4  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Alpha - это просто прозрачность. Даже если она равна нулю, ваш объект продолжает быть на сцене, просто он невидимый.
Вам нужно удалить карту
Код AS3:
if(clip.parent) clip.parent.removeChild(clip)
А чтобы карта выдвигалась на передний план, то при наводке мыши по ней
Код AS3:
if(clip.parent) clip.parent.addChild(clip)

Старый 13.07.2014, 23:42
infbyte вне форума Посмотреть профиль Отправить личное сообщение для infbyte Найти все сообщения от infbyte
  № 5  
Ответить с цитированием
infbyte

Регистрация: Jul 2013
Сообщений: 29
что-то не хочет
Удаляет только одну карту, как-то рандомно , всего один раз.
На передний план не выводит.
Можете подсказать, что не так?



Код AS3:
for (var n=1; n<30; n++) {
 
var clip = new karta();
	clip.x = 400;
	clip.y = 300;
	clip.rotation = Math.random()*360;
 
 clip.addEventListener(MouseEvent.ROLL_OUT, qwe111);  
 function qwe111(event:MouseEvent):void{   
    (event.target as MovieClip).gotoAndPlay(7);
 }
 
 
clip.addEventListener(MouseEvent.ROLL_OVER, qwe222);  
 function qwe222(event:MouseEvent):void{   
   (event.target as MovieClip).gotoAndPlay(1);
   if(clip.parent) clip.parent.addChild(clip);
 }
 
clip.addEventListener(MouseEvent.CLICK, qwe333);  
function qwe333(event:MouseEvent):void{  
  if(clip.parent)  clip.parent.removeChild(clip);
}
 
 
 
     addChild(clip);
 
}

Есть кадр - в нем у меня код, что выше.
Карта - это MovieClip , в свойствах которого я поставил галку напротив : "export for AS" после чего ему пристроилось классовое имя karta

Старый 14.07.2014, 00:10
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 6  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Не правильно работает, потому что есть ссылка, только на последнюю карту. Попробуйте так
Код AS3:
for (var n = 1; n < 30; n++)
{
 
	var clip = new karta();
	clip.x = 400;
	clip.y = 300;
	clip.rotation = Math.random() * 360;
 
	clip.addEventListener(MouseEvent.ROLL_OUT, qwe111);
	function qwe111(event:MouseEvent):void
	{
		var targetClip:MovieClip = e.target as MovieClip
		targetClip.gotoAndPlay(7);
	}
 
	clip.addEventListener(MouseEvent.ROLL_OVER, qwe222);
	function qwe222(event:MouseEvent):void
	{
		var targetClip:MovieClip = e.target as MovieClip
		targetClip.gotoAndPlay(1);
		if (targetClip.parent) targetClip.parent.addChild(targetClip);
	}
 
	clip.addEventListener(MouseEvent.CLICK, qwe333);
	function qwe333(event:MouseEvent):void
	{
		var targetClip:MovieClip = e.target as MovieClip
		if (targetClip.parent) targetClip.parent.removeChild(targetClip);
	}
 
	addChild(clip);
 
}

Старый 14.07.2014, 00:24
infbyte вне форума Посмотреть профиль Отправить личное сообщение для infbyte Найти все сообщения от infbyte
  № 7  
Ответить с цитированием
infbyte

Регистрация: Jul 2013
Сообщений: 29
что-то не хочет.
ругается на
Цитата:
Монтажный кадр 1, Layer 'карточки', Frame 12, Line 12, Column 30 1120: Access of undefined property e.

Старый 14.07.2014, 00:28
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 8  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
А, то я по-привычке написал. Замените все e на event или наоборот.
ps. там где e.target

Старый 19.07.2014, 20:03
infbyte вне форума Посмотреть профиль Отправить личное сообщение для infbyte Найти все сообщения от infbyte
  № 9  
Ответить с цитированием
infbyte

Регистрация: Jul 2013
Сообщений: 29
создал карточки , сделал кнопку "перейти в начало игры"
после перехода, эти карточки поверх самой игры.
как уничтожить все карточки new karta(); , которые мы создавали?
хелп плз


Нашел в инете инфу, что вот так но не работает.


Цитата:
if(contains(karta)){removeChild(karta);}


Последний раз редактировалось infbyte; 19.07.2014 в 20:21.
Старый 19.07.2014, 20:50
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 10  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Вообще конечно нужно было бы при создании карт поместить их все в массив. Тогда в любой момент, карты полностью в вашем распоряжении, делайте с ними что хотите, хоть удаляйте.

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

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

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


 


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


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