最近在研究PlaygroundOSS的一些高级操作,正好研究到创建flash,避免更多的人跳坑,咕了篇文章

首先我们需要创建一个flash项目,类型必须选择Action Script 2.0或1.0,因为3.0不支持使用标识符标记各个元件,必须使用类名,但是类名不能使用大多数符号,包括”/”和”.”,会给后期工作造成很大的麻烦。文件名称需要为xxx.flash.fla,确保Toboggan可以正确识别。

创建项目

创建好项目以后,把想做动画的图片拖进库,然后需要对每个图片建立一个元件

创建元件

接下来就是非常重要的部分,对元件的配置。

元件名称可以随便来,然后需要勾选“为ActionScript导出”,标识符里面需要填写该图片所在路径,结尾需要为.png.imag,这个如果使用过PlaygroundOSS开发的应该都认识。

元件属性

创建好元件以后,把单张图片拖进去,不要缩放,保存即可。

接下来就可以回到场景做动画了。要注意PlaygroundOSS是几乎不支持任何脚本的,如果需要循环播放,需要把第一帧重命名,比如start,后面的文章会教你怎么跳转。

flash做好以后,需要拿Toboggan发行。使用Toboggan创建一个Project,首先在Tools-Setup-Plugins里面配置一下flash可执行文件的位置,然后把图片和fla文件塞进去。

Flash文件位置配置
导入Toboggan

然后使用 File-New Resource-texture files 创建一个texb,把你用到的图打进去,当然这步可以把他打进多个texb。

创建texb

保存以后,使用Ctrl+Shift+P保存,然后就能在.publish文件夹获得打包好的texb、png.imag和flsh文件了。

最后把打包好的资源复制到install文件夹,修改start.lua为以下内容:

function setup()
	local x = 0
	local y = 0
	
	--创建SWF播放器,最后一个参数是执行到最后一帧的时候的callback
	pSWF = UI_SWFPlayer(nil, 7000, x, y, "asset://flash/mv_saya.flsh", nil, "flash_callback")
end

function execute(deltaT)

end

function leave()

end

function flash_callback(pSWF, label)
	syslog(string.format("[SWF]reach: <%s>", label))
	--跳到命名为start的帧
	sysCommand(pSWF, UI_SWF_GOTOFRAME, "start")
end

当然,如果要在帧里面蹦来蹦去可以这样

sysCommand(pSWF, UI_SWF_REACHFRAME, "end", "flash_callback")

分类: luaSIF

1 条评论

玩电果 · 2019年1月16日 下午9:09

膜dalao

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注