Seat
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Un type de BasePart que un personnage de joueur peut «s'asseoir». Lorsqu'un personnage touche un objet de siège activé, il sera attaché à la partie par un Weld et les scripts de personnage par défaut joueront une animationsd'assied-toi.
Comment les sièges fonctionnent-ils ?
Lorsqu'un modèle contenant un Humanoid et un BasePart appelé « HumanoidRootPart » (généralement un personnage de joueur) touche un siège, un
Lorsque vous asseyez la propriété Seat.Occupant à la propriété Humanoid qui est assise dans le siège. De plus, la propriété Humanoid.SeatPart de la voûte est réglée sur le siège.
Un personnage peut également être forcé de s'asseoir dans un siège en utilisant la fonction Seat:Sit().
Il y a deux façons pour qu'un personnage sorte d'un siège. Lorsqu'un joueur saute, il est retiré du siège. Cependant, cela peut également être fait manuellement en détruisant la souduredu siège, par exemple :
siège :FindFirstChild("SeatWeld") :Destroy()
Les notes ont un temps de recharge (actuellement 3 secondes) qui est sur la base par personnage par siège. Cela signifie qu'une fois qu'un personnage est sorti d'un siège, il ne peut pas se reposer sur le même siège pendant 3 secondes. Ce comportement de recharge peut changer et ne doit pas être confondu par les développeurs.
Pourquoi les sièges peuvent-ils être utilisés ?
Les sièges ont une gamme de fonctions diverse, allant de l'évidente à la plus insensée.
- Créer des chaises ou des bancs sans le besoin d'aucune programmation
- Permettre aux personnages de «s'asseoir» dans des objets en mouvement tels que les véhicules sans se faire flinguer
- Créer des interfaces qui sont contrôlées par le personnage dans le siège en utilisant la propriété Seat.Occupant
Échantillons de code
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)
Résumé
Propriétés
Que le siège soit ou non utilisable. Si le paramètre est réglé sur vrai, le siège fonctionnera comme une partie normale.
Le siège humanoïde dans lequel se trouve le visiteur.
Définit la forme globale de l'objet.
Détermine si une partie est immovable physiquement.
La vitesse angulaire de l'assemblage de la pièce.
Le centre de masse de l'assemblage de la partie dans l'espace mondial.
La vélocité linéaire de l'assemblage de la pièce.
La masse totale de l'assemblage de la partie.
Une référence à la partie racine de l'assemblage.
Détermine le type de surface pour le dos d'une pièce (+Z direction).
Détermine le type de surface pour le visage inférieur d'une partie (-Y direction).
Détermine la couleur d'une partie.
Détermine la position et l'orientation de la BasePart dans le monde.
Détermine si une partie peut se heurter à d'autres parties.
Détermine si la partie est envisagée pendant les opérations de requête spatiale.
Détermine si les événements Touched et TouchEnded se déclenchent sur la partie.
Détermine si oui ou non une partie lance une ombre.
Décrivez la position dans le monde dans laquelle se trouve le centre de masse d'une partie.
Décrivez le nom d'un groupe de collision de pièce.
Détermine la couleur d'une partie.
Indique les propriétés physiques actuelles de la partie.
Détermine plusieurs propriétés physiques d'une partie.
Utilisé pour activer ou désactiver les forces aéroynamiques sur les parties et les assemblages.
La taille physique réelle de la BasePart comme indiqué par le moteur de physique.
Détermine le type de surface pour la face avant d'une pièce (-Z direction).
Détermine le type de surface pour le visage gauche d'une pièce (-X direction).
Détermine un multiplicateur pour BasePart.Transparency qui n'est visible que pour le client local.
Détermine si une partie peut être sélectionnée dans Studio.
Décrivez la masse de la pièce, le produit de sa densité et de son volume.
Détermine si la partie contribue à la masse totale ou à l'inertie de son corps rigide.
Détermine la texture et les propriétés physiques par défaut d'une pièce.
Le nom de MaterialVariant .
Décrivez la rotation de la pièce dans le monde.
Spécifie l'Offset de la pivot de la partie de son CFrame.
Décrivez la position de la partie dans le monde.
Temps depuis la dernière mise à jour de la physique.
Détermine la quantité de lumière reflétée par une pièce.
Décrivez la plus petite modification de taille autorisée par la méthode Redimensionner.
Décrivez les visages sur lesquels une partie peut être redimensionnée.
Détermine le type de surface pour le côté droit d'une pièce (+X direction).
La règle principale dans le détermination de la partie racine d'une assemblage.
La rotation de la pièce en degrés pour les trois axes.
Détermine les dimensions d'une partie (Longueur, largeur, hauteur).
Détermine le type de surface pour la face supérieure d'une pièce (+ Y direction).
Détermine la quantité de partie qui peut être vue à travers (l'inverse de l'opacité de la partie).
Méthodes
Force le personnage avec le Humanoid spécifié à s'asseoir dans la position.
Appliquez une impulsion angulaire à l'assemblage.
Appliquez un impulsion à l'assemblage à l'assemblage de center of mass .
Appliquez un impulsion à l'assemblage à la position spécifiée.
Retourne si les parties peuvent se heurter l'une à l'autre.
Vérifie si vous pouvez configurer la propriété du réseau d'une partie.
Renvoie une table de pièces connectées à l'objet par n'importe quel type de articulationrigide.
Retournez toutes les Jointures ou Contraintes qui sont connectées à cette partie.
Retourne la valeur de la propriété Mass.
Renvoie le joueur actuel qui est le propriétaire du réseau de cette partie, ou zéro dans le cas du serveur.
Retourne vrai si le moteur de jeu décide automatiquement le propriétaire du réseau pour cette partie.
Renvoie la partie de base d'une assemblage de pièces.
Renvoie une table de toutes les parties BasePart.CanCollide vraies qui intersectent avec cette partie.
Renvoie la vitesse linéaire de l'assemblage de la partie à la position donnée par rapport à cette partie.
Renvoie vrai si l'objet est connecté à une partie qui le retiendra (par exemple, une partie Anchored )), sinon renvoie faux.
Change la taille d'un objet juste comme utiliser l'outil de redimensionnement Studio.
Définit le joueur donné comme propriétaire du réseau pour ceci et toutes les parties connectées.
Permet au moteur de jeu de décider dynamiquement qui gèrera la physique de la partie (un des clients ou le serveur).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crée une nouvelle IntersectOperation à partir de la géométrie superposée des parties et des autres parties dans l'matricedonné.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crée une nouvelle UnionOperation à partir de la partie, en minusant la géométrie occupée par les parties dans l'matricedonné.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crée une nouvelle UnionOperation à partir de la partie, plus la géométrie occupée par les parties dans l'matricedonné.
Obtient le pivot d'un PVInstance.
Transforme le PVInstance ainsi que tous ses descendants PVInstances afin que le pivot soit maintenant situé dans le CFrame spécifié.
Évènements
Évènements hérités de BasePartSe déclenche lorsqu'une partie arrête de toucher une autre partie en résultant d'un mouvement physique.
Feu quand une partie touche une autre partie en résultant d'un mouvement physique.