# Properties

#### .Parent <a href="#data-model" id="data-model"></a>

The direct parent of the object in the hierarchy. Setting this property to a new `Instance` will move the object. Setting it to `nil` will remove it from the game world.

```lua
local part = game.Workspace.MyPart
print("The parent of MyPart is", part.Parent.Name) -- "Workspace"

-- Move the part to be a child of the character
part.Parent = game.LocalPlayer.Character
```

***

#### .Name <a href="#data-model" id="data-model"></a>

The name of the object.

```lua
local part = game.Workspace:FindFirstChild("Baseplate")
print(part.Name) -- "Baseplate"
part.Name = "NewBaseplate"
```

***

#### .Character <a href="#data-model" id="data-model"></a>

The character model currently controlled by the `Player`. This model contains the `Humanoid` and all body parts. This can be `nil` if the player has not spawned yet or their character has been destroyed.

```lua
local character = game.LocalPlayer.Character
if character then
    -- Character exists, find the Humanoid
    local humanoid = character:FindFirstChildOfClass("Humanoid")
    if humanoid then
        print("My health is:", humanoid.Health)
    end
end
```

***

#### .ClassName <a href="#data-model" id="data-model"></a>

The specific class type of the object (e.g., "Part", "Humanoid", "Player").

```lua
for _, child in ipairs(game.Workspace:GetChildren()) do
    print(child.Name, "is a", child.ClassName)
end
```

***

#### .Address <a href="#data-model" id="data-model"></a>

The memory address of the object instance, represented as a hexadecimal string. Useful for a unique identifier.

```lua
print("Workspace address:", game.Workspace.Address)
```

***

#### .Color <a href="#data-model" id="data-model"></a>

The RGB color of the Part, represented as a Color3 object.

```lua
local myPart = game.GetWorkspace().MyPart

-- Set the color to blue
myPart.Color = Color3.new(0, 0, 255)

-- Read the color back and check its components
local currentColor = myPart.Color
print("The red component is: " .. currentColor.R)
```

***

#### .Material <a href="#data-model" id="data-model"></a>

The name of the physical material of the object (e.g., "Plastic", "Metal", "Neon").

```lua
game.Workspace.MyPart.Material = "Neon"
```

***

#### .Size <a href="#data-model" id="data-model"></a>

The size of the Part's bounding box along its local X, Y, and Z axes, represented as a Vector3.

```lua
local myPart = game.GetWorkspace().MyPart

myPart.Size = Vector3.new(10, 10, 10)

-- Read the size back
local currentSize = myPart.Size
print("The part's width (X size) is: " .. currentSize.X)
```

***

#### .Value <a href="#data-model" id="data-model"></a>

A generic property for getting or setting the value of "**Value Objects" like StringValue, NumberValue, ObjectValue**, etc. The type returned or accepted depends on the object's **ClassName**.

```lua
local myStringValue = game.Workspace.MyStringValue
print(myStringValue.Value)
myStringValue.Value = "New Value"

local myObjectValue = game.Workspace.MyObjectValue
myObjectValue.Value = game.LocalPlayer.Character -- Set it to an Instance
```

***

#### .SoundId <a href="#data-model" id="data-model"></a>

The asset ID of the sound associated with this object, if any.

***

#### .Position <a href="#data-model" id="data-model"></a>

The 3D world coordinate of the Part's center, represented as a Vector3 object.

```lua
local myPart = game.GetWorkspace().MyPart

-- Get the position as a single Vector3 object
local currentPos = myPart.Position

print("The part's height (Y position) is: " .. currentPos.Y)

-- To set the position, you must create a new Vector3
myPart.Position = Vector3.new(currentPos.X, currentPos.Y + 10, currentPos.Z)
```

***

#### .Velocity <a href="#data-model" id="data-model"></a>

The speed and direction the Part is moving, represented as a Vector3 in studs per second.

```lua
local myPart = game.GetWorkspace().MyPart

-- Make the part move upwards by setting its velocity with a Vector3
myPart.Velocity = Vector3.new(0, 100, 0)

-- Read the velocity back
local currentVelocity = myPart.Velocity
print("Current upward speed is: " .. currentVelocity.Y)
```

***

#### .CanCollide <a href="#data-model" id="data-model"></a>

Returns a bool value of whether the BasePart has CanCollide enabled or not. Can be used to set Collide.

***

#### .Transparency <a href="#data-model" id="data-model"></a>

The transparency of the Part. A value of 0 is completely opaque, and 1 is completely invisible.

```lua
-- Make the part semi-transparent
game.Workspace.MyPart.Transparency = 0.5
```

***

#### .Reflectance <a href="#data-model" id="data-model"></a>

