Vector3Value

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.

Wartość Vector3 po prostu trzyma wektor 3 jako wartość. Ta wartość może być używana do komunikacji ze skryptami, przemieszczania obiektów do określonej lokalizacji itp.

Przykłady kodu

This code sample causes a Part to teleport any players that touch it to a specific position defined by a "TeleportPosition" Vector3Value.

Teleporter Part

-- 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.

Storing Vector2 inside Vector3Value

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)

Właściwości

Value

Odczyt równoległy

Przechowywany Vector3 .

Metody

Zdarzenia

Changed

Strzelany za każdym razem, gdy zmieniona zostanie Vector3Value.Value z Vector3Value .Będzie uruchomiony z nową wartością przechowywaną w obiekcie argumentu, zamiast ciągu reprezentującym właściwość zmienianą.

To wydarzenie, podobnie jak inne zmienione wydarzenia, można wykorzystać do śledzenia, kiedy zmienia się wartość Vector3Value i śledzenia różnych wartości, które może zmienić.

Na instancjamoże to być przydatne w grach, które polegają na Vector3Values, aby śledzić pozycje w świecie gry.

Równoważne zmienione zdarzenia istnieją dla podobnych obiektów, takich jak NumberValue i StringValue, w zależności od tego, który typ obiektu najlepiej odpowiada potrzebie.

Parametry

value: Vector3

Nowa wartość po zmianie.


Przykłady kodu

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".

How to Use Vector3Value.Changed

local value = Instance.new("Vector3Value")
value.Parent = workspace
value.Changed:Connect(function(NewValue)
print(NewValue)
end)
value.Value = Vector3.new(10, 10, 10)