GetPlayingAnimation
格式
GetPlayingAnimation()
- 函数
- 所属对象:Avatar
简介
获取角色
正在播放的动作对象,作为列表返回。
返回值
类型 | 描述 |
---|---|
table | animation 动画对象 |
实例
在工作区下创建一个男角色,通过GetPlayingAnimation获取正在播放的动作。
local player = WorkSpace:WaitForChild("Boy") -- 获取创建好的角色
player.Position = Vector3(0,0.125,3) -- 角色位置赋值
local climb = player.Animation.Climb -- 获取攀爬动作
wait(0.5) -- 等待0.5
climb.AnimationState = Enum.StateType.Custom -- 动作状态改变
climb.Loop = true -- 动作循环开启
climb:PlayAnimation() -- 动作播放
wait(1) -- 等待1
local ani = player:GetPlayingAnimation() -- 获取玩家当前播放的动作
for k,v in pairs(ani) do -- 输出动作对象的名字
print(tostring(v.Name))
end
创建零件,在玩家碰撞零件时使翻滚,使用GetPlayingAnimation输出播放的动画名字。
local part = RWObject:New("Part",WorkSpace) -- 创建零件
part.Position = Vector3.New(2,1,2)
part.Parent = WorkSpace
part.TriggerEnter:Connect(function(hit) -- 角色接触零件时翻滚
if hit:IsClass("Avatar") then
local roll = RWObject:New("Animation",hit)
roll.ClipId = "rwid://T10a_TBvbv1RCvBVdK" -- 动作赋值
roll.Loop = true -- 动作循环开启
roll:PlayAnimation() -- 动作播放
end
end)
part.TriggerExit:Connect(function(avatar)
if avatar:IsClass("Avatar") then
local ani = avatar:GetPlayingAnimation() -- 获取玩家当前播放的动作
for k,v in pairs(ani) do -- 输出动作对象的名字
print(tostring(v.Name))
end
end
end)
文档更新时间: 2020-08-17 17:32 作者:安彤琛