Здравствуйте!
Помогите в проблеме. Есть два класса первый MyRectangle создает прямоугольник и заставляет его двигаться. Как только прямоугольник доходит границы окна приложения он начинает двигаться в другую сторону.

Код AS3:
package main {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class MyRectangle extends Sprite{
var Rect:Shape=new Shape();
private var HMove:Boolean=true; //Переменные, которые определяют направление
private var VMove:Boolean=true; //по горизонтали или вертикали
private var speed:Number=10;
public function MyRectangle() {
drawRectangle(0xFF9900);
addChild(Rect);
addEventListener(Event.ENTER_FRAME,frameListener);
function frameListener(e:Event):void{
//Перемещение вправо
if(HMove==true){
trace("X: "+Rect.x);
if(Rect.x<=stage.stageWidth-stage.width){
Rect.x+=speed;
//e.updateAfterEvent();
}else{
HMove=false;
}
}
//Перемещение влево
if(HMove==false){
trace("X: "+Rect.x);
if(Rect.x>stage.x){
Rect.x-=speed;
}else{
HMove=true;
}
}
//Перемещение вверх
if(VMove==true){
trace("Y: "+Rect.y);
if(Rect.y<=stage.stageHeight-stage.height){
Rect.y+=speed;
//e.updateAfterEvent();
}else{
VMove=false;
}
}
//Перемещение вниз
if(VMove==false){
trace("Y: "+Rect.y);
if(Rect.y>stage.x){
Rect.y-=speed;
}else{
VMove=true;
}
}
}
//Ф-ция рисует прямоугольник
function drawRectangle(color:Number):void{
Rect.graphics.lineStyle(1);
Rect.graphics.beginFill(color,1);
Rect.graphics.drawRect(0,0,75,40);
}
}
}
}
Второй класс Brush объявляет переменную figura1.

Код AS3:
package main {
import flash.display.*;
import main.MyRectangle;
public class Brush extends Sprite{
public var figura1:MyRectangle;
public function Brush() {
figura1=new MyRectangle();
}
}
}
Когда пытаюсь в переменную записать экземпляр класса MyRectangle, происходит ошибка

Код:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at Function/<anonymous>()
Помогите разобраться где я не прав.