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

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

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

Регистрация: May 2012
Сообщений: 7
По умолчанию Как прослушать событие у расширенного MovieClip

Реализую типа магазина в игре. На витрине лежат товары, и при наведении мыши на товар изображение товара меняется (выводится цена), реализую просто переходом на второй кадр у мувика товара gotoAndStop(2), это все работает. Но необходимо чтобы при нажатии товара активировалась кнопка купить, но если в основном коде вызываю слушатель нажатия мыши он не работает. Как реализовать?

Основной код. При нажатии на первый объект должен выводиться trace("HELLO"); а он не работает.
Код AS3:
var ShopArr:Array = new Array(8);
 
ShopArr[0]=new SalShop(ShopExA);
ShopArr[1]=new SalShop(ShopExB);
ShopArr[2]=new SalShop(ShopExC);
ShopArr[3]=new SalShop(ShopHelp1);
ShopArr[4]=new SalShop(ShopHelp2);
ShopArr[5]=new SalShop(ShopStar);
ShopArr[6]=new SalShop(ShopRandom);
ShopArr[7]=new SalShop(ShopThemes);
 
ShopArr[0].addEventListener(MouseEvent.CLICK, funClick1); 
 
function funClick1():void
{
	trace("HELLO");
}

Подключаемый пакет:
Код AS3:
package Salador {
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.display.Loader;
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.events.MouseEvent;
	import flash.display.MovieClip;
	import flash.display.*;
 
	public class SalShop extends MovieClip {
			private var Salclips:MovieClip;
			public var TekClicks:Boolean=false; 
			public function SalShop(source:MovieClip):void {
			Salclips=source;
			Salclips.addEventListener(MouseEvent.MOUSE_OVER,clipOver);
			Salclips.addEventListener(MouseEvent.MOUSE_OUT,clipOut);
			}
 
			private function clipOver(Event:MouseEvent):void
				{
					Salclips.gotoAndStop(2);
				}
 
			private function clipOut(Event:MouseEvent):void
				{
					Salclips.gotoAndStop(1);
				}
 
	}
}

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

Регистрация: Nov 2010
Сообщений: 497
Слушатель должен параметр события принимать. А ваш funClick1 не принимает. И вообще, поставьте debug-плеер. Он бы вам об этой ошибке и сказал.

Старый 02.05.2012, 21:10
Salador вне форума Посмотреть профиль Отправить личное сообщение для Salador Найти все сообщения от Salador
  № 3  
Ответить с цитированием
Salador

Регистрация: May 2012
Сообщений: 7
Да тормазнул немного - заменил на:
Код AS3:
function funClick1(Event:MouseEvent):void
Всеравно при клике trace("HELLO"); не работает.

Добавлено через 5 часов 19 минут
Сделал - в пакете SalShop использовал глобальную переменнную public static var TekBuy:int; для определения выбранного товара.

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

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

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


 


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


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