Actionscript 3 在as3中添加向自身添加更多movieclip的movieclip时出错
好吧,当舞台(这个职业)是一个将玩家和敌人的电影嘴唇拉进去的职业时,它就起作用了。然后我在舞台上加了这个,在playscreen上做了另一个。。。Actionscript 3 在as3中添加向自身添加更多movieclip的movieclip时出错,actionscript-3,flash,Actionscript 3,Flash,好吧,当舞台(这个职业)是一个将玩家和敌人的电影嘴唇拉进去的职业时,它就起作用了。然后我在舞台上加了这个,在playscreen上做了另一个。。。 我不知道它为什么不起作用,但有谁能告诉我为什么不起作用,不会出现错误…您必须将可变playscreen设置为新的avoiderclass对象,如下所示: package { import flash.display.*; public class documentclass extends MovieClip {
我不知道它为什么不起作用,但有谁能告诉我为什么不起作用,不会出现错误…您必须将可变playscreen设置为新的avoiderclass对象,如下所示:
package
{
import flash.display.*;
public class documentclass extends MovieClip
{
public var playscreen:avoiderclass;
public function documentclass()
{
playscreen.addEventListener(playerEvent.DEAD, onplayerdeath);
playscreen.x = 0;
playscreen.y = 0;
playscreen = new avoiderclass();
addChild(playscreen);
}
public function onplayerdeath(PlayerEvent:playerEvent):void
{
var Gameover:gameover = new gameover();
Gameover.x = 0;
Gameover.y = 0;
addChild(Gameover);
playscreen = null;
}
}
}
在做之前
playscreen = new avoiderclass();
请这边试试
playscreen.addEventListener(playerEvent.DEAD, onplayerdeath);
playscreen.x = 0;
playscreen.y = 0;
在这个函数中,不要忘记从displaylist中删除playscreen
public class documentclass extends MovieClip {
public var playscreen:avoiderclass;
public function documentclass(){
// construct the object first
playscreen = new avoiderclass();
// then manipulate it.
playscreen.addEventListener(playerEvent.DEAD, onplayerdeath);
playscreen.x = 0;
playscreen.y = 0;
addChild(playscreen);
}
怎么了?你没有真正解释什么是错的。如果没有对不起作用的内容和avoiderclass代码的描述,我们真的帮不了你多少忙。我花了一分钟来理解你的帖子,但当我意识到你基本上是在说“在你放playscreen=new avoiderclass();line…ThanksOk之前不要设置x和y”。谢谢你,试着用一种更容易理解的语言。你很好。
public function onplayerdeath(PlayerEvent:playerEvent):void {
var Gameover:gameover = new gameover();
Gameover.x = 0;
Gameover.y = 0;
addChild(Gameover);
// first remove the playscreen from display list
removeChild(playscreen);
// then set it to null, now really unreachable and eligible for gc
playscreen = null;
}
}
}