actionscript 3 - AS3 Cannot access a property or method of a null object reference -


i've been searching type of error on every sites haven't found solution this. error in gold class @ _money.addtext(stage); thing makes me more confused when _money.addtext(stage); called in main class works without error. please help. thanks!

and other thing want ask too. in gold class. tried tracing see how count money does. , stays @ 5 no matter how many golds i've clicked. wonder why won't increase ?

here gold class:

package {      import flash.display.movieclip;     import flash.events.event;     import flash.events.mouseevent;      public class gold extends movieclip     {         private var _main:main          private var gold:gold;         public var destinationy:int;          private var _money:money =  new money();           public function gold(main:main):void          {                            _main=main;             addeventlistener(mouseevent.click, goldclicked);          }          private function goldclicked(e:mouseevent):void         {             e.currenttarget.removeeventlistener(mouseevent.click,goldclicked);                  _main.goldcontainer.removechild(e.currenttarget gold);             _money.money+=5;             trace(_money.money);             _money.addtext(stage);         }      } } 

here money class :

package {         import flash.text.textfield      public class money     {         public var money:int;         private var moneytext:textfield =  new textfield();          public function money():void         {          }          public function addtext(stage:object):void         {             stage.addchild(moneytext);             moneytext.x = 5;             moneytext.y = 5;             moneytext.height = 20;             moneytext.textcolor=0x000000;             updatemoney();         }          public function updatemoney():void {             moneytext.text="money: "         }     } } 

some parts of main class :

package {         import flash.display.movieclip;     import flash.display.sprite;     import flash.utils.timer;     import flash.events.timerevent;     import flash.events.event;       public class main extends movieclip     {         private var field:array;         public var gold:gold;         public var goldcontainer:sprite = new sprite();         private var goldtimer:timer = new timer(2000);         public var _money:money = new money();          public function main():void         {             setupfield();             _money.addtext(stage);             goldset();             addeventlistener(event.enter_frame,onenterfrm);         }     }    } 

in display object not have access stage until has been added stage. need wait event.

change

    public function main():void     {         setupfield();         _money.addtext(stage);         goldset();         addeventlistener(event.enter_frame,onenterfrm);     } 

to

    public function main():void     {         this.addeventlistener(event.added_to_stage, onstage)     }      public function onstage(e:event):void{         this.removeeventlistener(event.added_to_stage, onstage)         setupfield();         _money.addtext(stage);         goldset();         addeventlistener(event.enter_frame,onenterfrm);     } 

Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -