Seat

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 oyuncu karakterinin "oturabileceği" bir BasePart türü.Bir karakter etkinleştirilmiş bir Koltuk nesnesine dokunduğunda, parçaya bir Weld ile bağlanacak ve varsayılan karakter senaryoları oturma animasyonu oynayacaktır.

Koltuklar nasıl çalışır?

Bir modelinde Humanoid ve bir BasePart bulunan bir model 'HumanoidRootPart' (genellikle bir oyuncu karakteri) bir koltuğa dokunduğunda, koltuk ve parça arasında bir Weld oluşturulur.C0 ve C1 özellikleri karakterin koltuğun üzerinde 2 çivi kaynaklanması için yapılandırılır.Bu kaynak 'Koltuk kaynağı' olarak adlandırılır ve koltuğa ebeveynlik eder.

Otururken Seat.Occupant özelliği koltukta "oturuyor" olan Humanoid özelliğine ayarlanır.Ayrıca, insansızın Humanoid.SeatPart özelliği koltuğa ayarlanır.

Bir karakter ayrıca Seat:Sit() işlevini kullanarak bir koltuğa oturmaya zorlanabilir.

Bir karakterin bir koltuktan çıkmasının iki yolu vardır.Bir oyuncu atladığında, koltuktan kaldırılır.Ancak bunun da manuel olarak yapılması mümkündür, örneğin koltuk kaynağını yok ederek:

koltuk:FindFirstChild("SeatWeld"):Yok Et()

Not koltuklarının bir bekleme süresi vardır (şu anda her karakter başına bir koltuk üzerine) ve bu bekleme süresi her koltuk için geçerlidir.Bu, bir karakter bir koltuktan çıktıktan sonra 3 saniye boyunca aynı koltuğa geri oturamayacağını ifade eder.Bu bekleme süresi davranışı değişebilir ve geliştiriciler tarafından güvenilmez.

Sandalyeler ne için kullanılabilir?

Sandalyeler, açık olanlardan daha az geleneksel olanlara kadar çeşitli kullanımlara sahiptir.

  • Herhangi bir programlama gereksinimi olmadan sandalyeler veya banklar oluşturma
  • Karakterlerin araçlar gibi hareketli nesnelerde "oturmasına" izin vererek etrafa fırlatılmadan
  • Koltuğun karakteri tarafından kontrol edilen arayüzler oluşturmak için Seat.Occupant özelliğini kullanarak

Kod Örnekleri

This code sample includes a demonstration of how the Seat.Occupant property can be used to track which player is sitting in a seat and when they sit down or sit up.

Detecting Seat Occupant

local Players = game:GetService("Players")
local seat = Instance.new("Seat")
seat.Anchored = true
seat.Position = Vector3.new(0, 1, 0)
seat.Parent = workspace
local currentPlayer = nil
local function onOccupantChanged()
local humanoid = seat.Occupant
if humanoid then
local character = humanoid.Parent
local player = Players:GetPlayerFromCharacter(character)
if player then
print(player.Name .. " has sat down")
currentPlayer = player
return
end
end
if currentPlayer then
print(currentPlayer.Name .. " has got up")
currentPlayer = nil
end
end
seat:GetPropertyChangedSignal("Occupant"):Connect(onOccupantChanged)

Özet

Özellikler

  • Paralel oku

    Koltuk kullanılabilir olup olmadığı. Eğer doğru olarak ayarlanırsa, koltuk normal bir parça olarak davranacaktır.

  • Salt Okunur
    Çoğaltılmamış
    Paralel oku

    Koltukta oturan insansız.

Şuradan alınan Özellikler: PartŞuradan alınan Özellikler: BasePartŞuradan alınan Özellikler: PVInstance

Yöntemler

Şuradan alınan Yöntemler: BasePartŞuradan alınan Yöntemler: PVInstance

Etkinlikler

Şuradan alınan Etkinlikler: BasePart

Özellikler

Disabled

Paralel oku

Koltuk kullanılabilir olup olmadığı. Eğer doğru olarak ayarlanırsa, koltuk normal bir parça olarak davranacaktır.

Occupant

Salt Okunur
Çoğaltılmamış
Paralel oku

Oturduğu koltukta oturan insansız

Yöntemler

Sit

()

Karakteri belirtilen Humanoid ile oturmaya zorlar.

Parametreler

humanoid: Instance
Varsayılan değer: ""

Dönüşler

()

Etkinlikler