Seat

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Typ BasePart, w którym postać gracza może "usiąść".Kiedy postać dotknie aktywnego obiektu siedzenia, zostanie ona przymocowana do części za pomocą Weld i domyślne skrypty postaci zagrają animacjasiedzenia.

Jak działają siedzenia?

Kiedy model zawierający Humanoid i BasePart wezwał "HumanoidRootPart" (zwykle postać gracza) dotknął siedzenia, powstaje Weld między siedzeniem a częścią.Właściwości C0 i C1 są skonfigurowane tak, aby znak został spawany 2 ćwieki nad siedzeniem.Ta spawana jest nazywana "spawą siedzenia" i jest przypisana do siedzenia.

Gdy siedzisz właściwość Seat.Occupant jest ustawiona na Humanoid, która jest "siedząca" na siedzeniu.Ponadto właściwość Humanoid.SeatPart ludzkiegooidu jest ustawiona na siedzenie.

Postać może również zostać zmuszona do siedzenia na miejscu za pomocą funkcji Seat:Sit().

Są dwa sposoby, w jaki sposób postać może wyjść z siedzenia.Kiedy gracz skacze, jest usuwany z siedzenia.Jednak można to również zrobić ręcznie, niszcząc spawanie siedzenia, na przykład:

siedzenie:FindFirstChild("SeatWeld"):Destroy()

Siedzenia z notatkami mają okres odnowienia (obecnie 3 sekund) na podstawie jednego miejsca na każdą postać.Oznacza to, że po wyjściu z miejsca postać nie może ponownie usiąść na tym samym miejscu przez 3 sekundy.Zachowanie okresu odnowienia może się zmienić i nie powinno być polegane na programistach.

Do czego mogą być używane siedzenia?

Siedzenia mają zróżnicowany zakres zastosowań, wahający się od oczywistych po bardziej niekonwencjonalne.

  • Tworzenie krzeseł lub siedzisk bez potrzeby programowania
  • Pozwolenie znakom "siąść" w poruszających się obiektach, takich jak pojazdy, bez wyrzucania ich
  • Tworzenie interfejsów, które są kontrolowane przez postać w siedzeniu za pomocą właściwości Seat.Occupant

Przykłady kodu

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)

Podsumowanie

Właściwości

  • Odczyt równoległy

    Czy siedzenie jest używalne czy nie. Jeśli ustawione jest na prawdę, siedzenie będzie działać jako zwykła część.

  • Tylko do odczytu
    Bez replikacji
    Odczyt równoległy

    Humanoide, który siedzi na siedzeniu.

Właściwości odziedziczeni z: PartWłaściwości odziedziczeni z: BasePartWłaściwości odziedziczeni z: PVInstance
  • Bez replikacji
    Brak możliwości dodawania do skryptu
    Odczyt równoległy
  • Bez replikacji
    Brak możliwości dodawania do skryptu
    Odczyt równoległy

Metody

Metody odziedziczeni z: BasePartMetody odziedziczeni z: PVInstance

Zdarzenia

Zdarzenia odziedziczeni z: BasePart

Właściwości

Disabled

Odczyt równoległy

Czy siedzenie jest używalne czy nie. Jeśli ustawione jest na prawdę, siedzenie będzie działać jako zwykła część.

Occupant

Tylko do odczytu
Bez replikacji
Odczyt równoległy

Humanoide, który siedzi na siedzeniu

Metody

Sit

()

Zmusza postać z określonym Humanoid do siedzenia na siedzeniu.

Parametry

humanoid: Instance
Wartość domyślna: ""

Zwroty

()

Zdarzenia