Actionscript 3 Flash AS3中帧和函数的使用
我的问题是,在一个flash游戏中,我使用不同的帧来设置关卡。我对函数是如何工作的感到困惑。我的第一个帧工作正常,但我需要帮助在其他帧上使用函数,并保持函数特定于一个帧。非常感谢您提供的任何帮助,只需简单快速的解释即可您无法将函数与特定帧相关联 在帧上执行代码时,实际发生的是包含该帧的Actionscript 3 Flash AS3中帧和函数的使用,actionscript-3,flash,Actionscript 3,Flash,我的问题是,在一个flash游戏中,我使用不同的帧来设置关卡。我对函数是如何工作的感到困惑。我的第一个帧工作正常,但我需要帮助在其他帧上使用函数,并保持函数特定于一个帧。非常感谢您提供的任何帮助,只需简单快速的解释即可您无法将函数与特定帧相关联 在帧上执行代码时,实际发生的是包含该帧的MovieClip将调用名为addFrameScript()的函数,并向其传递您在帧上编写的代码的表示形式 这意味着: 在访问定义函数的框架之前,不能调用该函数 访问定义函数的帧后,该函数将附加到父MovieCl
MovieClip
将调用名为addFrameScript()
的函数,并向其传递您在帧上编写的代码的表示形式
这意味着:
- 在访问定义函数的框架之前,不能调用该函数
- 访问定义函数的帧后,该函数将附加到父MovieClip,并且您可以在时间线中较早或较晚的任何点调用该函数
- 如果尝试在不同的帧上定义具有相同名称的新函数,将出现
错误1021:Duplicate function definition
function loadLevel(level:int):void
{
// Do stuff with the value of level.
// For example, this function might look at a data source that maps
// the level numbers to some level data representing tile placement.
}
这可以在第一帧上定义,然后在每个后续帧上定义:
loadLevel(1); // Frame 2
loadLevel(2); // Frame 3
// ...etc
当然,所有这些都不理想,可以更好地避免时间线,而是使用AS3提供的面向对象范例。我发现在同一场景中使用多个级别会让我头痛不已。 我不是专家&我相信在很多情况下都有可能做到这一点,我见过一些使用1帧1场景和外部.as中的所有代码创建的伟大游戏 然而,我发现我自己更容易使用每层1帧,并将每个层放在不同的场景中