2014-01-30 46 views
0

我有三个类和一个容器.swf: 游戏 - 加载所有资产和游戏机制。 拼贴 - 创建一个正方形并通过flash Var加载图像。 TicTacToe.as - 这创建一个游戏实例,并通过container.swf链接Flash Var加载器问题

在我的Game类中,我有以下代码,在保存和编译时工作正常,并且能够在更新到我的.asp页面(我从数据库获取数据并传递给闪存变量)。

var gridUrl:String = "img/" + loaderInfo.parameters.theme + "grid.png"; 
      var gridPos:XMLList = theXML.GRID; 
      gridLoader.load(new URLRequest(gridUrl)); 
      grid = new MovieClip(); 
      grid.addChild(gridLoader); 

当我这个代码添加到Tile.as加载为方形我得到一个编译器错误1009的图像:无法访问空对象引用的属性或方法。同在这条线的错误:

var tileBurl:String = "img/" + loaderInfo.parameters.theme + "square.jpg"; 

它在Game.as类工作,但这种同一行是不是在我的Tile.as,我想不通为什么,即使在本地当它不能找到变量Game.as简单地将它们列为“未定义”,如在Tile.as中,它在loaderInfo.parameters中引发适合,loaderInfo将它们列为“null”。任何帮助,将不胜感激谢谢!

+0

将'loaderInfo''引用传递给您的'Tile'对象 – Cherniv

+0

感谢您的回复切尔诺夫,我在我的课程开始处有一个参考import flash.display.LoaderInfo;但问题仍然存在。 – hexobolic

回答

0

看起来,在调用loaderInfo对象时,这还没有准备好。尝试延迟代码的执行,例如在开始时添加空帧。

+0

谢谢Laky,所以在我的container.swf框架1上有一个空白的关键帧,你是否要在第二帧添加另一个关键帧?我确实有一个连接到这个.swf的类,如果这个代码包含在它里面,那么这个类是没有的。 – hexobolic

+0

如何使用预加载器添加场景? – Laky

+0

啊,这可能会工作,也可能是我应该开始的方式。我将使用预加载器来首先加载资源。所以我会在我的Game.as文件中有一些函数来检查数据是否被加载,比如Event.Complete然后激发剩下的代码吧? – hexobolic