KeyframeMarker
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein Keyframe-Marker ist eine Instanz, die ein Ereignis darstellt, das schließlich ausgelöst wird, wenn ein Keyframe getroffen wird.
Verwendung eines Keyframe-Markers
KeyframeMarkers sollten immer über einen Keyframe hinweggeordnet sein, indem der Elternteil direkt oder mit der Funktion Keyframe:AddMarker() des Keyframe festgelegt wird. KeyframeMarkers können auch direkt entfernt werden, indem der Elternteil mit der Funktion Keyframe:RemoveMarker() ausgewählt wird, und mit der Funktion Keyframe:GetMarkers() auf die
Wenn ein Keyframe als Animation ausgeführt wird, wird für jeden Keyframe-Marker, der mit dem Keyframe verbunden ist, ein Ereignis ausgelöst, für jeden Keyframe-Marker, der mit dem Keyframe verbunden ist, wird ein Ereignis ausgelöst, für jeden Keyframe-Marker, der mit dem Keyframe verbunden ist, wird ein Ereignis ausgelöst. Optionally, you may set the Class.Animation
Es erbt die Keyframe.Name Eigenschaft von Instance und verhält sich identisch. Namen werden für die Identifizierung verwendet und müssen nicht einzigartig sein. Wenn mehrere KeyFrameMarkers mit dem gleichen Namen an einem KeyFrame angehängt sind, werden Ereignisse wie diejenige, die von AnimationTrack:GetMarkerReachedSignal() zurückgegeben wird
Siehe auch:
- Animation , enthält eine Verweisung auf Animationendaten, die für die Wiedergabe benutzerdefinierter Animationen auf Charaktern oder anderen Modellen mit dem Roblox-Animationssystem erforderlich sind
Code-Beispiele
local keyframe = Instance.new("Keyframe")
keyframe.Parent = workspace
local marker1 = Instance.new("KeyframeMarker")
marker1.Name = "FootStep"
marker1.Value = 100
local marker2 = Instance.new("KeyframeMarker")
marker2.Name = "Wave"
marker2.Value = 100
keyframe:AddMarker(marker1) --marker.Parent = keyframe
keyframe:AddMarker(marker2) --marker.Parent = keyframe
local markers = keyframe:GetMarkers()
for _, marker in pairs(markers) do
print(marker.Name)
end
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.Character:Wait()
local humanoid = character:WaitForChild("Humanoid")
-- Create new "Animation" instance
local kickAnimation = Instance.new("Animation")
-- Set its "AnimationId" to the corresponding animation asset ID
kickAnimation.AnimationId = "rbxassetid://2515090838"
-- Load animation onto the humanoid
local kickAnimationTrack = humanoid:LoadAnimation(kickAnimation)
-- Play animation track
kickAnimationTrack:Play()
-- If a named event was defined for the animation, connect it to "GetMarkerReachedSignal()"
kickAnimationTrack:GetMarkerReachedSignal("KickEnd"):Connect(function(paramString)
print(paramString)
end)
Zusammenfassung
Eigenschaften
Ein Wert, der für einen KeyframeMarker festgelegt ist.
Eigenschaften
Value
Ein Wert, der für einen KeyframeMarker festgelegt ist. Wenn das Signal, das von AnimationTrack:GetMarkerReachedSignal() erstellt wird, getötet wird, wird dieser Wert an die verbundene Funktion übergeben.
Siehe auch:
Code-Beispiele
local keyframe = Instance.new("Keyframe")
keyframe.Parent = workspace
local marker1 = Instance.new("KeyframeMarker")
marker1.Name = "FootStep"
marker1.Value = 100
local marker2 = Instance.new("KeyframeMarker")
marker2.Name = "Wave"
marker2.Value = 100
keyframe:AddMarker(marker1) --marker.Parent = keyframe
keyframe:AddMarker(marker2) --marker.Parent = keyframe
local markers = keyframe:GetMarkers()
for _, marker in pairs(markers) do
print(marker.Name)
end
local keyframe = Instance.new("Keyframe")
keyframe.Parent = workspace
local marker = Instance.new("KeyframeMarker")
marker.Name = "FootStep"
marker.Value = 100
keyframe:AddMarker(marker) --marker.Parent = keyframe
task.wait(2)
keyframe:RemoveMarker(marker) --marker.Parent = nil