ObjectValue

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Um ObjectValue é um objeto cujo propósito é armazenar uma única referência a outro Objeto. Se este objeto for duplicado dentro do studio e a referência de valor se referir a um objeto também sendo copiado, então o novo ObjectValue apontará para o objeto copiado em vez do objeto original. Caso contrário, o mesmo valor será mantido. Copiar e coletar este objeto limpará o campo de valor.

O valor deste pode ser definido dentro do estúdio como outros campos do tipo de referência (como Model.PrimaryPart): clique no campo dentro da janela Propriedades, então clique no objeto que você deseja definir dentro da janela de visualização do jogo ou na janela de Explorer. Você pode limpar o campo (definir para nil ) clicando na X que aparece quando você clica no campo.

Como todos os objetos “-Value”, este único valor é armazenado na propriedade Valor. O evento Alterado para este (e outros objetos como ele) será disparado com o novo valor sendo armazenado na Objeto, em vez de uma string representando a propriedade sendo alterada.

Amostras de código

ObjectValue Example

local objectValue = Instance.new("ObjectValue")
objectValue.Name = "MyBaseplateReference"
objectValue.Value = workspace:FindFirstChild("Baseplate")
objectValue.Parent = workspace

Propriedades

Ler Parallel

Contém uma referência a uma instância.

Métodos

Eventos

Changed

Este evento ocorre sempre que a propriedade ObjectValue.Value é alterada. 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 ObjectValue muda e rastrear os diferentes valores que ele pode mudar.

Por instância, isso pode ser útil em jogos que usam ObjectValues para rastrear estados e valores de jogos, como sistemas de alvo RPG.

Eventos equivalentes alterados existem para objetos semelhantes, como NumberValue e StringValue, dependendo do tipo de objeto que melhor atende às necessidades.

Parâmetros

value: Instance

O valor após a alteração.


Amostras de código

ObjectValue Changed

local objectValue = script.Parent.ObjectValue
local part = script.Parent.Part
local function printObject(object)
print(object:GetFullName())
end
objectValue.Changed:Connect(printObject)
objectValue.Value = part