Engine Class
KeyframeSequence
Summary
Properties
Methods
AddKeyframe(keyframe: Instance):() |
GetKeyframes():{Keyframe} |
RemoveKeyframe(keyframe: Instance):() |
Code Samples
Get KeyframeSequence Length
local function getSequenceLength(keyframeSequence)
local length = 0
for _, keyframe in pairs(keyframeSequence:GetKeyframes()) do
if keyframe.Time > length then
length = keyframe.Time
end
end
return length
end
local keyframeSequence = Instance.new("KeyframeSequence")
getSequenceLength(keyframeSequence)KeyframeSequence Instantiation
-- Create the sequence
local keyframeSequence = Instance.new("KeyframeSequence")
keyframeSequence.Loop = false
keyframeSequence.Priority = Enum.AnimationPriority.Action
-- Create a keyframe
local keyframe = Instance.new("Keyframe")
keyframe.Time = 0
-- Create sample poses
local rootPose = Instance.new("Pose")
rootPose.Name = "HumanoidRootPart"
rootPose.Weight = 0
local lowerTorsoPose = Instance.new("Pose")
lowerTorsoPose.Name = "LowerTorso"
lowerTorsoPose.Weight = 1
-- Set the sequence hierarchy
rootPose:AddSubPose(lowerTorsoPose)
keyframe:AddPose(rootPose)
keyframeSequence:AddKeyframe(keyframe)
-- Parent the sequence
keyframeSequence.Parent = workspaceAPI Reference
Properties
Methods
AddKeyframe
Parameters
Returns
()
Code Samples
KeyframeSequence Instantiation
-- Create the sequence
local keyframeSequence = Instance.new("KeyframeSequence")
keyframeSequence.Loop = false
keyframeSequence.Priority = Enum.AnimationPriority.Action
-- Create a keyframe
local keyframe = Instance.new("Keyframe")
keyframe.Time = 0
-- Create sample poses
local rootPose = Instance.new("Pose")
rootPose.Name = "HumanoidRootPart"
rootPose.Weight = 0
local lowerTorsoPose = Instance.new("Pose")
lowerTorsoPose.Name = "LowerTorso"
lowerTorsoPose.Weight = 1
-- Set the sequence hierarchy
rootPose:AddSubPose(lowerTorsoPose)
keyframe:AddPose(rootPose)
keyframeSequence:AddKeyframe(keyframe)
-- Parent the sequence
keyframeSequence.Parent = workspaceGetKeyframes
Returns
{Keyframe}
Code Samples
Get KeyframeSequence Length
local function getSequenceLength(keyframeSequence)
local length = 0
for _, keyframe in pairs(keyframeSequence:GetKeyframes()) do
if keyframe.Time > length then
length = keyframe.Time
end
end
return length
end
local keyframeSequence = Instance.new("KeyframeSequence")
getSequenceLength(keyframeSequence)RemoveKeyframe
Parameters
Returns
()
Code Samples
KeyframeSequence RemoveKeyframe
local keyframeSequence = Instance.new("KeyframeSequence")
keyframeSequence.Parent = workspace
local keyframe = Instance.new("Keyframe")
keyframeSequence:AddKeyframe(keyframe)
task.wait(2)
keyframeSequence:RemoveKeyframe(keyframe)