Object

사용되지 않는 항목 표시

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

만들 수 없음
복제되지 않음

개체는 Roblox 클래스 계층의 모든 클래스에 대한 기본 클래스입니다. Roblox 엔진이 정의하는 모든 다른 클래스는 모두 개체의 모든 구성원을 상속합니다. 개체를 직접 생성할 수는 없습니다.

요약

속성

  • 읽기 전용
    복제되지 않음
    병렬 읽기

    이 클래스를 나타내는 읽기 전용 문자열은 Object 입니다.

메서드

  • 지정된 속성의 개체가 변경될 때 발생하는 이벤트를 가져옵니다.

  • IsA(className : string):bool
    병렬 쓰기

    지정된 클래스와 개체의 클래스가 일치하거나 상속되는 경우 true를 반환합니다.

이벤트

속성

ClassName

읽기 전용
복제되지 않음
병렬 읽기

이 클래스를 나타내는 읽기 전용 문자열은 Object 입니다.

이 속성은 개체를 입력식별하는 다양한 기타 함수와 함께 사용할 수 있습니다. Object:IsA() 또는 Instance:FindFirstChildOfClass() 등을 참조하십시오.

이 속성은 스크립트에 의해 읽을 수 없으므로 변경하려는 개체의 클래스를 만들어야 합니다. 개체의 클래스를 변경하려는 개발자는 대신 Object 를 새로 만들어야 합니다.

Class.Object:IsA() 와는 달리 ClassName 은 클래스 상속을 무시하는 특정 클래스에 속한지 여부를 확인하는 데 사용될 수 있습니다. 예를 들어:


for _, child in workspace:GetChildren() do
if child.ClassName == "Part" then
print("Found a Part")
-- will find Parts in model, but NOT TrussParts, WedgeParts, etc
end
end

메서드

GetPropertyChangedSignal

이 메서드는 Changed 이벤트와 동일하게 행동하는 이벤트를 반환하지만, 해당 속성이 변경될 때만 발생합니다. 일반적으로 이 메서드를 연결하는 대신 Changed 와 함수를 확인하는 연결을 사용하는 것이

Class.ValueBase 개체, 예를 들어 IntValueStringValue , 0> Class.Object.Changed|Changed0> 이벤트를 사용하여 그들의 ValueBase3> 속성에 대한 콘텐츠를 변경합니다. 따라서 이

이 이벤트는 연결된 함수에 아무런 인수도 전달하지 않으므로 변경된 속성의 값은 스크립트 내에서 직접 읽어야 합니다.

제한

이 메서드에서 반환되는 이벤트는 물리학 관련 변

또한, 속성이 매우 자주 변경되는 경우 반환된 이벤트가 발생하지 않을 수 있으며/또는 발생하지 않을 수도 있습니다. 게임 로직에 영향을 미치는 속성 변경에 대해 게임에서 테스트하는 것이 좋습니다.

매개 변수

property: string

연결할 속성입니다.


반환

속성이 변경될 때 발생하는 신호입니다.

코드 샘플

Old-to-New Values with Changed

local part = Instance.new("Part")
local currentColor = part.BrickColor
local function onBrickColorChanged()
local newColor = part.BrickColor
print("Color changed from", currentColor.Name, "to", newColor.Name)
currentColor = newColor
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.BrickColor = BrickColor.new("Really red")
part.BrickColor = BrickColor.new("Really blue")
Changed and GetPropertyChangedSignal

local part = Instance.new("Part")
local function onBrickColorChanged()
print("My color is now " .. part.BrickColor.Name)
end
local function onChanged(property)
if property == "BrickColor" then
onBrickColorChanged()
end
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.Changed:Connect(onChanged)
-- Trigger some changes (because we connected twice,
-- both of these will cause two calls to onBrickColorChanged)
part.BrickColor = BrickColor.new("Really red")
part.BrickColor = BrickColor.new("Institutional white")

IsA

병렬 쓰기

