ПрограммированиеФорумОбщее

ActionScript 3.0. События мышки для Sprite. Есть проблема. (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
14:28, 9 фев 2012

всё true выдаёт.? ну если у тебя битмапы в мувиклипе то да. эх.

#16
14:31, 9 фев 2012

ИПавлов
> всё true выдаёт.? ну если у тебя битмапы в мувиклипе то да. эх.
В последнем случае всегда false))) То-то и оно что в клипе лежит коллекция PNG, покадровая анимация так сказать.

Я хз что делать. Я переписываю движок, раньше он у них работал на основании полей (то есть наводить надо было не на объект, а на поле на котором стоит объект), вот теперь захотели чтобы было наведение на объект. А тут такое. Что можно сделать?

#17
14:33, 9 фев 2012

сами по себе мувиклипы это беда. обычно лучше битмап - и кучка битмапДат. и переключаться между ними. и тогда можно будет опятьже на гет пиксель.

#18
14:37, 9 фев 2012

ИПавлов
> сами по себе мувиклипы это беда. обычно лучше битмап - и кучка битмапДат. и переключаться между ними. и тогда можно будет опятьже на гет пиксель.
Но переделывать всю графику точно никто не будет. Может можно как-то обойти? Например в MovieClip получить текущую отображаемую Bitmap и проверить её? Я сейчас у художника спросил, который делал все эти SWF с покадровой анимацией и понял что там всё состоит из PNG (правда лишь в некоторых используется слой эффектов, но думаю на него можно забить при наведении).

#19
14:39, 9 фев 2012

ну я обычно просто вся сохраняю в векторы.<битмапдаты> и оттуда уже использую, как хочу.
могу и заливку сделать битмапой.

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

выглядит так.

for(i=0;i<11;i++)
{
  FIR1.gotoAndStop(i+3);
  EXPBITS[i]=new BitmapData(FIR1.width,FIR1.height,false,0x00);
  EXPBITS[i].draw(FIR1);
}

это у меня типо спрайты огня...взрыва. в общем чтото там всё.

#20
14:41, 9 фев 2012

ИПавлов
Надеюсь totalFrames и currentFrame сработают верно)

#21
14:46, 9 фев 2012

в битмапы всё сохраняется на этапе загрузки. а потом работа только с ними.

#22
14:48, 9 фев 2012

ИПавлов
Сейчас реализую. Однако я думаю это не решит моей второй проблемы))))

#23
15:01, 9 фев 2012

ИПавлов
Огромное спасибо! Сделал так:

+ Показать

Ну и обработка:

+ Показать

Теперь наводится как и положено. А вот вторая проблема актуальна:

Изображение

Курсор на дереве, но дерево но подсвечивается, так как Flash считает что мы бродим по клипу сундука. Что делать?

#24
15:28, 9 фев 2012

Можно ли как-то сделать так, чтобы когда я определил что навели на прозрачный пиксель, то я как-то отменяю что ли событие и оно ищет куда я дальше попал?

#25
18:04, 9 фев 2012

Ладно, сделал)

#26
19:13, 9 фев 2012

Есть вопрос. Представим что мы делаем так:

for(var i:uint=0;i<movieClip.totalFrames;i++)
{
    movieClip.gotoAndStop(i);
          
    var bitmapData:BitmapData=new BitmapData(movieClip.width,movieClip.height,true,0x000000);
          
    bitmapData.draw(movieClip);
    bitmapsData.push(bitmapData);
}
        
movieClip.gotoAndStop(0);

А если в кадре 6 клипа есть скрипт gotoAndStop(8), то что, я кадр 6 не смог скопировать? Или команда gotoAndStop() запрещает выполнения и скрипта?

#27
19:43, 9 фев 2012

для начала - хрен знает
во вторых - код в кадрах клипа это маразм. и уже давно нормальные люди не ипользуют
в третих переход из 6 кадра вдруг в другой кадр...тоже непонятно зачем. почему сразу не на 8
ну и в четрвёртых конечно 0 кадра нету
и в пятых. uint медленнее, чем int

#28
22:11, 9 фев 2012

ИПавлов
Спс, замечания учту и исправлю. В остальном всё сделал и всё работает. Огромное тебе спасибо))))))

#29
6:18, 10 фев 2012

Почему бы просто не использовать hitArea у MovieClip'а? Ну да художников надо было бы завтравить обвести спрайты, но это занимает 10-15 сек...

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумОбщее

Тема в архиве.