How much the Part reflects its surroundings. A value of 0 is non-reflective (like matte plastic), and 1 is perfectly reflective (like a mirror).

```lua
game.Workspace.MyPart.Reflectance = 1
```

***

#### .Rotation <a href="#data-model" id="data-model"></a>

The orientation of the Part, represented as a Vector3. This property is **read-only**.

```lua
local myPart = game.GetWorkspace().MyPart

-- Get the rotation as a single Vector3 object
local currentRotation = myPart.Rotation

print(string.format("Current Y-axis rotation: %.2f", currentRotation.Y))
```

***

#### .LookVector <a href="#data-model" id="data-model"></a>

A unit vector (length of 1) that points in the direction of the Part's **front** (-Z) face. It's a Vector3 Object.

***

#### .RightVector <a href="#data-model" id="data-model"></a>

A unit vector (length of 1) that points in the direction of the Part's **right** (+X) face. It's a Vector3 Object.

***

#### .UpVector <a href="#data-model" id="data-model"></a>

A unit vector (length of 1) that points in the direction of the Part's **top** (+Y) face. It's a Vector3 Object.

***

#### .MeshId <a href="#data-model" id="data-model"></a>

The asset ID for a custom mesh.

***

#### .TextureId <a href="#data-model" id="data-model"></a>

The asset ID for a texture applied to the Part.

***

#### .DecalTextureId <a href="#data-model" id="data-model"></a>

The asset ID for a decal applied to the Part.

***

#### .SpecialMeshTextureId <a href="#data-model" id="data-model"></a>

The asset ID for the texture of a SpecialMesh object inside the Part.

***

#### .BonePosition <a href="#data-model" id="data-model"></a>

The 3D position of a bone object.

***

#### .ButtonPosition <a href="#data-model" id="data-model"></a>

The 2D position of a button object.

***

#### .ButtonSize <a href="#data-model" id="data-model"></a>

The size of a button object.

***

#### .VisibleFrame <a href="#data-model" id="data-model"></a>

A property related to whether the frame is visible or not

***

#### .HoldDuration <a href="#data-model" id="data-model"></a>

The time in seconds a user must hold an interaction, typically for a ProximityPrompt.

***

#### .MaxActivationDistance <a href="#data-model" id="data-model"></a>

The maximum distance in studs from which a user can interact with this Part, typically for a ProximityPrompt.

***

#### .ProximityActionText <a href="#data-model" id="data-model"></a>

The text displayed to the user when they are able to interact with this Part (e.g., "Open", "Talk").

***

#### .ProximityExclusivity <a href="#data-model" id="data-model"></a>

The exclusivity behavior of the ProximityPrompt (e.g., "OnePerButton").

***

#### .UserId <a href="#data-model" id="data-model"></a>

The unique numerical ID associated with the player's account.

```lua
print("My UserID is:", game.LocalPlayer.UserId)
```

***

#### .Team <a href="#data-model" id="data-model"></a>

The name of the Team the Player is currently on.

```lua
if game.LocalPlayer.Team == "Red" then
    print("I'm on the Red team!")
end
```

***

**.FramePosition**

A read-only property that returns the X and Y coordinates of a GUI element's position.

***

**.FrameBackgroundColor**

A read-only Color3 property that describes the background color of a GUI Frame.

***

#### .**FrameBorderColor** <a href="#data-model" id="data-model"></a>

A read-only Color3 property that describes the border color of a GUI Frame.

***

#### .CameraMaxZoomDistance <a href="#data-model" id="data-model"></a>

The maximum distance in studs the player can zoom their camera out.

```lua
-- Allow the player to zoom out very far
game.LocalPlayer.CameraMaxZoomDistance = 1000
```

***

<h4 id="data-model" align="center">Humanoid</h4>

```lua
local my_humanoid = game.LocalPlayer.Character.Humanoid
local health_percentage = (my_humanoid.Health / my_humanoid.MaxHealth) * 100
print(string.format("I am at %.2f%% health.", health_percentage))
```

***

#### .MaxHealth <a href="#data-model" id="data-model"></a>

The maximum health of the Humanoid.

***

#### .MoveDirection <a href="#data-model" id="data-model"></a>

A unit vector representing the direction the Humanoid is currently moving, relative to the world. A vector of (0, 0, 0) means the Humanoid is standing still.

```lua
local move_dir_x, move_dir_y, move_dir_z = game.LocalPlayer.Character.Humanoid.MoveDirection
if move_dir_z < -0.5 then
    print("I am moving forward!")
end
```

***

#### .Health <a href="#data-model" id="data-model"></a>

The health of the Humanoid.

***
