[task] | distill [title] | ChatComponent [category] | Components [rephrased] | # ChatComponent `ChatEvent`를 처리하여 메시지 내 `EmotionalType` 감지 시, 감지된 이모지 텍스트 길이만큼 `ChatComponent.ChatEmotionDuration`과 `ChatBalloonComponent.ShowDuration`을 동적으로 설정하는 예제입니다. ## 동작 규칙 1. `event.UserId`와 `_UserService.LocalPlayer.OwnerId`를 비교하여 발신자가 본인인 경우에만 처리합니다. 2. `EmotionalType` enum 값(1~23)을 문자열 [original] | `EmotionalType`의 텍스트 길이만큼 `ChatEmotionDuration`과 `ChatBalloonComponent`의 `ShowDuration`을 변경하는 예제입니다. `ChatEvent`를 통해 EmotionalType이 메시지에 포함되었는지 확인합니다. ```lua Event Handler: [self] HandleChatEvent (ChatEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: ChatComponen [chunk_id] | Components:332:1
[task] | distill [title] | CanvasGroupComponent [category] | Components [rephrased] | # CanvasGroupComponent 자식 UI Entity의 공통 속성(투명도, 상호작용, 입력 수신)을 제어합니다. ## Properties * **boolean BlocksRaycasts** * `true`: 자식 UI는 터치/클릭 입력을 수신합니다. 가려진 UI는 입력을 받지 못합니다. * **float GroupAlpha** * 자식 UI 투명도 설정 (범위: 0.0 ~ 1.0). * **boolean Interactable** * 자식 UI 상호작용 가능 여부. `fal [original] | 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. # Properties - **boolean BlocksRaycasts** true로 설정할 경우 자식 UI는 화면 터치 또는 마우스 클릭 입력을 받을 수 있습니다. 뒤에 가려진 UI는 입력을 받지 못합니다. - **float GroupAlpha** 자식 UI의 투명도를 설정합니다. 0 이상, 1 이하의 값을 설정할 수 있습니다. - **boolean Interactable** 자식 UI의 상호작용 가능 여부를 설정합니다. false로 [chunk_id] | Components:333:0
[task] | diverse_qa [title] | ChatComponent [category] | Components [rephrased] | 질문: ChatComponent는 어떤 기능을 제공하는 컴포넌트인가요? 답변: ChatComponent는 플레이어끼리 소통할 수 있는 채팅 기능을 지원해주는 컴포넌트입니다. 질문: 아바타 감정 표현의 지속 시간을 설정하는 Property는 무엇인가요? 답변: float 타입의 ChatEmotionDuration Property입니다. 질문: 보이스 채팅 버튼의 표시 및 사용 여부를 설정할 때 사용하는 Property는 무엇이며, 어떤 태그가 붙어 있나요? 답변: boolean 타입의 EnableVoiceChat Property이 [original] | 플레이어끼리 소통을 할 수 있는 채팅 기능을 지원해주는 컴포넌트입니다. # Properties - **float ChatEmotionDuration** 아바타 감정 표현 지속 시간을 설정합니다. - **boolean EnableVoiceChat [MakerOnly]** 보이스 채팅 버튼의 표시 및 사용 여부를 설정합니다. - **boolean Expand** 채팅창을 펼칠 수 있는 기능입니다. - **boolean HideWorldChatButton [MakerOnly]** 월드 채팅 버튼을 숨기는 기능입니다. - [chunk_id] | Components:332:0
[task] | diverse_qa [title] | CustomFootholdComponent [category] | Components [rephrased] | 질문: CustomFootholdComponent의 주요 기능은 무엇인가요? 답변: 사용자 정의 발판을 만드는 기능을 제공하며, 발판의 모양과 속성을 설정할 수 있습니다. 질문: CustomFootholdComponent에서 발판을 나타내는 프로퍼티는 무엇이며, 어떤 타입의 데이터를 사용하나요? 답변: 발판을 나타내는 프로퍼티는 `edgeLists`이며, `SyncList<List<Vector2>>` 타입의 데이터를 사용합니다. 질문: `edgeLists` 프로퍼티에서 하나의 발판은 어떻게 구성되나요? 답변: 하나의 발판은 여러 [original] | 사용자 정의 발판을 만드는 기능을 제공합니다. 발판의 모양과 속성을 설정할 수 있습니다 # Properties - **SyncList<List<Vector2>> edgeLists [Sync]** 발판을 나타냅니다. 하나의 발판은 여러 개의 연결점으로 구성됩니다. - **float FootholdDrag [Sync]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **float FootholdForce [Sync]** Rigidbody [chunk_id] | Components:331:0
[task] | wikipedia [title] | CanvasGroupComponent [category] | Components [rephrased] | # CanvasGroupComponent `CanvasGroupComponent`는 자식 UI 엔티티(Child UI Entity)의 공통 속성을 한 곳에서 제어하기 위한 컴포넌트입니다. ## 속성(Properties) `CanvasGroupComponent`는 자체적인 속성 3개와 `Component`에서 상속받은 속성 3개를 가지며, 각 속성은 다음과 같은 역할을 수행합니다. * **BlocksRaycasts (boolean)**: 화면 터치 또는 마우스 클릭 입력 처리 여부를 결정합니다. `true`로 설정하면 자식 [original] | 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. # Properties - **boolean BlocksRaycasts** true로 설정할 경우 자식 UI는 화면 터치 또는 마우스 클릭 입력을 받을 수 있습니다. 뒤에 가려진 UI는 입력을 받지 못합니다. - **float GroupAlpha** 자식 UI의 투명도를 설정합니다. 0 이상, 1 이하의 값을 설정할 수 있습니다. - **boolean Interactable** 자식 UI의 상호작용 가능 여부를 설정합니다. false로 [chunk_id] | Components:333:0
[task] | knowledge_list [title] | CanvasGroupComponent [category] | Components [rephrased] | 1. `CanvasGroupComponent`는 자식 UI Entity의 공통 속성을 한 곳에서 제어하는 기능을 제공합니다. 2. `boolean BlocksRaycasts` 프로퍼티는 true로 설정할 경우 자식 UI가 화면 터치 또는 마우스 클릭 입력을 받을 수 있게 하며, 이 설정으로 인해 뒤에 가려진 UI는 입력을 받지 못합니다. 3. `float GroupAlpha` 프로퍼티는 자식 UI의 투명도를 설정하며, 0 이상 1 이하의 값만 설정 가능합니다. 4. `boolean Interactable` 프로퍼티는 자식 UI의 상 [original] | 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. # Properties - **boolean BlocksRaycasts** true로 설정할 경우 자식 UI는 화면 터치 또는 마우스 클릭 입력을 받을 수 있습니다. 뒤에 가려진 UI는 입력을 받지 못합니다. - **float GroupAlpha** 자식 UI의 투명도를 설정합니다. 0 이상, 1 이하의 값을 설정할 수 있습니다. - **boolean Interactable** 자식 UI의 상호작용 가능 여부를 설정합니다. false로 [chunk_id] | Components:333:0
[task] | distill [title] | AvatarFaceActionSelectorComponent [category] | Components [rephrased] | # AvatarFaceActionSelectorComponent 아바타의 얼굴 Action을 선택해 적용하는 컴포넌트입니다. ## Properties | Property | Type | Attributes | Description | | :--- | :--- | :--- | :--- | | `ActionState` | `MapleAvatarFaceActionState` | - | 현재 Action 상태 | | `BlinkInterval` | `float` | - | 눈 깜빡임 시간 간격 (초 단위) | | `StateActio [original] | 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. # Properties - **MapleAvatarFaceActionState ActionState** 현재 Action 상태입니다. - **float BlinkInterval** 눈 깜빡임의 시간 간격으로, 초 단위를 사용합니다. - **ReadOnlyDictionary<MapleAvatarFaceActionState, ReadOnlyList<MapleAvatarActionStateElement>> StateActionDic [ReadOnly] [HideFr [chunk_id] | Components:334:0
[task] | extract_knowledge [title] | CanvasGroupComponent [category] | Components [rephrased] | # CanvasGroupComponent ## 개념 설명 `CanvasGroupComponent`는 자식 UI Entity들의 공통 속성을 중앙에서 제어하기 위한 컴포넌트입니다. 이 컴포넌트를 적용한 엔티티의 하위 UI 요소들은 `GroupAlpha`에 설정된 투명도, `Interactable`에 설정된 상호작용 가능 여부, 그리고 `BlocksRaycasts`에 설정된 입력 차단 여부를 그룹 단위로 공유하게 됩니다. ## API 사용법 ### Properties - **`boolean BlocksRaycasts`**: [original] | 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. # Properties - **boolean BlocksRaycasts** true로 설정할 경우 자식 UI는 화면 터치 또는 마우스 클릭 입력을 받을 수 있습니다. 뒤에 가려진 UI는 입력을 받지 못합니다. - **float GroupAlpha** 자식 UI의 투명도를 설정합니다. 0 이상, 1 이하의 값을 설정할 수 있습니다. - **boolean Interactable** 자식 UI의 상호작용 가능 여부를 설정합니다. false로 [chunk_id] | Components:333:0
[task] | knowledge_list [title] | AvatarFaceActionSelectorComponent [category] | Components [rephrased] | * `AvatarFaceActionSelectorComponent`의 `ActionState` 속성은 `MapleAvatarFaceActionState` 타입이며, 아바타의 현재 얼굴 Action 상태를 나타냅니다. * `AvatarFaceActionSelectorComponent`의 `BlinkInterval` 속성은 `float` 타입이며, 눈 깜빡임의 시간 간격을 초 단위로 설정합니다. * `AvatarFaceActionSelectorComponent`의 `StateActionDic` 속성은 `ReadOnlyDict [original] | 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. # Properties - **MapleAvatarFaceActionState ActionState** 현재 Action 상태입니다. - **float BlinkInterval** 눈 깜빡임의 시간 간격으로, 초 단위를 사용합니다. - **ReadOnlyDictionary<MapleAvatarFaceActionState, ReadOnlyList<MapleAvatarActionStateElement>> StateActionDic [ReadOnly] [HideFr [chunk_id] | Components:334:0
[task] | wikipedia [title] | CustomFootholdComponent [category] | Components [rephrased] | # CustomFootholdComponent **CustomFootholdComponent**는 메이플스토리 월드 스크립트 환경에서 사용자 정의 발판(Platform)을 생성하고 관리하기 위한 컴포넌트입니다. 이 컴포넌트를 통해 개발자는 발판의 기하학적 형태와 물리적 특성을 제어할 수 있습니다. ## 속성 (Properties) 이 컴포넌트는 발판의 형태와 물리 동작을 정의하는 여러 속성을 제공합니다. ### 발판 형태 및 물리 특성 * **edgeLists** (`SyncList<List<Vector2>>`, `[S [original] | 사용자 정의 발판을 만드는 기능을 제공합니다. 발판의 모양과 속성을 설정할 수 있습니다 # Properties - **SyncList<List<Vector2>> edgeLists [Sync]** 발판을 나타냅니다. 하나의 발판은 여러 개의 연결점으로 구성됩니다. - **float FootholdDrag [Sync]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **float FootholdForce [Sync]** Rigidbody [chunk_id] | Components:331:0
[task] | wikipedia [title] | ChatComponent [category] | Components [rephrased] | # ChatComponent `ChatComponent`은 메이플스토리 월드(MapleStory Worlds)에서 캐릭터의 채팅 및 감정 표현 기능을 제어하는 컴포넌트입니다. 이 컴포넌트는 `ChatEvent` 이벤트를 수신하여 메시지 내용을 분석하고, 감정이 포함된 메시지가 감지된 경우 해당 감정의 지속 시간을 동적으로 조정할 수 있습니다. 구체적으로, 감정이름(`EmotionalType`)의 문자열 길이만큼 `ChatComponent`의 `ChatEmotionDuration` 속성과 `ChatBalloonComponent`의 [original] | `EmotionalType`의 텍스트 길이만큼 `ChatEmotionDuration`과 `ChatBalloonComponent`의 `ShowDuration`을 변경하는 예제입니다. `ChatEvent`를 통해 EmotionalType이 메시지에 포함되었는지 확인합니다. ```lua Event Handler: [self] HandleChatEvent (ChatEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: ChatComponen [chunk_id] | Components:332:1
[task] | diverse_qa [title] | CanvasGroupComponent [category] | Components [rephrased] | 질문: CanvasGroupComponent의 주요 기능은 무엇인가요? 답변: 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. 질문: BlocksRaycasts 속성이 true로 설정되면 어떤 효과가 있나요? 답변: 자식 UI가 화면 터치 또는 마우스 클릭 입력을 받을 수 있게 되며, 뒤에 가려진 UI는 입력을 받지 못합니다. 질문: GroupAlpha 속성에 설정할 수 있는 값의 범위는 어떻게 되나요? 답변: 0 이상, 1 이하의 값을 설정할 수 있습니다. 질문: Interactable 속 [original] | 자식 UI Entity의 공통 속성을 한 곳에서 제어할 수 있는 기능을 제공합니다. # Properties - **boolean BlocksRaycasts** true로 설정할 경우 자식 UI는 화면 터치 또는 마우스 클릭 입력을 받을 수 있습니다. 뒤에 가려진 UI는 입력을 받지 못합니다. - **float GroupAlpha** 자식 UI의 투명도를 설정합니다. 0 이상, 1 이하의 값을 설정할 수 있습니다. - **boolean Interactable** 자식 UI의 상호작용 가능 여부를 설정합니다. false로 [chunk_id] | Components:333:0
[task] | wikipedia [title] | AvatarFaceActionSelectorComponent [category] | Components [rephrased] | # AvatarFaceActionSelectorComponent `AvatarFaceActionSelectorComponent`는 아바타의 얼굴 Action을 선택하여 적용하는 역할을 담당하는 컴포넌트입니다. 이 컴포넌트는 현재 얼굴 Action 상태를 관리하고, 눈 깜빡임 주기를 설정하며, 특정 상태에 대응하는 Action 요소들을 참조할 수 있도록 합니다. ## 속성(Properties) `AvatarFaceActionSelectorComponent`는 다음과 같은 고유 속성을 제공합니다. 첫째, `ActionState` [original] | 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. # Properties - **MapleAvatarFaceActionState ActionState** 현재 Action 상태입니다. - **float BlinkInterval** 눈 깜빡임의 시간 간격으로, 초 단위를 사용합니다. - **ReadOnlyDictionary<MapleAvatarFaceActionState, ReadOnlyList<MapleAvatarActionStateElement>> StateActionDic [ReadOnly] [HideFr [chunk_id] | Components:334:0
[task] | distill [title] | AIChaseComponent [category] | Components [rephrased] | # [Components] AIChaseComponent 플레이어나 다른 엔티티를 추적하는 AI 컴포넌트입니다. `StateComponent`가 없으면 자동으로 추가됩니다. ## Properties ### AIChaseComponent - **float DetectionRange**: 추적 감지 거리. 대상 거리가 이 값보다 멀면 추적 중단, 가까우면 재시작. - **boolean IsChaseNearPlayer**: `true`면 `DetectionRange` 내 가장 가까운 플레이어를 자동 추적. `TargetEntityR [original] | 플레이어나 다른 엔티티를 추적하는 AI입니다. StateComponent가 없다면 자동으로 추가됩니다. # Properties - **float DetectionRange** 추적 감지 거리입니다. 대상의 거리가 이보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. - **boolean IsChaseNearPlayer** 값이 true인 경우 DetectionRange 프로퍼티 값 내에서 가장 가까운 플레이어를 자동으로 추적합니다. TargetEntityRef 프로퍼티 또는 SetTarget(Entity) [chunk_id] | Components:335:0
[task] | extract_knowledge [title] | CustomFootholdComponent [category] | Components [rephrased] | # CustomFootholdComponent ## 1. 개념 설명 `CustomFootholdComponent`는 엔티티에 사용자 정의 발판을 생성하고 그 모양 및 물리 속성을 제어하기 위한 컴포넌트입니다. 이 컴포넌트는 `RigidbodyComponent`를 가진 엔티티가 발판 위에서 어떻게 상호작용하는지(마찰, 힘, 이동 속도 등)를 결정하며, 필요에 따라 런타임 시 발판의 기하학적 구조를 변경할 수 있습니다. ## 2. API 사용법 ### Properties (속성) 발판의 형태와 물리적 특성을 정의하는 속성들입니다. [original] | 사용자 정의 발판을 만드는 기능을 제공합니다. 발판의 모양과 속성을 설정할 수 있습니다 # Properties - **SyncList<List<Vector2>> edgeLists [Sync]** 발판을 나타냅니다. 하나의 발판은 여러 개의 연결점으로 구성됩니다. - **float FootholdDrag [Sync]** RigidbodyComponent가 포함된 엔티티가 발판 위에 있을 때 적용되는 마찰력입니다. 값이 클수록 빠르게 감속합니다. - **float FootholdForce [Sync]** Rigidbody [chunk_id] | Components:331:0
[task] | diverse_qa [title] | ChatComponent [category] | Components [rephrased] | 질문: 이 문서의 예제 코드는 주로 어떤 목적을 위해 작성되었나요? 답변: `EmotionalType`의 텍스트 길이만큼 `ChatEmotionDuration`과 `ChatBalloonComponent`의 `ShowDuration`을 변경하기 위한 예제입니다. 질문: `HandleChatEvent` 핸들러의 실행 공간(Space)은 어디인가요? 답변: 클라이언트(Client) 공간입니다. 질문: `event.Message`, `event.SenderName`, `event.UserId`는 `ChatEvent` 객체에서 어떤 정보 [original] | `EmotionalType`의 텍스트 길이만큼 `ChatEmotionDuration`과 `ChatBalloonComponent`의 `ShowDuration`을 변경하는 예제입니다. `ChatEvent`를 통해 EmotionalType이 메시지에 포함되었는지 확인합니다. ```lua Event Handler: [self] HandleChatEvent (ChatEvent event) { --------------- Native Event Sender Info ---------------- -- Sender: ChatComponen [chunk_id] | Components:332:1
[task] | extract_knowledge [title] | Entity [category] | Misc [rephrased] | # 엔티티 이벤트 (Entity Events) 메이플스토리 월드 스크립트에서 엔티티의 생명주기, 위계 구조 변경, 프로퍼티 적용, 초기화 과정 등에 대한 알림을 수신하기 위해 사용되는 이벤트 목록입니다. ## 1. 개념 설명 엔티티 이벤트는 특정 엔티티에 대해 상태 변화나 구조적 변경이 발생했을 때 해당 엔티티의 스크립트 컴포넌트가 반응할 수 있도록 트리거되는 신호입니다. 주요 범주로는 다음과 같은 것들이 있습니다. * **생명주기 (Lifecycle)**: 엔티티 생성, 초기화, 플레이 시작/종료, 파괴 등. * * [original] | # Events - **ComponentEnabledInHierarchyChangedEvent** 컴포넌트의 EnableInHierarchy가 변경되었을 때 발생하는 이벤트입니다. - **EntityAddChildrenEvent** 엔티티에 자식 엔티티가 추가되었을 때 발생하는 이벤트입니다. - **EntityBeginPlayEvent** 엔티티의 BeginPlay 시점에 발생하는 이벤트입니다. - **EntityChangedParentEvent** 엔티티의 부모 엔티티가 변경되었을 때 발생하는 이벤트입니다. - * [chunk_id] | Misc:320:3
[task] | extract_knowledge [title] | AvatarFaceActionSelectorComponent [category] | Components [rephrased] | # AvatarFaceActionSelectorComponent ## 개념 설명 `AvatarFaceActionSelectorComponent`는 아바타의 얼굴 Action을 선택하여 적용시키는 데 사용되는 컴포넌트입니다. 이 컴포넌트는 아바타의 현재 얼굴 상태(`ActionState`)를 관리하고, 설정된 시간 간격(`BlinkInterval`)에 따라 눈 깜빡임 동작을 처리합니다. ## API 사용법 ### Properties (속성) - **`MapleAvatarFaceActionState ActionState`**: [original] | 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. # Properties - **MapleAvatarFaceActionState ActionState** 현재 Action 상태입니다. - **float BlinkInterval** 눈 깜빡임의 시간 간격으로, 초 단위를 사용합니다. - **ReadOnlyDictionary<MapleAvatarFaceActionState, ReadOnlyList<MapleAvatarActionStateElement>> StateActionDic [ReadOnly] [HideFr [chunk_id] | Components:334:0
[task] | wikipedia [title] | AIChaseComponent [category] | Components [rephrased] | **AIChaseComponent** AIChaseComponent는 플레이어 또는 다른 엔티티를 추적하는 기능을 제공하는 AI 컴포넌트입니다. 해당 컴포넌트가 부착된 엔티티에 StateComponent가 존재하지 않는 경우, 시스템은 이를 자동으로 추가합니다. **속성(Properties)** **DetectionRange** (float) 추적 대상의 감지 거리를 정의합니다. 대상과의 거리가 이 값보다 멀어지면 추적을 중단하고, 다시 가까워지면 추적을 재개합니다. **IsChaseNearPlayer** (boolean) [original] | 플레이어나 다른 엔티티를 추적하는 AI입니다. StateComponent가 없다면 자동으로 추가됩니다. # Properties - **float DetectionRange** 추적 감지 거리입니다. 대상의 거리가 이보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. - **boolean IsChaseNearPlayer** 값이 true인 경우 DetectionRange 프로퍼티 값 내에서 가장 가까운 플레이어를 자동으로 추적합니다. TargetEntityRef 프로퍼티 또는 SetTarget(Entity) [chunk_id] | Components:335:0
[task] | knowledge_list [title] | AIChaseComponent [category] | Components [rephrased] | AIChaseComponent는 플레이어나 다른 엔티티를 추적하는 AI 컴포넌트이며, 해당 엔티티에 StateComponent가 없으면 자동으로 추가됩니다. DetectionRange 프로퍼티는 float 타입이며, 추적 감지 거리를 설정하여 대상이 이 거리보다 멀어지면 추적을 중단하고 가까워지면 다시 추적을 시작하게 합니다. IsChaseNearPlayer 프로퍼티는 boolean 타입이며, true일 경우 DetectionRange 범위 내에서 가장 가까운 플레이어를 자동 추적하지만, TargetEntityRef 프로퍼티나 Se [original] | 플레이어나 다른 엔티티를 추적하는 AI입니다. StateComponent가 없다면 자동으로 추가됩니다. # Properties - **float DetectionRange** 추적 감지 거리입니다. 대상의 거리가 이보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. - **boolean IsChaseNearPlayer** 값이 true인 경우 DetectionRange 프로퍼티 값 내에서 가장 가까운 플레이어를 자동으로 추적합니다. TargetEntityRef 프로퍼티 또는 SetTarget(Entity) [chunk_id] | Components:335:0
[task] | wikipedia [title] | AIChaseComponent [category] | Components [rephrased] | # AIChaseComponent `AIChaseComponent`는 mLua 스크립트 언어에서 엔티티의 추적(AI Chase) 동작을 제어하기 위해 사용되는 컴포넌트입니다. 이 컴포넌트는 `AIComponent`와 `Component`로부터 메서드를 상속받으며, 자체적으로 추적 대상 관리에 필요한 메서드를 제공합니다. ## 자체 메서드 `AIChaseComponent`는 다음과 같은 고유 메서드를 제공합니다. `Entity GetCurrentTarget()` 메서드는 현재 설정된 추적 대상 엔티티를 반환합니다. `void [original] | - **Entity GetCurrentTarget()** 추적 대상 엔티티를 반환합니다. - **void SetTarget(Entity targetEntity)** targetEntity를 추적하도록 설정합니다. 함수 호출 시 IsChaseNearPlayer 프로퍼티는 자동으로 비활성화됩니다 ##### inherited from AIComponent: - **BTNode CreateLeafNode(string nodeName, func<float> -> BehaviourTreeStatus onBehaveFunction)* [chunk_id] | Components:335:1
[task] | diverse_qa [title] | AIChaseComponent [category] | Components [rephrased] | 질문: AIChaseComponent가 없는 엔티티에 추가되었을 때 자동으로 추가되는 컴포넌트는 무엇인가요? 답변: StateComponent가 없다면 자동으로 추가됩니다. 질문: DetectionRange 프로퍼티가 수행하는 역할에 대해 설명하시오. 답변: 추적 감지 거리로, 대상의 거리가 이 값보다 멀어지면 추적을 중단하고 가까워지면 다시 추적을 시작합니다. 질문: IsChaseNearPlayer 프로퍼티의 값이 true일 때, TargetEntityRef 또는 SetTarget(Entity)로 지정한 대상이 있다면 어떤 행 [original] | 플레이어나 다른 엔티티를 추적하는 AI입니다. StateComponent가 없다면 자동으로 추가됩니다. # Properties - **float DetectionRange** 추적 감지 거리입니다. 대상의 거리가 이보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. - **boolean IsChaseNearPlayer** 값이 true인 경우 DetectionRange 프로퍼티 값 내에서 가장 가까운 플레이어를 자동으로 추적합니다. TargetEntityRef 프로퍼티 또는 SetTarget(Entity) [chunk_id] | Components:335:0
[task] | diverse_qa [title] | AvatarFaceActionSelectorComponent [category] | Components [rephrased] | 질문: AvatarFaceActionSelectorComponent는 어떤 역할을 하는 컴포넌트인가요? 답변: 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. 질문: ActionState 프로퍼티의 데이터 타입은 무엇이며, 어떤 의미를 가집니까? 답변: ActionState 프로퍼티의 데이터 타입은 MapleAvatarFaceActionState이며, 현재 Action 상태를 나타냅니다. 질문: BlinkInterval 프로퍼티는 어떤 단위를 사용하며, 어떤 기능을 제어하나요? 답변: BlinkInterval 프로 [original] | 아바타의 얼굴 Action을 선택해 적용시키는 컴포넌트입니다. # Properties - **MapleAvatarFaceActionState ActionState** 현재 Action 상태입니다. - **float BlinkInterval** 눈 깜빡임의 시간 간격으로, 초 단위를 사용합니다. - **ReadOnlyDictionary<MapleAvatarFaceActionState, ReadOnlyList<MapleAvatarActionStateElement>> StateActionDic [ReadOnly] [HideFr [chunk_id] | Components:334:0
[task] | distill [title] | AIChaseComponent [category] | Components [rephrased] | # AIChaseComponent 추적을 위한 AI 컴포넌트입니다. `AIComponent`에서 행동 트리(BT) 관련 메서드를 상속받습니다. ## Methods ### AIChaseComponent - **`Entity GetCurrentTarget()`** 현재 추적 대상 엔티티를 반환합니다. - **`void SetTarget(Entity targetEntity)`** `targetEntity`를 추적 대상으로 설정합니다. - **주의**: 호출 시 `IsChaseNearPlayer` 프로퍼티가 자동으로 비활성 [original] | - **Entity GetCurrentTarget()** 추적 대상 엔티티를 반환합니다. - **void SetTarget(Entity targetEntity)** targetEntity를 추적하도록 설정합니다. 함수 호출 시 IsChaseNearPlayer 프로퍼티는 자동으로 비활성화됩니다 ##### inherited from AIComponent: - **BTNode CreateLeafNode(string nodeName, func<float> -> BehaviourTreeStatus onBehaveFunction)* [chunk_id] | Components:335:1
[task] | knowledge_list [title] | AIChaseComponent [category] | Components [rephrased] | 제공된 문서에 명시된 정보만을 바탕으로 AIChaseComponent 및 상위 컴포넌트(AIComponent, Component)의 핵심 사실을 정리하면 다음과 같습니다. 1. `GetCurrentTarget()` 메서드는 현재 추적 대상 엔티티를 반환하며, 반환 타입은 `Entity`입니다. 2. `SetTarget(Entity targetEntity)` 메서드는 주어진 `targetEntity`를 추적 대상으로 설정하며, 이 함수 호출 시 `IsChaseNearPlayer` 프로퍼티는 자동으로 비활성화됩니다. 3. `Creat [original] | - **Entity GetCurrentTarget()** 추적 대상 엔티티를 반환합니다. - **void SetTarget(Entity targetEntity)** targetEntity를 추적하도록 설정합니다. 함수 호출 시 IsChaseNearPlayer 프로퍼티는 자동으로 비활성화됩니다 ##### inherited from AIComponent: - **BTNode CreateLeafNode(string nodeName, func<float> -> BehaviourTreeStatus onBehaveFunction)* [chunk_id] | Components:335:1
[task] | extract_knowledge [title] | Entity [category] | Misc [rephrased] | # Entity 컴포넌트 및 관계 관리 `Entity` 객체는 게임 세계에서 존재하는 개체이며, 컴포넌트를 통해 기능을 확장하고 다른 엔티티와의 위계 관계를 관리합니다. 본 절에서는 엔티티에 컴포넌트를 추가하거나 제거하고, 부모-자식 관계를 설정하거나 해제하며, 특정 조건에 맞는 자식 엔티티나 컴포넌트를 검색하는 API를 다룹니다. ## 1. 컴포넌트 관리 엔티티는 컴포넌트를 추가하여 새로운 기능을 부여받거나, 기존 컴포넌트를 제거하여 기능을 축소할 수 있습니다. 컴포넌트 추가와 제거는 `ControlOnly` 제약이 있어 컨 [original] | - **Component AddComponent(string typename) [ControlOnly]** typename에 해당하는 컴포넌트를 추가합니다. - **Component AddComponent(Type componentType) [ControlOnly]** componentType에 해당하는 컴포넌트를 추가합니다. - **void AttachChild(Entity child)** child를 이 엔티티의 자식으로 편입시킵니다. - **boolean AttachTo(Entity parent) [ControlOn [chunk_id] | Misc:320:1
[task] | distill [title] | FootholdComponent [category] | Components [rephrased] | # FootholdComponent 맵의 발판을 관리하며 `RigidbodyComponent`와 상호작용합니다. ## Properties **inherited from Component:** - `boolean Enable [Sync]`: 컴포넌트 활성화 여부. - `boolean EnableInHierarchy [ReadOnly] [HideFromInspector]`: 계층 구조상 활성화 여부. `Enable`이 `true`라도 소유 엔티티의 `Enable`이 `false`면 `false` 반환. - `Entity Entit [original] | 맵의 모든 발판을 관리합니다. 발판은 RigidbodyComponent와 상호작용합니다. # Properties ##### inherited from Component: - **boolean Enable [Sync]** 컴포넌트 활성화 여부를 확인합니다. - **boolean EnableInHierarchy [ReadOnly] [HideFromInspector]** 계층 구조상에서 이 컴포넌트가 Enable 상태인지를 반환합니다. Enable이 true일지라도 엔티티의 Enable이 false라면 false를 반환합니다 [chunk_id] | Components:336:0
[task] | distill [title] | AIChaseComponent [category] | Components [rephrased] | # AIChaseComponent 자신을 공격한 대상만 추적하도록 설정하는 예제입니다. `Chase` 몬스터에 해당 컴포넌트를 추가하여 사용하십시오. ## 핵심 API * `self.Entity.AIChaseComponent` : AIChaseComponent 인스턴스 접근 * `IsChaseNearPlayer` (boolean) : 가까운 플레이어를 무작정 추적할지 여부 * `GetCurrentTarget()` : 현재 추적 대상 Entity 반환 * `SetTarget(Entity)` : 특정 Entity를 추 [original] | 몬스터가 가까이 있는 적을 무작정 따라가지 않고, 자신을 공격한 대상을 추적하는 예제입니다. Chase 몬스터에 예제 코드를 작성한 컴포넌트를 추가해 사용할 수 있습니다. ```lua Method: [server only] void OnBeginPlay () { local aiChaseComponent = self.Entity.AIChaseComponent if aiChaseComponent == nil then return end aiChaseComponent.IsChaseNearPlayer = false [chunk_id] | Components:335:2
[task] | diverse_qa [title] | AIChaseComponent [category] | Components [rephrased] | 질문: `AIChaseComponent`의 `GetCurrentTarget()` 메서드는 어떤 데이터를 반환합니까? 답변: 추적 대상 엔티티(Entity)를 반환합니다. 질문: `SetTarget(Entity targetEntity)` 메서드를 호출하면 어떤 부수 효과가 발생합니까? 답변: `IsChaseNearPlayer` 프로퍼티가 자동으로 비활성화됩니다. 질문: `AIComponent`에서 상속된 `CreateLeafNode` 메서드의 `onBehaveFunction` 매개 변수는 무엇을 의미합니까? 답변: 노드가 실행될 [original] | - **Entity GetCurrentTarget()** 추적 대상 엔티티를 반환합니다. - **void SetTarget(Entity targetEntity)** targetEntity를 추적하도록 설정합니다. 함수 호출 시 IsChaseNearPlayer 프로퍼티는 자동으로 비활성화됩니다 ##### inherited from AIComponent: - **BTNode CreateLeafNode(string nodeName, func<float> -> BehaviourTreeStatus onBehaveFunction)* [chunk_id] | Components:335:1
[task] | extract_knowledge [title] | AIChaseComponent [category] | Components [rephrased] | # AIChaseComponent `AIChaseComponent`는 플레이어 또는 다른 엔티티를 추적하는 AI 컴포넌트입니다. 해당 엔티티에 `StateComponent`가 없을 경우 자동으로 추가됩니다. ## 개념 설명 이 컴포넌트는 지정된 거리(`DetectionRange`) 내에서 목표를 감지하여 추적을 시작하거나 중단하는 로직을 수행합니다. * **감지 거리 기반 제어**: 대상과의 거리가 `DetectionRange`보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. * **자동 플레이어 추적 [original] | 플레이어나 다른 엔티티를 추적하는 AI입니다. StateComponent가 없다면 자동으로 추가됩니다. # Properties - **float DetectionRange** 추적 감지 거리입니다. 대상의 거리가 이보다 멀어지면 추적을 중단하고, 가까워지면 다시 추적을 시작합니다. - **boolean IsChaseNearPlayer** 값이 true인 경우 DetectionRange 프로퍼티 값 내에서 가장 가까운 플레이어를 자동으로 추적합니다. TargetEntityRef 프로퍼티 또는 SetTarget(Entity) [chunk_id] | Components:335:0