Vector3Value
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Un Vector3Value contient simplement un Vector3 en tant que valeur. Cette valeur peut être utilisée pour que les scripts communiquent, que les objets se déplacent à un endroit prédéfini, etc.
Échantillons de code
This code sample causes a Part to teleport any players that touch it to a specific position defined by a "TeleportPosition" Vector3Value.
-- Paste me in a Script inside a Part
local part = script.Parent
local teleportPosition = part.TeleportPosition
local function onTouch(otherPart)
-- First, find the HumanoidRootPart. If we can't find it, exit.
local hrp = otherPart.Parent:FindFirstChild("HumanoidRootPart")
if not hrp then
return
end
-- Now teleport by setting the CFrame to one created from
-- the stored TeleportPosition
hrp.CFrame = CFrame.new(teleportPosition.Value)
end
part.Touched:Connect(onTouch)
This code sample demonstrates how it is possible to store a Vector2 within a Vector3Value by converting a Vector2 into a Vector3 with a dummy Z value. Similarly, you can load it by reconstructing the Vector2 from the X and Y axes.
local vector3Value = Instance.new("Vector3Value")
-- Store a Vector2 in a Vector3
local vector2 = Vector2.new(42, 70)
vector3Value.Value = Vector3.new(vector2.X, vector2.Y, 0) -- The Z value is ignored
-- Load a Vector2 from a Vector3
vector2 = Vector2.new(vector3Value.Value.X, vector3Value.Value.Y)
print(vector2)
Propriétés
Méthodes
Évènements
Changed
Tiré chaque fois que la valeur Vector3Value.Value de la valeur Vector3Value est modifiée. Il s'exécute avec la nouvelle valeur stockée dans l'objet d'argument, au lieu d'une chaîne représentant la propriété modifiée.
Cet événement, comme d'autres événements modifiés, peut être utilisé pour suivre quand un Vector3Value change et pour suivre les différentes valeurs qu'il peut changer.
Par instance, cela peut être utile dans les jeux qui utilisent Vector3Values pour suivre les positions dans le monde du jeu.
Des événements équivalents existent pour des objets similaires, tels que NumberValue et StringValue, en fonction du type d'objet qui convient le mieux aux besoins.
Paramètres
La nouvelle valeur après le changement.
Échantillons de code
The below example, assuming all referenced objects existed, would print the Vector3Value's new value each time it changed. In the example below it would print "10,10,10".
local value = Instance.new("Vector3Value")
value.Parent = workspace
value.Changed:Connect(function(NewValue)
print(NewValue)
end)
value.Value = Vector3.new(10, 10, 10)