![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2006
Сообщений: 13
|
Доброго времени суток.
Продолжая свои экзерсизы с флешем наткнулся на баг не баг, фичу не фичу, даже не знаю как это обозвать ![]() Вообщем ситуация. Задача. есть три ( в перспективе больше ) файла с кусками тела игрока. из этих файлов в зависимости от ситуации создается мув этого самого игрока в определенной позиции. файлы - гифы, все что не нужно - прозрачно. происходит следующее если bit создавать без прозрачности (false) то все ок (всмысле картинка собирается как надо, но он не прозрачный =(). а вот если прозрачным, то в битмапе остается только последний скопированый кусочек т.е. рука. эффект не понятен. почему так? по идее должно быть наоборот. если прозрачность есть то она должна учитываться, если - то нет. код ниже. function CreatePlayer(posx,posy,hands,legs,torso,weapon,pos,sit,sex)
{
var mc:MovieClip = new MovieClip;
var bit:BitmapData = new BitmapData(32, 40);//, true, 0x000000);
var up:Number = 0;
if(pos >= 8)
return 0;
if(sit){
sit = 1;up = 3}
if(sex)
sex = 1;
mc = createEmptyMovieClip(mc, this.getNextHighestDepth());
if(pos < 4)
bit.copyPixels(hands,new Rectangle(32*pos,0,32,40),new Point(0,up));
else
bit.copyPixels(hands,new Rectangle(256 + 32*pos,0,32,40),new Point(0,up));
bit.copyPixels(torso,new Rectangle(32*pos + 256*sex,0,32,40),new Point(0,up));
bit.copyPixels(legs,new Rectangle(32*pos + 256*sit,0,32,40),new Point(0,0));
if(pos >= 4)
bit.copyPixels(hands,new Rectangle(32*pos,0,32,40),new Point(0,up));
else
bit.copyPixels(hands,new Rectangle(256+32*pos,0,32,40),new Point(0,up));
mc.attachBitmap(bit,10);//,"auto",true);
return mc;
}
Последний раз редактировалось iNils; 16.11.2006 в 02:05. |
![]() |
Часовой пояс GMT +4, время: 13:37. |
|
|
« Предыдущая тема | Следующая тема » |
|
|