Seat

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Jenis BasePart yang dapat duduk pemain. Saat karakter pemain menyentuh objek Kursi yang aktif, itu akan ditautkan ke bagian dengan Weld dan naskah karakter default akan memainkan animasi duduk.

Bagaimana Kerja Kursi?

Ketika model mengandung Humanoid dan BasePart yang disebut 'HumanoidRootPart' ( biasanya karakter pemain ) menyentuh kursi,

Ketika duduk, Seat.Occupant property set ke Humanoid yang duduk di kursi. Selain itu, Humanoid.SeatPart property kursi dibatasi ke kursi.

Seorang karakter juga dapat dipaksa duduk di kursi menggunakan fungsi Seat:Sit() .

Ada dua cara bagi seorang karakter untuk keluar dari kursi. Saat seorang pemain melompat, mereka dihapus dari kursi. Namun, ini juga dapat dilakukan secara manual dengan menghancurkan kursi weld, misalnya:

kursi:FindFirstChild("SeatWeld":Destroy()

Catatan kursi memiliki cooldown (saat ini 3 detik) yang berada di panggilan karakter per seat. Ini berarti setelah seorang karakter keluar dari kursi mereka tidak dapat duduk kembali di kursi yang sama selama 3 detik. Perilaku cooldown ini dapat berubah dan tidak boleh diandalkan oleh pengembang.

Apa yang dapat dilakukan Kursi untuk?

Kursi memiliki berbagai jenis penggunaan, mulai dari yang jelas hingga yang kurang konvensional.

  • Membuat kursi atau bangku tanpa perlu pemrograman
  • Memungkinkan karakter untuk 'duduk' dalam objek bergerak seperti kendaraan tanpa mendapatkan geser
  • Membuat antarmuka yang dikontrol oleh karakter di kursi menggunakan property Seat.Occupant

Contoh Kode

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)

Rangkuman

Properti

  • Baca Paralel

    Apakah atau tidak kursi dapat digunakan. Jika diatur ke benar, kursi akan bertindak sebagai bagian normal.

  • Hanya Baca
    Tidak Direplikasi
    Baca Paralel

    Manusia yang duduk di kursi.

Properti diwarisi dari PartProperti diwarisi dari BasePartProperti diwarisi dari PVInstance

Metode

  • Sit(humanoid : Instance):void

    Mengikat karakter dengan Humanoid yang ditentukan untuk duduk di Kursi.

Metode diwarisi dari BasePartMetode diwarisi dari PVInstance

Acara

Acara diwarisi dari BasePart

Properti

Disabled

Baca Paralel

Apakah atau tidak kursi dapat digunakan. Jika diatur ke benar, kursi akan bertindak sebagai bagian normal.

Occupant

Hanya Baca
Tidak Direplikasi
Baca Paralel

Manusia yang duduk di kursi

Metode

Sit

void

Mengikat karakter dengan Humanoid yang ditentukan untuk duduk di Kursi.

Parameter

humanoid: Instance

Memberikan nilai

void

Acara