![]() |
|
||||||||||
|
|||||
|
Для некоторых вопрос покажетса смешным, и простым.. Но т.к как я делаю всё без классов незнаю как же запустить вот этот класс:
class htest.Sprite extends MovieClip {
public function Sprite() {
super();
}
private function getMax(arr:Array):Number {
var max:Number = arr[0];
for(var i:Number = 1; i<arr.length; i++)
if(arr[i]>max) max = arr[i];
return max;
}
private function getMin(arr:Array):Number {
var min:Number = arr[0];
for(var i:Number = 1; i<arr.length; i++)
if(arr[i]<min) min = arr[i];
return min;
}
private function getOverlayArea(target:Sprite):Array {
var area:Array = []; area[0] = {}; area[1] = {};
area[0].x = getMax([this._x,target._x]);
area[0].y = getMax([this._y,target._y]);
area[1].x = getMin([this._x+this._width,target._x+target._width]);
area[1].y = getMin([this._y+this._height,target._y+target._height]);
return area;
}
public function overlayTest(target:Sprite):Boolean {
var overlay:Boolean = false;
if(this.hitTest(target)){
var area:Array = getOverlayArea(target);
var step:Number = 1;
var y:Number = area[0].y;
while(y<area[1].y){
y+=step;
var x:Number = area[0].x;
while(x<area[1].x){
var test1:Boolean = this.hitTest(x,y,true);
var test2:Boolean = target.hitTest(x,y,true);
if(test1 && test2){
overlay = true;
return overlay;
}
x+=step;
}
}
}
return overlay;
}
}
|
|
|||||
|
нужно у определенного мувика в библиотеке
прописать в "AS 2.0 Class" что в linkage имя этого класса "htest.Sprite" или как там, а потом в коде после аттача можно будет делать то что вы написали
__________________
"We Are The Champions My Friends!" Queen |
|
|||||
|
окей... но это токо для одного обьекта... А если обьектов 1000, как задать класс глобально,для всего мува?
|
|
|||||
|
именно
|
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
var selItems = fl.getDocumentDOM().library.getSelectedItems();
var className = "htest.Sprite";
for (var i=0; i<selItems.length; i++){
if (selItems[i].itemType != "folder") {
var str = selItems[i].name.split ("/");
var nm = str[str.length - 1];
var id = fl.getDocumentDOM().library.findItemIndex(nm);
fl.getDocumentDOM().library.items[id].linkageExportForAS = true;
fl.getDocumentDOM().library.items[id].linkageIdentifier = nm;
fl.getDocumentDOM().library.items[id].linkageClassName = className;
}
}
Единственный не приятный момент, что визуально в библиотеке ничего не происходит, поэтому стоит выбрать один элемент, и выбрать его Linkage и нажать потом Ok, после чего у всех выбранных ранее элементов, в библиотеке появится имя линка. |
|
|||||
|
ОтличнО!! Спасибо большое!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 10:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|