我正在做闪光灯简单的格斗游戏,使用ActionScript 2(我知道AS3是更好的方式,但现在改变是不是一种选择,我的下一个项目将其他变量在as3我发誓)。使用字符串变量作为路径来访问AS 2
事情是这样的,我有一个“Player”对象,根据给定的参数,它被附加了一个名为“player1”或“player2”的movieclip。正确的实例名称存储在名为PlayerName的变量中。例如:
var character:Player = new Player(1);
此代码将创建一个Player对象。由于数字“1”,构造函数会将PlayerName变量设置为字符串“player1”。最后,构造函数还应该将一个名为“player1”的影片剪辑附加到根目录。
我解决了附着影片剪辑的命名这样做:
_root.attachMovie(ID, this["PlayerName"], _root.getNextHighestDepth());
现在有类似的想法,我想解决以下问题(这是我的问题):说我想搬到我最近催生movieclip(或访问它的任何属性),我如何在MC的路径中使用字符串PlayerName?我的直觉是要做到这一点:
_root.PlayerName._x +=1;
或
_root.(this["PlayerName"])._x +=1;
希望当Flash制作,这种[“PlayerName”]会变成存储的字符串,但是这显然是行不通的。我真的坚持在这里,我用来做这一切在PHP的时候,我的意思是,如果这是PHP我会使用这样的:
_root.$PlayerName._x +=1;
有什么建议?你如何做这项工作?安装时,它我能想到几个解决方法,即,存储于剪辑的引用:
clip = _root.attachMovie(....
然后通过夹访问它的属性(clip._x + = 1),但我感觉更舒适如果我知道如何在PHP中做到这一点使用的变量在路由一样..不是说我太在意,这只是在其他情况下,这种“夹”变通办法可能无法正常工作。
请记住,我有点新的动作脚本面向对象,哈哈,也许这完全是疯了,有人这样做了一些其他的方式。
感谢您的时间!
嘿,我在AS2中存储的字符串,然后使用他们的文件路径,http://ffiles.com/flash/web_applications_and_data/download_manager_16slots_3567.html包括所有的源代码..基本上文本文件进行了下载管理器有一串路径,然后Flash会将这些路径读入变量以转到下载链接...浏览它应该被使用。 – joshua