ObjectValue
*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.
A ObjectValue jest obiektem, którego celem jest przechowywanie pojedynczego odniesienia do innego obiektu. Jeśli ten obiekt jest duplikowany w studio i wartość odnosi się do kopiowanego obiektu, to nowy ObiektValue będzie wskazywał na kopiowany obiekt zamiast oryginału. W przeciwnym wypadku pola wartości zostaną wymazane. Kopiowanie i wklejanie tego obiektu będzie usuwać pole wartości.
Wartość tego można ustawić w studio podobnie jak inne pola typu odniesienia (takie jak Model.PrimaryPart): kliknij pole w oknie Proprietści, a następnie kliknij obiekt, do którego chcesz ustawić go w grze lub oknie Explorer. Możesz wyczyścić pole (ustawić je na nil ) poprzez kliknięcie X, które pojawia się, gdy klikasz pole.
Podobnie jak wszystkie obiekty „-Value”, ten pojedynczy wartości są przechowywane w właściwości Value. Wystąpienie zmienione dla tego (i innych obiektów, takich jak niego) zostanie uruchomiony z nową wartością przechowywana w obiekcie, zamiast ciągu znaków reprezentującego właściwość, która jest zmieniana.
Przykłady kodu
local objectValue = Instance.new("ObjectValue")
objectValue.Name = "MyBaseplateReference"
objectValue.Value = workspace:FindFirstChild("Baseplate")
objectValue.Parent = workspace
Podsumowanie
Właściwości
Przechowuje odniesienie do instancja.
Zdarzenia
Wystrzelony, gdy ObjectValue.Value jest zmieniany.
Właściwości
Metody
Zdarzenia
Changed
Ten wążek zostanie wykonany, gdy właściwość ObjectValue.Value zostanie zmieniona. Będzie on działać z nową wartością przechowywaną w obiekcie argumentu, zamiast być właściwością zmienianą.
Ten wątek, podobnie jak inne zmienione wątki, może być używany do śledzenia, kiedy ObiektValue się zmienia i śledzenia różnych wartości, które może zmienić.
Na instancjamoże to być użyteczne w grach, które zależą od ObjectValues do śledzenia stanów i wartości gry, takich jak systemy celowania RPG.
Zmienne zmiany istnieją dla podobnych obiektów, takich jak NumberValue i StringValue, w zależności od tego, jaki typ obiektu najlepiej odpowiada na potrzeby.
Parametry
Wartość po zmianie.
Przykłady kodu
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