在 Flash Pro 中,如何让属性面板显示您在 ActionScript 类中定义的属性?
Posted
技术标签:
【中文标题】在 Flash Pro 中,如何让属性面板显示您在 ActionScript 类中定义的属性?【英文标题】:In Flash Pro, how to get the Properties panel to expose the properties you define on your ActionScript class? 【发布时间】:2014-12-21 01:42:20 【问题描述】:我正在涉足游戏设计并尝试为游戏创建一些角色。现在我刚刚创建了一个包含矩形的电影剪辑。 MovieClip 符号扩展了我在 Flash Builder 中创建的一个类,该类实现了怪物的逻辑。然后我可以将这个怪物符号的一个实例从库中拖到舞台上,当我运行模拟时代码就可以工作了。到目前为止,一切顺利。
现在我想创建几个怪物,都略有不同:
public class Monster extends MovieClip
public var isFriendly:Boolean = true;
public var strength:int = 10;
public var catchPhrase:String = "Booyah!";
public function Monster()
一种方法是为每个扩展 Monster 的怪物编写一个新类,并在构造函数中设置我想要的属性(我还必须在库中为每个变体创建一个唯一的符号) .但是,如果我的怪物只是属性值不同,这似乎有点过头了。
查看 Flash Professional 使用界面,我看到“属性”面板的最底部有一个部分,看起来像一个以“属性/值”为标题的小表格。我可以使用它在 Flash Professional UI 中以某种方式设置我的类的属性吗?我找不到有关如何使用它的任何信息。
【问题讨论】:
【参考方案1】:好的,我想通了。关键是将我的符号转换为 Flash 组件。
首先我编辑了我的 ActionScript 类以导出我想要设置的属性(包括 Inspectable 标记):
public class Monster
private var _catchPhrase:String;
public function Monster()
public function get catchPhrase():String
return _catchPhrase;
[Inspectable(name = "catchPhrase", type = String, defaultValue = "Booyah!")]
public function set catchPhrase(value:String):void
_catchPhrase = value;
然后我右键单击库中的怪物符号并选择“组件定义...”。这带来了组件定义对话框。然后,我在“类”字段中输入了我的 ActionScript 类的名称并单击复选标记进行验证。 Flash 然后自动生成了我需要的属性。
我还发现本教程很有帮助: http://redbjarne.wordpress.com/actionscript-3-0-custom-components-from-hell/
【讨论】:
以上是关于在 Flash Pro 中,如何让属性面板显示您在 ActionScript 类中定义的属性?的主要内容,如果未能解决你的问题,请参考以下文章