Тема: dispatchEvent
Показать сообщение отдельно
Старый 19.08.2007, 22:57
tov_diatel вне форума Посмотреть профиль Отправить личное сообщение для tov_diatel Найти все сообщения от tov_diatel
  № 6  
Ответить с цитированием
tov_diatel

Регистрация: Dec 2005
Сообщений: 113
вот весь код Arrow .Прост мне кажеться что ошибка в наследовании.
Код:
package main { 
     import flash.display.Sprite; 
     import flash.events.Event; 
     import flash.events.EventDispatcher;

  
    dynamic public class Arrow extends Sprite { 
               
		        public var flag:Number;
			    public var xs:Number;
		        public var ys:Number;
				public var lemx:Number;
		        public var lemy:Number;
		  public function Arrow() { 
               	Random();
				addEventListener(Event.ENTER_FRAME, Update); 
           } 
           public function Random() {
			  	 flag=0;
				 x=0;
				 y=0;
				 lemx=parent.width;
				 lemy=parent.height;
				 xs=Math.random()*5;
				 ys=Math.random()*5;	
			   }
		   private function Update(evt:Event):void { 
                x+=xs;
				y+=ys;
                if(x>=lemx-width||x<=-1) {
					xs=-xs;
					if(flag==1){
					parent.width=lemx;
					parent.height=lemy;
					this.dispatchEvent(new Event("ArrowHit"));
							   flag=0;
							   }else {
								   parent.width-=(parent.width/100)*5;
					               parent.height-=(parent.height/100)*5;
								   this.dispatchEvent(new Event("ArrowHit"));
								   flag=1;
								   }
				} ;
				if(y>=lemy-height||y<=-1) {
					ys=-ys;
				if(flag==1){	
					parent.width=lemx;
					parent.height=lemy;
				this.dispatchEvent(new Event("ArrowHit"));
				flag=0;
				}else {
					parent.width-=(parent.width/100)*5;
					parent.height-=(parent.height/100)*5;
					this.dispatchEvent(new Event("ArrowHit"));
					flag=1;
					}
					}
		   } 
     } 
}