Flash-X - 游戏开发框架


未知
跨平台
ActionScript

软件简介

对于广大使用AS3作为开发语言的Flash程序员来说,如何转行到如日中天的手游开发是一件头痛的事情。Adobe提供的解决方案让人不敢恭维,
放弃使用多年的有如呼吸一般顺畅的AS3,去学习陌生的C++、LUA或C#简直就是要命,因为这不仅要去适应新的语法,还要学习新的开发环境,新的类和
新的API,这种从头开始的感觉可真不好。

作为一个化石级的页游开发者,作者同样遇到这个难题。经过努力,我推出了自己的解决方案,那就是Flash-x开发框架,该框架利用标准的AS3项
目,使用Flash的规则开发游戏,只是在运行前把AS3文件转换成LUA文件,再按照cocos2d-x的规则运行显示。关键的问题当然是如何进行代码
转换,这听起来挺玄乎的,毕竟AS3和LUA乍一看有着巨大的差异,其实还是有迹可循的,经过多次改进,终于达到实用的程度。

Flash-x的优点

  1. 开发时是标准的AS3项目,运行时则是cocos2d-x的环境,兼顾了方便和效率,完全为Flash程序员转型量身定制
  2. 与LUA相比,AS3在编码时要方便很多,毕竟这是完全面象对象的语言。另外还实现了语法编译,从而在运行前就排除掉大部分错误
  3. Flash-x框架不仅仅是提供了语法转换,更重要的是提供了一套成熟而又简洁的开发机制,这是作者在多年的页游开发中精炼出来的。包括UI、动画、数据和事件等,都有简单方便的解决方案

Flash-x的缺点

  1. 转换规则还是有一些限制的,主要是字符串方面的,变通的方法在开发文档中有说明
  2. 没有实现getter和setter方法,以及super关键字,这也都是因为LUA本身的局限所致

开发环境配置

  1. 下载Flash-x开发包,解压到硬盘上,比如d:\flash-x\
  2. http://www.flashdevelop.org官网下载flashdevelop开发工具并安装
  3. http://www.adobe.com/devnet/flex/flex-sdk-download.html下载最新版的flex sdk
  4. 打开FD,选择主菜单Tools->Program Settings,在弹出的Settings对话框中,选择AS3Context->Installed Flex SDKs,弹出下面的对话框,并按图操作

  1. 双击d:\flash-x\flash-x.as3proj项目文件,打开Flash-x项目,看到熟悉的FD开发界面了

  1. 点击F5快捷键,编译运行项目,结果是一个最简单的hello,world输出

简要开发说明

然后就可以开始写代码了,写什么呢?如果是Flash程序员,可以看看项目中的开发文档,然后从做一些功能测试开始。对于其他语言的程序员,我推荐
先进行字符串、数组、if语句、for循环和函数调用等基础语法的测试,这些都是AS3的基本知识,很重要,学起来也很容易的。

入口类是Main.as,其他逻辑代码一般都放在game目录下。我尽量按照Flash的规则封装基本的控件体系和常用API,不过也没有完全照
搬,而是对其进行简化。Element是控件基类,Box和Clip分别是容器类和图片类,这二者加上时钟和事件,就可以完成各种各样的开发需求了,具体
说明见开发文档。

现在,你实际上已经可以为所欲为了,不过也可能会手足无措。为了帮助大家用好Flash-x框架,我将会陆续推出一些经典的实例教程。