Seat
*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
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
Czy siedzenie jest używalne. Jeśli ustawiono prawdziwie, siedzenie będzie działać jako normalna część.
Ludzoid, który siedzi na siedzeniu.
Zdefiniuj ogólną formę obiektu.
Określa, czy część jest nieprzenośna z punktu widzenia fizyki.
Prędkość kątowa zgromadzenia części.
Centrum masy części w przestrzeni świata.
Liniowa prędkość montażu części.
Całkowita masa zgromadzenia części.
Odniesienie do korzenia części zestawu.
Określa rodzaj powierzchni dla oblicza tylnego części (+Z kierunek).
Określa rodzaj powierzchni dla dolnej strony części (-Y kierunek).
Określa kolor części.
Określa pozycję i orientację BasePart w świecie.
Określa, czy część może uderzyć z innymi częściami.
Określa, czy część jest uważana podczas operacji zapytania przestrzeni.
Określa, czy Touched i TouchEnded wydarzenia w części.
Określa, czy część tworzy cień lub nie.
Opisuje pozycję świata, w której znajduje się centrum masy części.
Opisuje nazwę grupakolizji części.
Określa kolor części.
Wskazuje bieżące właściwości fizyczne części.
Określa kilka fizycznych właściwości części.
Używany do włączenia lub wyłączenia sił aerodynamicznych na częściach i zestawach.
Datatype.CFrame fizycznych składek BasePart .
Fizyczna wielkość BasePart wg fizyki.
Określa rodzaj powierzchni dla Strony Frontowej części (-Z kierunek).
Określa rodzaj powierzchni dla lewej strony części (-X kierunek).
Określa mnożnik dla BasePart.Transparency, który jest widoczny tylko dla lokalnego klienta.
Określa, czy część może być wybrana w Studio.
Opisuje masę części, produkt jego gęstości i objętości.
Określa, czy część przyczynia się do całkowitej masy lub inercji jego elastycznego ciało.
Określa teksturę i domyślną fizyczną właściwość części.
Nazwa MaterialVariant .
Opisuje rotację części w świecie.
Określa przesunięcie pivot części z jej CFrame .
Opisuje pozycję części w świecie.
Czas od ostatniego zapisu aktualizacja.
Określa, jak wiele części odzwierciedla niebo.
Opisuje najmniejszą zmianę w rozmiarze możliwą za pomocą metody zmiany rozmiarów.
Opisuje oblicza, na których można zmniejszyć część.
Określa rodzaj powierzchni dla prawego oblicza części (+X kierunek).
Główna zasada określania głównej części zestawienia.
Rotacja części w stopniach dla trzech osi.
Określa wielkość części (długość, szerokość, wysokość).
Określa rodzaj powierzchni dla oblicza góry części (+Y kierunek).
Określa, ile części można zobaczyć poprzez (przeciwieństwo nieprzezroczystości części).
Metody
Zmusza postać z określonym Humanoid do siedzenia na Siedzeniu.
Zastosuj impuls kątowy do zgromadzenia.
Zastosuj impuls do zgromadzenia w centrum zgromadzenia.
Zastosuj impuls do zgromadzenia na określonym położeniu.
Zwraca, czy części mogą uderzać ze sobą.
Sprawdza, czy możesz ustawić własność sieci części.
Zwraca tabelę części połączonych z obiektem za pomocą dowolnego rodzaju łączników elastycznych.
Zwróć wszystkie Współczynniki lub ograniczenia, które są powiązane z tym elementem.
Zwraca wartość właściwości Mass.
Zwraca bieżącego gracza, który jest właścicielem sieci w tej części, lub zero w przypadku serwera.
Wróщает prawdę, jeśli silnik gry automatycznie zdecyduje o właścicielu sieci dla tej części.
Zwraca podstawową część zestawu części.
Wywraca tabelę wszystkich BasePart.CanCollide prawdziwych części, które się z tym elementem łączą.
Zwraca liniową prędkość zgromadzenia części w danej pozycji w stosunku do tej części.
Wyświetla prawdę, jeśli obiekt jest połączony z częścią, która go utrzyma w miejscu (na przykład część Anchored), w innym wypadku wyświetla fałszywie.
Zmienia rozmiar obiektu, tak jak używając narzędzia Studio do zmiany rozmiarów.
Ustawia podanego gracza jako właściciela sieci dla tego i wszystkich połączonych części.
Pozwala silnikowi gry dynamicznie zdecydować, kto będzie odpowiadał za fizykę części (jednego z klientów lub serwera).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tworzy nowy IntersectOperation z geometrią wstępującą z części i innych części w podanym maszynie.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Utworzy nowy UnionOperation z części, odejmując geometrię zajętą przez części w podanym maszynie.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tworzy nowy UnionOperation z części, plus geometrię zajętą przez części w podanym массиве.
Zdobadza pivot Class.PVInstance .
Transformuje PVInstance wraz z wszystkimi jego potomnymi PVInstances, tak aby pivot teraz znajdował się w CFrame .
Zdarzenia
Zdarzenia odziedziczeni z: BasePartWystrzela, gdy część przestaje dotykać innej części w wyniku ruchu fizycznego.
Występuje po dotknięciu części przez inną część w wyniku ruchu fizycznego.