跳到主要内容

setAnimation 设置动画

setAnimation

类型: MethodDeclaration

所属类: CommandFunctionList

定义位置: command.ts

描述

设置动画

参数

参数名类型描述默认值
\{element, properties\}`{
element: ElementGetter
properties: Array<{key: string, value: any}>
}`--

返回值

类型: CommandFunction

源代码

位置: 第 4691 行

protected setAnimation({element, properties}: {
element: ElementGetter
properties: Array<{key: string, value: any}>
}): CommandFunction {
const getElement = Command.compileElement(element)
for (const property of properties) {
switch (property.key) {
case 'animation-from-actor':
property.value = Command.compileActor(property.value)
continue
case 'motion':
property.value = Enum.getValue(property.value)
continue
case 'angle':
case 'frame':
if (typeof property.value === 'object') {
property.value = Command.compileNumber(property.value, 0, 0, 10000)
}
continue
}
}
return () => {
const element = getElement()
if (element instanceof AnimationElement) {
for (let {key, value} of properties) {
switch (key) {
case 'animation-from-actor': {
const actor = value()
if (actor instanceof Actor) {
element.loadActorAnimation(actor)
}
continue
}
default:
if (typeof value === 'function') {
value = value()
}
// @ts-ignore
element[key] = value
continue
}
}
}
return true
}
}

文档生成时间:2025/7/7 12:07:06