IsA는 개체의 클래스가 상당한 클래스의 하위 또는 하위 클래스 인지 여부로 트루 또는 틀립니다. 이 함수는 다른 언어의 <

대부분의 경우 이 함수는 개체가 Part 또는 WedgePart 와 같은 종류의 부품인지


local function paintFigure(character, color)
-- 캐릭터의 자식 개체를 반복
for _, child in character:GetChildren() do
-- 셔츠, 바지 및 인간형과 같은 비 부품 개체를 필터링하십시오
-- R15에서는 MeshPart를 사용하고 R6에서는 Part를 사용하므로 여기에서 베이스 부품을 감지하려면 베이스 부품을 사용합니다.
if child:IsA("BasePart") then
child.BrickColor = color
end
end
end
paintFigure(game.Players.Player.Character, BrickColor.new("Bright blue"))

모든 클래스가 Object에서 상속되므로 object:IsA("Object") 를 호출하면 항상 true가 반환됩니다.

매개 변수

className: string

개체의 클래스가 검사될 클래스입니다. 케이스 민감.


반환

개체의 클래스가 일치하는지 여부 또는 지정된 클래스의 하위인지 설명합니다.

코드 샘플

Instance:IsA()

local Workspace = game:GetService("Workspace")
print(Workspace:IsA("Workspace")) -- true
print(Workspace:IsA("BasePart")) -- false
print(Workspace:IsA("Instance")) -- true

이벤트

Changed

이 이벤트는 개체 속성이 변경된 후 즉시 발생하며 대부분의 사용 사례에서 작동합니다(아래 참조). 변경된 속성의 새 값은 이 아님 매개 변수로 전달되므로 object[property] 을 사용하여 액세스해야 합니다. 예:


object.Changed:Connect(function(property)
print("The new property's value is", object[property])
end)

특정 속성의 변경만 들으려면 GetPropertyChangedSignal() 메서드를 대신 사용하십시오.

Class.ValueBase 개체, 예를 들어 IntValueStringValue 은 이 이벤트가 발생할 때만 작동합니다. 다른 변경 사항을 감지하려면 1>Class.Object:GetPropertyChangedSignal()|GetPropertyChangedSignal() 을 사용하

제한

이 이벤트는 물리적 변경 사항, 예를 들어 Class.BasePart.C

또한, 이 이벤트는 속성이 매우 자주 변경되는 경우 발생하지 않으며/또는 발생하지 않을 수 있습니다. 게임 로직에 영향을 주는 속성 변경에 대해 철저하게 테스트하는 것이 좋습니다.

매개 변수

property: string

변경된 속성의 이름입니다.


코드 샘플

Changed Event

-- Demonstrate the Changed event by creating a Part
local part = Instance.new("Part")
part.Changed:Connect(print)
-- This fires Changed with "Transparency"
part.Transparency = 0.5
-- Similarly, this fires Changed with "Number"
part.Name = "SomePart"
-- Since changing BrickColor will also change other
-- properties at the same time, this line fires Changed
-- with "BrickColor", "Color3" and "Color3uint16".
part.BrickColor = BrickColor.Red()
-- A NumberValue holds a double-precision floating-point number
local vNumber = Instance.new("NumberValue")
vNumber.Changed:Connect(print)
-- This fires Changed with 123.456 (not "Value")
vNumber.Value = 123.456
-- This does not fire Changed
vNumber.Name = "SomeNumber"
-- A StringValue stores one string
local vString = Instance.new("StringValue")
vString.Changed:Connect(print)
-- This fires Changed with "Hello" (not "Value")
vString.Value = "Hello"
Change Detector

local object = script.Parent
local function onChanged(property)
-- Get the current value of the property
local value = object[property]
-- Print a message saying what changed
print(object:GetFullName() .. "." .. property .. " (" .. typeof(value) .. ") changed to " .. tostring(value))
end
object.Changed:Connect(onChanged)
-- Trigger a simple change in the object (add an underscore to the name)
object.Name = "_" .. object.Name