PVInstance

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

No creable
No explorable

Un A PVInstance ("Instancia de velocidad de posición") es una clase abstracta que no se puede crear.Es la base para todos los objetos que tienen una ubicación física en el mundo, específicamente BaseParts y Models.

Resumen

Propiedades

Métodos

Propiedades

Origin

No replicado
No programable
Leer paralelo

Pivot Offset

No replicado
No programable
Leer paralelo

Métodos

GetPivot

Escribir paralelo

Esta función obtiene el pivote de un PVInstance . Esto se usa a menudo con PVInstance:PivotTo() para mover un aplicación de modelado.

Models y BaseParts son ambos PVInstances ("Instancias de velocidad de posición") y por lo tanto ambos tienen esta función.


Devuelve

Muestras de código

Este ejemplo de código es un simple guión de teletransporte que mueve a tu personaje 10 studs hacia adelante en la dirección que estás actualmente enfrentando cuando presionas la tecla F.Lo hace al obtener el eje actual con PVInstance:GetPivot() y llamar PVInstance|PivotTo para mover el personaje hacia adelante.

Teletransportación de personajes simples

-- Este código debe colocarse en un LocalScript bajo StarterPlayerScripts
local Players = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local player = Players.LocalPlayer
local function doTeleport(_actionName, inputState, _inputObject)
local character = player.Character
if character and character.Parent and inputState == Enum.UserInputState.Begin then
-- Mueve el personaje 10 espárragos hacia adelante en la dirección que está mirando
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(0, 0, -10))
end
end
ContextActionService:BindAction("Teleport", doTeleport, true, Enum.KeyCode.F)

PivotTo

()

Transforma el PVInstance junto con todos sus descendientes PVInstances de tal manera que el pivote ahora se encuentra en el punto especificado CFrame.Esta es la función principal que debe usarse para mover Models a través de scripting.

BaseParts se mueven de esta manera al transformar sus CFrame con el desplazamiento necesario.Models se mueven de esta manera al tener su Model.WorldPivot transformado por el desplazamiento necesario.

Tenga en cuenta que, con fines de eficiencia, los eventos Object.Changed no se disparan para Position y Orientation de BaseParts se mueven de esta manera; solo se disparan para CFrame .

Al llamar PivotTo en Models , los desplazamientos de las partes y modelos descendientes se almacenan, de modo que las llamadas posteriores a PivotTo en el mismo modelo no acumulan el desplazamiento de punto flotante entre las partes que componen el aplicación de modelado.

Models y BaseParts son ambos PVInstances ("Instancias de velocidad de posición") y por lo tanto ambos tienen esta función.

Parámetros

targetCFrame: CFrame

El CFrame que el PVInstance pivote debería ser igual después de moverlo.

Valor predeterminado: ""

Devuelve

()

Muestras de código

Este ejemplo de código es un simple guión de teletransporte que mueve a tu personaje 10 studs hacia adelante en la dirección que estás actualmente enfrentando cuando presionas la tecla F.Lo hace al obtener el eje actual con PVInstance:GetPivot() y llamar PVInstance|PivotTo para mover el personaje hacia adelante.

Teletransportación de personajes simples

-- Este código debe colocarse en un LocalScript bajo StarterPlayerScripts
local Players = game:GetService("Players")
local ContextActionService = game:GetService("ContextActionService")
local player = Players.LocalPlayer
local function doTeleport(_actionName, inputState, _inputObject)
local character = player.Character
if character and character.Parent and inputState == Enum.UserInputState.Begin then
-- Mueve el personaje 10 espárragos hacia adelante en la dirección que está mirando
local currentPivot = character:GetPivot()
character:PivotTo(currentPivot * CFrame.new(0, 0, -10))
end
end
ContextActionService:BindAction("Teleport", doTeleport, true, Enum.KeyCode.F)

Eventos