Vector3Value
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
Un Vector3Value contiene semplicemente un Vector3 come valore. Questo valore può essere utilizzato per gli script per comunicare, per gli oggetti per muoversi in una posizione predefinita, ecc.
Campioni di codice
Questo esempio di codice fa teletrasportare una parte a qualsiasi giocatore che la tocca in una posizione specifica definita da un Vector3Value "TeleportPosition".
-- Incollami in uno script all'interno di una parte
local part = script.Parent
local teleportPosition = part.TeleportPosition
local function onTouch(otherPart)
-- Prima, trova la HumanoidRootPart. Se non possiamo trovarla, esci.
local hrp = otherPart.Parent:FindFirstChild("HumanoidRootPart")
if not hrp then
return
end
-- Ora teletrasportati impostando il CFrame a uno creato da
-- la posizione teletrasportata memorizzata
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)
Proprietà
Metodi
Eventi
Changed
Sparato ogni volta che viene modificato il Vector3Value.Value del Vector3Value .Funzionerà con il nuovo valore memorizzato nell'argomento oggetto, invece di una stringa che rappresenta la proprietà che viene modificata.
Questo evento, come altri eventi modificati, può essere utilizzato per tracciare quando un Vector3Value cambia e per tracciare i diversi valori che può cambiare.
Ad esempio, questo può essere utile in giochi che si affidano a Vector3Values per tracciare le posizioni nel Mondodel gioco.
Eventi equivalenti modificati esistono per oggetti simili, come NumberValue e StringValue, a seconda del tipo di oggetto che meglio soddisfa il bisogno.
Parametri
Il nuovo valore dopo il cambiamento.
Campioni di codice
L'esempio seguente, supponendo che tutti gli oggetti referenziati esistessero, stamperebbe il nuovo valore di Vector3Value ogni volta che cambia.Nell'esempio seguente verrebbe stampato "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)