요약
메서드
GetPropertyChangedSignal(property: string):RBXScriptSignal |
이벤트
Changed(property: string):RBXScriptSignal |
API 참조
속성
ClassName
코드 샘플
클래스 이름
for _, child in workspace:GetChildren() do
if child.ClassName == "Part" then
print("부품을 찾았습니다")
-- 모델에서 부품을 찾지만, TrussParts, WedgeParts 등은 찾지 않습니다
end
endclassName
메서드
GetPropertyChangedSignal
매개 변수
코드 샘플
변경된 값의 이전-새로운
local part = Instance.new("Part")
local currentColor = part.BrickColor
local function onBrickColorChanged()
local newColor = part.BrickColor
print("색상이 변경되었습니다:", currentColor.Name, "에서", newColor.Name, "로")
currentColor = newColor
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.BrickColor = BrickColor.new("정말 빨간색")
part.BrickColor = BrickColor.new("정말 파란색")Changed 및 GetPropertyChangedSignal
local part = Instance.new("Part")
local function onBrickColorChanged()
print("내 색상은 이제 " .. part.BrickColor.Name)
end
local function onChanged(property)
if property == "BrickColor" then
onBrickColorChanged()
end
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.Changed:Connect(onChanged)
-- 몇 가지 변경 사항을 트리거합니다 (우리가 두 번 연결했기 때문에,
-- 이 두 가지 모두 onBrickColorChanged를 두 번 호출합니다)
part.BrickColor = BrickColor.new("정말 빨간색")
part.BrickColor = BrickColor.new("제도용 흰색")IsA
isA
이벤트
Changed
매개 변수
코드 샘플
변경된 이벤트
-- Part를 생성하여 Changed 이벤트를 시연합니다.
local part = Instance.new("Part")
part.Changed:Connect(print)
-- 이것은 "투명도"로 Changed를 발생시킵니다.
part.Transparency = 0.5
-- 유사하게, 이것은 "숫자"로 Changed를 발생시킵니다.
part.Name = "SomePart"
-- BrickColor를 변경하면 다른 속성도 동시에 변경되므로,
-- 이 줄은 "BrickColor", "Color3" 및 "Color3uint16"로 Changed를 발생시킵니다.
part.BrickColor = BrickColor.Red()
-- NumberValue는 배정밀도 부동 소수점 숫자를 보유합니다.
local vNumber = Instance.new("NumberValue")
vNumber.Changed:Connect(print)
-- 이것은 123.456으로 Changed를 발생시킵니다 ("값"이 아님)
vNumber.Value = 123.456
-- 이것은 Changed를 발생시키지 않습니다.
vNumber.Name = "SomeNumber"
-- StringValue는 하나의 문자열을 저장합니다.
local vString = Instance.new("StringValue")
vString.Changed:Connect(print)
-- 이것은 "안녕하세요"로 Changed를 발생시킵니다 ("값"이 아님)
vString.Value = "Hello"변경 감지기
local object = script.Parent
local function onChanged(property)
-- 속성의 현재 값을 가져옵니다.
local value = object[property]
-- 무엇이 변경되었는지 알리는 메시지를 출력합니다.
print(object:GetFullName() .. "." .. property .. " (" .. typeof(value) .. ") 변경됨: " .. tostring(value))
end
object.Changed:Connect(onChanged)
-- 객체에서 간단한 변경을 트리거합니다 (이름에 밑줄 추가)
object.Name = "_" .. object.Name