Flixel介绍二

来源:互联网 发布:怎样用matlab编程 编辑:程序博客网 时间:2024/04/30 18:23

BTW,你下载的Flixel的压缩包里面有doc目录是Flixel的文档,需要查询具体每个类提供了何种接口的话,请看文档。

基本的组织结构

flexbuilder3_classmap

运行中的Flixel框架的组织结构大体上如上图所示。游戏的入口是一个FlxGame类(需要由你来继承),此外需要多个FlxState类(由你来继承并创建)。你需要在创建FlxGame类的时候指定一个State作为默认的State。之后你可以调用“FlxG.state = FlxState1”,来切换不同的State。

每个State就相当于是一个不同的游戏场景,一开始场景自然是空的,你需要创建多个FlxObject,并将它add()到State中,这样你的场景才会丰富起来。

FlxObject一般来说是各种各样的可视化对象,比如FlxButton、FlxSprite、FlxText等。他们都可以作为控件来响应鼠标消息。另外还有一些逻辑相关的不可视对象。

 

来试验下效果

我加入了一行嵌入图片的代码,并将这个图片用在了TestState中,并将它的位置放在了原来的”Hello,World!”的下面一点:

flexbuilder3_teststate1

下面是TestState的显示效果:

flexbuilder3_naocan

看起来效果不错。

Tilemap & Flan

Tilemap是一个术语,它指的是一种像砖块一样把地形平铺在场景中的地图技术。非常多的早期游戏中使用了这个技术,即使是现在,小制作的2维RPG、Flash的横板闯关等许多的场合,任然广泛的使用着这种技术。

Flan是制作Tilemap的工具之一,它输出的格式非常简单,并且可以被Flixel框架直接使用(因为Flan版本和Flixel当前版本不一致的原因,需要修改小部分代码)。Flan的官网在(http://www.tbam.com.ar/utility–flan.php),这里(http://flashgamedojo.com/wiki/index.php?title=Flan)是Flixel官网对Flan的介绍,貌似评价挺不错。

Flan能将制作好的地图导出,再由Flixel来加载。Flan导出一个as脚本格式的地图类和一个记录地图数组的文本,如果你的地图有许多层,那么将会有多个文本文件,这并不太方便管理。另外那个地图类文件需要稍作修改才能用。

我们先来制作一张地图,里面象征性的加入了几个“地形”:

flexbuilder3_flan_map

然后在导出页里面选择导出的文件的目录,我选择了代码的根目录,如果你需要换到其他目录,记得填写Package里面的内容。如果不知道怎么填写,请参考Action Script的包结构相关章节。

flexbuilder3_flan_gen_map

点击了“Export All”导出后,再点击下面的“Generate code for FlxState and copy to clipboard”按钮。这时你可以切换到你的FlexBuilder,把代码拷贝到之前的TestState中。不过你需要调整下复制的代码的内容,根据注释中的提示放在合适的位置。

OK?不,肯定已经出错了,因为这个版本的Flan对应的Flixel是比较早的,所以你需要手工改错。记得之前我告诉你的压缩包中的doc目录下面的文档么?把一些创建类的参数修改,并且修改下import错误,大概一会儿之后你就可以修改完的,我也就不一一的罗嗦了。

让我们运行一下:

flexbuilder3_final_map

大功告成!

原创粉丝点击