Vector3Value
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Um Vector3Value simplesmente contém um Vector3 como um valor. Este valor pode ser usado para scripts se comunicar, para objetos se mover para uma localização de predefinição, etc.
Amostras de código
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)
Propriedades
Métodos
Eventos
Changed
Executado sempre que o Vector3Value.Value do Vector3Value for alterado. Ele será executado com o novo valor armazenado no Objetode argumento, em vez de uma string representando a propriedade sendo alterada.
Este evento, como outros eventos alterados, pode ser usado para rastrear quando um Vector3Value muda e rastrear os diferentes valores que ele pode alterar.
Por instância, isso pode ser útil em jogos que usam Vector3Values para rastrear posições no mundo de jogos.
Eventos equivalentes alterados existem para objetos semelhantes, como NumberValue e StringValue, dependendo do tipo de objeto que melhor atende às necessidades.
Parâmetros
O novo valor após a alteração.
Amostras de código
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)