Klasa silnika
Object
*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.
Podsumowanie
Metody
GetPropertyChangedSignal(property: string):RBXScriptSignal |
Zdarzenia
Changed(property: string):RBXScriptSignal |
Odziedziczone przez:
Materiały referencyjne dotyczące interfejsów API
Właściwości
className
Metody
GetPropertyChangedSignal
Parametry
Zwroty
Przykłady kodu
Wartości ze Starego na Nowe z Zmianą
local part = Instance.new("Part")
local currentColor = part.BrickColor
local function onBrickColorChanged()
local newColor = part.BrickColor
print("Kolor zmienił się z", currentColor.Name, "na", newColor.Name)
currentColor = newColor
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.BrickColor = BrickColor.new("Naprawdę czerwony")
part.BrickColor = BrickColor.new("Naprawdę niebieski")Zdarzenie Changed i GetPropertyChangedSignal
local part = Instance.new("Part")
local function onBrickColorChanged()
print("Mój kolor to teraz " .. part.BrickColor.Name)
end
local function onChanged(property)
if property == "BrickColor" then
onBrickColorChanged()
end
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.Changed:Connect(onChanged)
-- Wywołaj kilka zmian (ponieważ połączyliśmy się dwa razy,
-- oba spowodują dwa wywołania onBrickColorChanged)
part.BrickColor = BrickColor.new("Naprawdę czerwony")
part.BrickColor = BrickColor.new("Biały instytucjonalny")IsA
isA
Zdarzenia
Changed
Parametry
Przykłady kodu
Zdarzenie Changed
-- Demonstruj zdarzenie Changed, tworząc obiekt Part
local part = Instance.new("Part")
part.Changed:Connect(print)
-- To wywołuje Changed z "Transparency"
part.Transparency = 0.5
-- Podobnie, to wywołuje Changed z "Number"
part.Name = "SomePart"
-- Ponieważ zmiana BrickColor również zmieni inne
-- właściwości jednocześnie, ten wiersz wywołuje Changed
-- z "BrickColor", "Color3" i "Color3uint16".
part.BrickColor = BrickColor.Red()
-- A NumberValue przechowuje liczbę zmiennoprzecinkową podwójnej precyzji
local vNumber = Instance.new("NumberValue")
vNumber.Changed:Connect(print)
-- To wywołuje Changed z 123.456 (nie "Value")
vNumber.Value = 123.456
-- To nie wywołuje Changed
vNumber.Name = "SomeNumber"
-- A StringValue przechowuje jeden ciąg znaków
local vString = Instance.new("StringValue")
vString.Changed:Connect(print)
-- To wywołuje Changed z "Hello" (nie "Value")
vString.Value = "Hello"Wykrywacz Zmian
local object = script.Parent
local function onChanged(property)
-- Pobierz aktualną wartość właściwości
local value = object[property]
-- Wypisz wiadomość informującą, co się zmieniło
print(object:GetFullName() .. "." .. property .. " (" .. typeof(value) .. ") zmieniło się na " .. tostring(value))
end
object.Changed:Connect(onChanged)
-- Wykonaj prostą zmianę w obiekcie (dodaj podkreślnik do nazwy)
object.Name = "_" .. object.Name