KeyframeMarker

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Bir Keyframe Marker, bir Keyframe nın sonunda ateşlenmesi gereken bir etkinliği temsil etmeyi amaçlayan bir instanstır.

Bir Keyframe Markerı Kullanıyor

Eşleştiriciler her zaman ebeveyn olmalıdır, bir ebeveyni doğrudan ayarlayarak veya Keyframe:AddMarker() iletkenin ebeveyni olarak kullanarak. Eşleştiriciler ayrıca Keyframe:RemoveMarker() iletkenin ebeveynine çekilir veya kald

Bir Keyframe bir animasyonun çalıştığında tespit edildiğinde, Keyframe için her Keyframe Marker'ın aşağıdaki eylemi yapacak olan olay olayı vardır. Bu olaylar, Keyframe'in ebeveyni olan Keyframe'in adına göre kimliği belirlenir. Bu olay

Class.Instance.Name|Keyframe.Name özelliğini Instance dan miras alır ve aynı şekilde davranır. İsimler tanımlanır ve benzersiz olmayan herhangi bir KeyFrame Marker'ın bir KeyFrame'ine bağlanması durumunda, etkinleştirilmiş olan herhangi bir İsim'in tüm

Ayrıca bakınız:

  • Keyframe, bir animasyon içinde belirli bir noktada birleştirilmiş Poses 'i tutar
  • AnimationTrack , bir animasyonun oynatılmasını Humanoid veya AnimationController üzerindeki bir oynatıcı kontrol eder
  • Animation , karakterlerin veya diğer modellerin Roblox animasyon sistemi kullanılarak özel animasyonlar oynatması için gereken animasyon verilerine bir referans tutar

Kod Örnekleri

Get Keyframe Markers Attached to a Keyframe

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
Listening to Keyframe Markers

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)

Özellikler

Value

Paralel oku

Bir KeyframeMarker için belirlenen bir değer. Herhangi bir sinyal oluşturulduğunda, bu değer bağlı işlevinize geçer.

Ayrıca bakınız:

Kod Örnekleri

Get Keyframe Markers Attached to a Keyframe

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
Add Marker/Remove Marker

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

Yöntemler

Etkinlikler