Seat

แสดงที่เลิกใช้งานแล้ว

*เนื้อหานี้จะพร้อมใช้งานในภาษาที่คุณเลือกในเร็วๆ นี้

A type of BasePart that a player character can 'sit' in. When a character touches an enabled Seat object, it will be attached to the part by a Weld and the default character scripts will play a sitting animation.

How do Seats work?

When a model containing a Humanoid and a BasePart called 'HumanoidRootPart' (generally a player character) touches a seat, a Weld is created between the seat and the part. The C0 and C1 properties are configured so that the character is welded 2 studs above the seat. This weld is named 'SeatWeld' and parented to the seat.

When sitting the Seat.Occupant property is set to the Humanoid that is 'sitting' in the seat. Furthermore the Humanoid.SeatPart property of the humanoid is set to the seat.

A character can also be forced to sit in a seat using the Seat:Sit() function.

There are two ways for a character to get out of a seat. When a player jumps, they are removed from the seat. However this can also be done manually by destroying the seat weld, for example:


seat:FindFirstChild("SeatWeld"):Destroy()

Note seats have a cooldown (currently 3 seconds) that is on a per-character per-seat basis. This means once a character has gotten out of a seat they cannot sit back on the same seat for 3 seconds. This cooldown behavior may change and should not be relied upon by developers.

What can Seats be used for?

Seats have a diverse range of uses, ranging from the obvious to the more unconventional.

  • Creating chairs or benches without the need for any programming
  • Allowing characters to 'sit' in moving objects such as vehicles without getting flung around
  • Creating interfaces that are controlled by the character in the seat using the Seat.Occupant property

ตัวอย่างโค้ด

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)

สรุป

คุณสมบัติ

  • อ่านพร้อมๆ กัน

    Whether or not the seat is usable. If set to true, the seat will act as a normal part.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The humanoid that is sitting in the seat.

คุณสมบัติรับทอดมาจากPart
  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Sets the overall shape of the object.

คุณสมบัติรับทอดมาจากBasePart
  • อ่านพร้อมๆ กัน

    Determines whether a part is immovable by physics.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The angular velocity of the part's assembly.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The center of mass of the part's assembly in world space.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The linear velocity of the part's assembly.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The total mass of the part's assembly.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    A reference to the root part of the assembly.

  • อ่านพร้อมๆ กัน
  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Back face of a part (+Z direction).

  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Bottom face of a part (-Y direction).

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Determines the color of a part.

  • อ่านพร้อมๆ กัน

    Determines the position and orientation of the BasePart in the world.

  • อ่านพร้อมๆ กัน

    Determines whether a part may collide with other parts.

  • อ่านพร้อมๆ กัน

    Determines whether the part is considered during spatial query operations.

  • อ่านพร้อมๆ กัน

    Determines if Touched and TouchEnded events fire on the part.

  • อ่านพร้อมๆ กัน

    Determines whether or not a part casts a shadow.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the world position in which a part's center of mass is located.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the name of a part's collision group.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Determines the color of a part.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Indicates the current physical properties of the part.

  • อ่านพร้อมๆ กัน

    Determines several physical properties of a part.

  • อ่านพร้อมๆ กัน

    Used to enable or disable aerodynamic forces on parts and assemblies.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The CFrame of the physical extents of the BasePart.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The actual physical size of the BasePart as regarded by the physics engine.

  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Front face of a part (-Z direction).

  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Left face of a part (-X direction).

  • ซ่อนอยู่
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Determines a multiplier for BasePart.Transparency that is only visible to the local client.

  • อ่านพร้อมๆ กัน

    Determines whether a part is selectable in Studio.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the mass of the part, the product of its density and volume.

  • อ่านพร้อมๆ กัน

    Determines whether the part contributes to the total mass or inertia of its rigid body.

  • อ่านพร้อมๆ กัน

    Determines the texture and default physical properties of a part.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The name of MaterialVariant.

  • ซ่อนอยู่
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the rotation of the part in the world.

  • อ่านพร้อมๆ กัน

    Specifies the offset of the part's pivot from its CFrame.

  • ซ่อนอยู่
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the position of the part in the world.

  • ซ่อนอยู่
    อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Time since last recorded physics update.

  • อ่านพร้อมๆ กัน

    Determines how much a part reflects the skybox.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the smallest change in size allowable by the Resize method.

  • อ่านอย่างเดียว
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Describes the faces on which a part may be resized.

  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Right face of a part (+X direction).

  • อ่านพร้อมๆ กัน

    The main rule in determining the root part of an assembly.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    The rotation of the part in degrees for the three axes.

  • ไม่ซ้ำ
    อ่านพร้อมๆ กัน

    Determines the dimensions of a part (length, width, height).

  • อ่านพร้อมๆ กัน

    Determines the type of surface for the Top face of a part (+Y direction).

  • อ่านพร้อมๆ กัน

    Determines how much a part can be seen through (the inverse of part opacity).

คุณสมบัติรับทอดมาจากPVInstance
  • ไม่ซ้ำ
    ไม่สามารถเขียนสคริปต์
    อ่านพร้อมๆ กัน
  • ไม่ซ้ำ
    ไม่สามารถเขียนสคริปต์
    อ่านพร้อมๆ กัน

วิธีการ

  • Sit(humanoid : Instance):void

    Forces the character with the specified Humanoid to sit in the Seat.

วิธีการรับทอดมาจากBasePartวิธีการรับทอดมาจากPVInstance

อีเวนต์

อีเวนต์รับทอดมาจากBasePart

คุณสมบัติ

Disabled

อ่านพร้อมๆ กัน

Whether or not the seat is usable. If set to true, the seat will act as a normal part.

Occupant

อ่านอย่างเดียว
ไม่ซ้ำ
อ่านพร้อมๆ กัน

The humanoid that is sitting in the seat

วิธีการ

Sit

void

Forces the character with the specified Humanoid to sit in the Seat.

พารามิเตอร์

humanoid: Instance

ส่งค่ากลับ

void

อีเวนต์