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 bisa ditumpahi karakter pemain.Ketika karakter menyentuh objek Kursi yang diaktifkan, itu akan dilampirkan ke bagian dengan Weld dan skrip karakter default akan memainkan animasi duduk.

Bagaimana Kursi bekerja?

Ketika model yang berisi Humanoid dan BasePart disebut 'HumanoidRootPart' (biasanya karakter pemain) menyentuh kursi, Weld dibuat di antara kursi dan bagian.Properti C0 dan C1 di konfigurasi sehingga karakter disambungkan 2 kancing di atas kursi.Pengelasan ini bernama 'SeatWeld' dan diberi kepada kursi.

Saat duduk properti Seat.Occupant diatur ke Humanoid yang 'duduk' di kursi.Selain itu, properti Humanoid.SeatPart dari humanoid diatur ke kursi.

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

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

kursi:FindFirstChild("SeatWeld"):Hancurkan()

Kursi catatan memiliki cooldown (saat ini 3 detik) yang berada di basis per karakter per kursi.Ini berarti setelah karakter keluar dari kursi mereka tidak dapat duduk kembali di kursi yang sama selama 3 detik.Perilaku jedak waktu ini dapat berubah dan tidak boleh diandalkan oleh pengembang.

Untuk apa Kursi dapat digunakan?

Kursi memiliki berbagai penggunaan, berkisar dari yang jelas hingga yang paling tidak konvensional.

  • Membuat kursi atau bangku tanpa perlu pemrograman
  • Mengizinkan karakter untuk 'duduk' di objek bergerak seperti kendaraan tanpa terlempar ke sekitar
  • Membuat antarmuka yang dikendalikan oleh karakter di kursi menggunakan properti Seat.Occupant

Contoh Kode

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)

Rangkuman

Properti

  • Baca Paralel

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

  • Hanya Baca
    Tidak Direplikasi
    Baca Paralel

    Humanoid yang duduk di kursi.

Properti diwarisi dari PartProperti diwarisi dari BasePartProperti diwarisi dari PVInstance

Metode

  • Sit(humanoid : Instance):()

    Memaksa 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 kursi dapat digunakan atau tidak. Jika diatur ke benar, kursi akan bertindak sebagai bagian normal.

Occupant

Hanya Baca
Tidak Direplikasi
Baca Paralel

Humanoid yang duduk di kursi

Metode

Sit

()

Memaksa karakter dengan Humanoid yang ditentukan untuk duduk di Kursi.

Parameter

humanoid: Instance
Nilai Default: ""

Memberikan nilai

()

Acara