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 może "usiąść" postać gracza. Gdy postać dotyka włączonego obiektu siedzenia, zostanie ona przyczepiona do części przez Weld i domyślne skrypty postaci będą odtwarzać animacjasiedzenia.

Jak działają siedzenia?

Gdy model zawierający Humanoid i BasePart nazyją się 'HumanoidRootPart' (zwykle postać gracza) dotyka siedzenia, tworzy się Class.W

Gdy siedzenie Seat.Occupant właściwość ustawiona na Humanoid , które jest 'sitting' w siedzeniu. Ponadto właściwość Humanoid.SeatPart w kształcie ludzkiego jest ustawione na siedzeniu.

Postać może również zostać zmuszona do siedzenia w siedzeniu używając funkcji Seat:Sit().

Są dwa sposoby na wyjście postaci z siedzenia. Gdy gracz wskakuje, jest usuwany z siedzenia. Jest to jednak również możliwe do zrobienia ręcznie poprzez zniszczenie spoiny siedzenia, na przykład:

siedzenie: znajdź pierwsze dziecko("SeatWeld"):Destroy()

Zakładki na notatki mają czas odnowienia (obecnie 3 sekundy) na bazie na każdym znaku na każdym siedzenia. To oznacza, że ​​po wyjściu z siedzenia nie można siedzieć ponownie na tym samym siedzeniu przez 3 sekundy. Zachowanie tego odnowienia może się zmienić i nie należy tego zaufywać rozwój.

Jakie można użyć siedzeń?

Siedzenia mają zróżnicowaną gamę użyć, od oczywistych do bardziej niestandardowych.

  • Tworzenie krzeseł lub ławek bez potrzeby programowania
  • Umożliwienie znakom znakom "usiądź" w ruchomych obiektach, takich jak pojazdy, bez wychodzenia
  • Tworzenie interfejsów, które są kontrolowane przez postać w siedzeniu przy użyciu właściwości Seat.Occupant

Przykłady kodu

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. Jeśli ustawiono prawdziwie, siedzenie będzie działać jako normalna część.

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

    Ludzoid, 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. Jeśli ustawiono prawdziwie, siedzenie będzie działać jako normalna część.

Occupant

Tylko do odczytu
Bez replikacji
Odczyt równoległy

Ludzoid, który siedzi na siedzeniu

Metody

Sit

void

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

Parametry

humanoid: Instance

Zwroty

void

Zdarzenia