Почему мой новый объект () NULL? - PullRequest
1 голос
/ 12 декабря 2010

Я новичок во Flash и не уверен, почему мой новый объект планеты считается пустым, когда я пытаюсь установить для него свойства.Возможно, мне не хватает какого-то метода инициализации, в котором я должен создать новую планету вместо того, где я объявляю свои переменные?

    public class main extends Sprite {
    private var game_container:game_container_mc;
    private var left,up,right,down:Boolean;
    var pt:Point = new Point(303,301);
    var myArray:Array = [pt,pt,pt];
    private var plan:planet = new planet();

    public function main() {
        plan.loc.x = 3;
        plan.loc.y = 3;
         //...etc, error is here^

Ошибка: «Ошибка типа: Ошибка # 1009: Невозможно получить доступ к свойству или методу объекта.ссылка на нулевой объект. at main () "

Cheers

Ответы [ 2 ]

0 голосов
/ 12 декабря 2010
package { 
import flash.display.Sprite; 
import flash.geom.Point; 
import Math; 

public class planet extends Sprite { 

             private var kind:int = 0; 
             private var mass:Number; 
             private var atmosphere:int; 
             public var loc:Point; 

Здесь вы можете видеть, что loc имеет значение null и не инициализировано.Так что либо установите его здесь.

public var loc:Point = new Point(); 

, либо позже в основной функции как:

 var locObj:Point = new Point();
 locObj.x=3;
 locObj.y=3;
 plan.loc=locObj;
0 голосов
/ 12 декабря 2010

Loc - это тоже объект.

 public function main() {
        var Po:Point  = new Point();
        Po.x=3;
        Po.y=3;
        plan.loc=Po;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...