# Tool

Tool : `BackpackItem`

## Overview

Tool은 Humanoid가 보유하고 장착할 수 있는 장비 형태의 인스턴스입니다.

장착하지 않은 보유 Tool은 Player 객체에 속한 Backpack에 보관되며, 게임 화면 하단에 아이콘 형태로 나타납니다.

장착이 이루어지면 해당 Tool은 Backpack에서 제거되고 Character 모델 안으로 옮겨져 실제로 사용 가능한 상태가 됩니다.

기본적으로 Tool은 오른손에 장착되며, 내부에 Handle이라 불리는 BasePart를 포함하는 것이 일반적입니다. 다만 RequiresHandle 속성이 false일 경우 Handle 없이도 동작할 수 있습니다. 또한 새로 스폰되거나 리스폰되는 플레이어에게 기본으로 제공할 Tool은 StarterPack에 넣어 두어야 합니다.

## Properties

### CanBeDropped

`bool`

장착된 Tool의 Parent 속성이 Workspace로 변경될 때, 캐릭터 앞에 위치하도록 떨어뜨릴지를 지정하는 속성입니다.

이 속성이 false이면 장착된 Tool의 부모를 스크립트에서 변경할 수 없습니다.

#### Code Samples

```lua
local Tool = script.Parent

Tool.CanBeDropped = true
```

### Enabled

`bool`

현재 지원되지 않습니다.

#### Code Samples

### Grip

`CFrame`

현재 지원되지 않습니다.

#### Code Samples

## Methods

### Activate

현재 지원되지 않습니다.

#### Parameters

#### Return

| `void` |   |
| ------ | - |

#### Code Samples

### Deactivate

현재 지원되지 않습니다.

#### Parameters

#### Return

| `void` |   |
| ------ | - |

#### Code Samples

## Events

### Activated

현재 지원되지 않습니다.

#### Parameters

#### Code Samples

### Deactivated

현재 지원되지 않습니다.

#### Parameters

#### Code Samples

### Equipped

Tool을 장착할 때 실행되는 이벤트입니다.

#### Parameters

#### Code Samples

```lua
local Tool = script.Parent

local function OnEquipped()
    print("Tool Equipped!")
end
Tool.Equipped:Connect(OnEquipped)
```

### Unequipped

Tool을 장착 해제할 때 실행되는 이벤트입니다.

#### Parameters

#### Code Samples

```lua
local Tool = script.Parent

local function OnUnequipped()
    print("Tool Unequipped!")
end
Tool.Unequipped:Connect(OnUnequipped)
```

## See also

{% content-ref url="../../../manual/studio-manual/object/tool" %}
[tool](https://docs.overdare.com/korean/manual/studio-manual/object/tool)
{% endcontent-ref %}
