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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.06.2006, 16:09
Mattie вне форума Посмотреть профиль Отправить личное сообщение для Mattie Найти все сообщения от Mattie
  № 1  
Ответить с цитированием
Mattie
[6 17.05.06]

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
Отправить сообщение для Mattie с помощью ICQ Отправить сообщение для Mattie с помощью Yahoo
По умолчанию Эффект стирательной резинки

не получается реализовать этот эффект:

1)

есть слой с текстом
выше слой с серым квадратиком, который закрывает собой этот текст - это кнопка, к которой вот такой скрипт привязан:
Код:
on (press)
{

lineStyle(17, 0xFF0000, 69);
moveTo(_xmouse, _ymouse);
onMouseMove = function() {
lineTo(_xmouse, _ymouse);
updateAfterEvent();
}
}
как сделать так, чтобы эта линия не рисовалась, а убирала с движением мышки серый квадратик (эффект стирательной резинки), и становился виден текст?

2)

другой вариант:

есть слой с текстом, его прикрывают куча квадратиков - это муви_клипы, сгенерированные с помощью duplicateMovieClip

- они внутри себя содержат кнопку с таким action:
Код:
on (rollOver) {
	
	if (_root.flag_pressed == true) {
		_visible = false; 
		}
}
on (press) {
	_visible = false;
    _root.flag_pressed = true;
	}
	
on (release) {
	_root.flag_pressed = false;
}
а в корне, в первом кадре, соответственно:
Код:
_root.flag_pressed = false;
onMouseUp = function()
{
	flag_pressed = false;
}
onMouseDown = function()
{
	flag_pressed = true;
}

amount = 20;

for( i=0; i<10;i++ )
{
  j=1;
 
  while (amount>0) {
		duplicateMovieClip (_root.pix, "pix"+j, j);
		setProperty ("pix"+j, _x, (_root.pix._x+j*10));
		setProperty ("pix"+j, _y, (_root.pix._y));
		

		amount--;
		j++;
	}
}
мне не удается поймать событие, что кнопка уже зажата. и, чтобы удалить квадратик приходится снова и снова нажимать кнопку. эффекта стирательной резинки не получается...

попытки приаттачены в виде .fla файла.

...может класс описать надо?

спасибо
Вложения
Тип файла: rar MY_SCRATCH.rar (5.4 Кб, 118 просмотров)


Последний раз редактировалось Mattie; 12.06.2006 в 16:34.
Старый 12.06.2006, 16:16
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
1. Раздел AS3 не для вас. Перенес.
2. Оформите ваш код в теги [ code] [/code] самостоятельно, иначе ваша тема будет закрыта.

Господа отвечающие, дождитесь пожалуйста перед вашим ответом, пока товарищ начнет уважать нас и выполнит мое пожелание в пункте 2.
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 12.06.2006 в 16:29.
Старый 12.06.2006, 16:36
Mattie вне форума Посмотреть профиль Отправить личное сообщение для Mattie Найти все сообщения от Mattie
  № 3  
Ответить с цитированием
Mattie
[6 17.05.06]

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
Отправить сообщение для Mattie с помощью ICQ Отправить сообщение для Mattie с помощью Yahoo
нет вопросов, извиняйте...


Последний раз редактировалось Mattie; 12.06.2006 в 16:50.
Старый 12.06.2006, 17:34
VIO вне форума Посмотреть профиль Отправить личное сообщение для VIO Найти все сообщения от VIO
  № 4  
Ответить с цитированием
VIO

Регистрация: May 2006
Сообщений: 47
так.... несколько вопросов....
1. напиг запускаешь рисование при нажатии на квадратик? так задумано разве?
2. как именно тебе надо что б убирались дублированные квадраты твои - при наведении на них курсора или при наведении+клике?

а пока жду ответа - сделаю так - рисование уберу.... и сделаю что б при нажатой левой кнопке убирались они......

Старый 12.06.2006, 17:49
Mattie вне форума Посмотреть профиль Отправить личное сообщение для Mattie Найти все сообщения от Mattie
  № 5  
Ответить с цитированием
Mattie
[6 17.05.06]

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
Отправить сообщение для Mattie с помощью ICQ Отправить сообщение для Mattie с помощью Yahoo
1. была мысль, что можно сделать эту линию с прозрачностью 100% и тогда она бы "стирала" с движением мышки при зажатой левой кнопке.

2. при наведении на них курсора мыши, при зажатой кнопке мышки. точно так, как ты делаешь... ну как работает "стирательная резинка"


Последний раз редактировалось Mattie; 12.06.2006 в 17:52.
Старый 12.06.2006, 18:17
Homo Sapiens вне форума Посмотреть профиль Отправить личное сообщение для Homo Sapiens Посетить домашнюю страницу Homo Sapiens Найти все сообщения от Homo Sapiens
  № 6  
Ответить с цитированием
Homo Sapiens
 
Аватар для Homo Sapiens

Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
Я такое делал. С помощью масок, разумеется
__________________
Всё гениальное просто.

Старый 12.06.2006, 18:25
Mattie вне форума Посмотреть профиль Отправить личное сообщение для Mattie Найти все сообщения от Mattie
  № 7  
Ответить с цитированием
Mattie
[6 17.05.06]

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
Отправить сообщение для Mattie с помощью ICQ Отправить сообщение для Mattie с помощью Yahoo
ну разумеется...

а можно, так сказать в общих чертах, понять КАК?

а то я совсем замучился с этой траблой.

непонятно как с помощью масок можно "стереть" серый слой над картинкой или текстом...

Старый 12.06.2006, 18:40
Homo Sapiens вне форума Посмотреть профиль Отправить личное сообщение для Homo Sapiens Посетить домашнюю страницу Homo Sapiens Найти все сообщения от Homo Sapiens
  № 8  
Ответить с цитированием
Homo Sapiens
 
Аватар для Homo Sapiens

Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
Как вариант
Код:
var mask:MovieClip = this.createEmptyMovieClip("mask", 1);
data.setMask(mask);

this.count = 0;
this.onMouseMove = function()
{
	if(ASnative(800, 2)(1))
	{
		mask.attachMovie("window", "window" + (this.count++), count + 1, {_x:_xmouse, _y:_ymouse});
	}
}
data - скрытое содержание
window - кружочек, который будет приоткрывать содержание
__________________
Всё гениальное просто.


Последний раз редактировалось Homo Sapiens; 12.06.2006 в 18:47.
Старый 12.06.2006, 19:37
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 9  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Я бы примерно так сделал
Вложения
Тип файла: zip erasure.zip (8.5 Кб, 108 просмотров)
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 12.06.2006, 20:09
Mattie вне форума Посмотреть профиль Отправить личное сообщение для Mattie Найти все сообщения от Mattie
  № 10  
Ответить с цитированием
Mattie
[6 17.05.06]

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
Отправить сообщение для Mattie с помощью ICQ Отправить сообщение для Mattie с помощью Yahoo
Люди! я очень благодарен! Большое списибо, проблема решена.

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

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

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


 


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


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