This repository has been archived by the owner on Jun 22, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
22.高级动画语法
Emerald提供了更高级的动画,你可以使用它制作应用技能动画或者特效动画。
高级动画需要动画脚本,文件名后缀推荐使用 .emrani
。
脚本头放置在脚本的第一行,用于设置动画的全局设置。
name 动画名称|position 绘图坐标中心|tick 全局动画每帧持续时间
其中,tick是可以省略的。
name 动画名称|position 绘图坐标中心
动画具有不同通道,不同通道显示的动画不同。
通道标签用于隔离不同通道的帧动作。
:Channel 通道名称
动画每一帧的动作,使用{}包括起来。
{
...
}
{}所包括的内容中,第一行表示图片的绘制动作,多个图片可以使用符号|隔开。
{
图片文件名(缩放比率,不透明度,X,Y)|图片文件名(缩放比率,不透明度,X,Y)|...
}
{}所包括的内容中,第二行表示播放的音效,多个音效可以使用符号|隔开。这一行是可以省略的。
{
图片文件名(缩放比率,不透明度,X,Y)|图片文件名(缩放比率,不透明度,X,Y)|...
音效文件名(1)
}
每一帧动作,在符号{的后方可以加入一些内容,即指令。多个指令可以使用符号|隔开。
当动画播放到这一帧时,消息就会被发送,触发页面中的AnimationMsg
事件。
发送消息使用msg指令:
{msg "hello"
...
}
NOTE:
如果发送的消息为dispose
,则消息不会被发送,而是直接销毁该动画。
当动画播放到这一帧时,动画就会被销毁。
销毁使用dispose指令:
{dispose
...
}
可以加上msg指令报告动画已经被销毁:
{msg "die"|dispose
...
}
NOTE:
如果整个通道中都没有销毁指令,那么播放到最后一帧时将跳回第一帧。
该设置不受全局设置影响。
完成该设置,可以使用tick指令:
{tick 设置该帧持续时间
...
}
暂停在当前帧,阻止向下一帧播放,可以使用stay指令:
{stay
...
}
使用
tick 0
指令也可以达到预期效果。
NOTE:
暂停可以阻止播放到最后一帧时将跳回第一帧。
name 动画名称|position 绘图坐标中心|tick 全局动画持续帧数
:Channel 通道名称
{tick 设置该帧持续帧数,可选|msg "播放到该帧时发送该消息,可选"
这一帧要显示的图片(缩放比率,不透明度,X,Y) //必须,多个图片用|隔开
播放的音效(1) //可选,多个音效用|隔开
}
{stay //停留在这一帧
这一帧要显示的图片(缩放比率,不透明度,X,Y) //必须,多个图片用|隔开
}
{dispose //播放到这一帧时销毁动画
这一帧要显示的图片(缩放比率,不透明度,X,Y) //必须,多个图片用|隔开
}
:Channel Test2
{tick 0 //0表示停留在这一帧
404.png(1,1,0,0)
}
该页面没有帮助?
请提出您的看法或联系Error 404获取更多帮助。