[task] | wikipedia [title] | 아바타를 UI에서 표현하기 [category] | Guides [rephrased] | # 감정 표현 변경 이 섹션에서는 버튼을 누를 때마다 UI에 표시되는 아바타의 감정 표현이 랜덤하게 변경되는 기능을 구현하는 방법을 설명합니다. 이 기능은 기존에 설정된 UI 아바타 조작 스크립트에 새로운 메서드를 추가하고, 버튼 클릭 이벤트를 확장하여 처리하는 방식으로 작동합니다. 구현을 위해 먼저 UI 객체 설정을 변경해야 합니다. 기존에 존재하는 `SetColorBtn` 버튼의 콘텍스트 메뉴에서 **Duplicate** 옵션을 선택하여 버튼을 복제합니다. 복제한 버튼의 위치를 적절히 조정하고, 이름을 `SetEmotionB [original] | #### 감정 표현 변경 버튼을 누르면 UI에 보이는 아바타 감정 표현이 랜덤하게 변경되는 예제입니다. 1. **SetColorBtn** 버튼의 콘텍스트 메뉴에서 **Duplicate**를 클릭해 복제합니다. 2. 버튼의 위치를 적당히 옮기고 이름을 **SetEmotionBtn**으로 변경합니다. 3. **SetEmotionBtn - TextComponent - Text** 프로퍼티에 **SetEmotion**을 입력합니다. 4. **ChangeUIAvatar** 스크립트 컴포넌트에 `SetEmotio [chunk_id] | Guides:953:4
[task] | knowledge_list [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | * `GetTextFormat()` 함수는 `LocalizationTable`의 **Key**를 인수로 받아 해당 텍스트를 조회하고, 추가로 전달받은 포맷 인수(format argument)가 존재하면 이를 텍스트의 `{0}` 등 포맷 자리표시자에 채워 넣은 결과를 반환한다. * NPC 엔티티의 이름을 `Stan`과 `Rina`로 설정하고, 각 엔티티에 `TriggerComponent`를 추가하여 플레이어와의 충돌(만남) 이벤트를 감지하도록 구성한다. * UI 에디터의 **ui - DefaultGroup**에 텍스트 엔티 [original] | `GetTextFormat()` 함수는 **LocalizationTable**에서 **Key**를 인수로 받습니다. 이 **Key**에 해당하는 텍스트를 찾고, 추가로 전달 받은 포맷 인수(format argument)가 있다면 그것을 형식에 맞게 채워 넣은 결과를 반환합니다. 예를 들어 아래와 같이 NPC 2명이 서 있고, 플레이어 캐릭터가 각 NPC와 만나면(충돌하면) 주황색 텍스트 상자에 **"안녕, NPCName!"**라는 문장을 출력해봅시다. 1. 맵에 NPC 2명을 배치하고 각 NPC 엔티티의 이름을 아래와 같이 수 [chunk_id] | Guides:968:1
[task] | distill [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | ## SmartFormat 번역 테이블 없이 `GetTextFormat()`의 포맷 기능만 사용할 때 `SmartFormat()`을 사용합니다. **인수**: `LocalizationTable`의 Key 대신 **출력할 문자열**을 직접 전달합니다. ```lua [client only][self] HandleTriggerEnterEvent(TriggerEnterEvent event) { local npcName = event.TriggerBodyEntity.NameTagComponent.Name local text [original] | ## SmartFormat `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`에서는 인수로 **LocalizationTable**의 **Key** 대신 출력할 문자열을 직접 받습니다. `SmartFormat()`를 사용해 위의 예제를 구현하면 아래와 같습니다. ```lua [client only][self] Handle [chunk_id] | Guides:968:3
[task] | distill [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # LocalizationService 포맷 API `LocalizationService`는 텍스트 변환 서식을 설정하는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** ## Argument Hole 형식 및 Formatter 포맷 내 **Argument hole**은 `{index}` 또는 `{index:formatterName:formatterArgument}` 형식을 따 [original] | 위에서 살펴본 것처럼 **LocalizationService**에서는 텍스트의 변환 서식을 설정할 수 있는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** 포맷에 포함되어 있는 **Argument hole**에는 단순한 단어가 들어갈 수도 있지만 특정 규칙에 맞춰 변환된 문자가 들어갈 수도 있습니다. 예를 들면 한국어 조사나 단수 복수 처리가 이에 해당합니다. **Argument hol [chunk_id] | Guides:968:4
[task] | wikipedia [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # 로컬라이징 포맷에 맞게 로컬라이징하기 `LocalizationService`는 텍스트 변환 서식을 설정하기 위해 `GetTextFormat(string key, any... args)`와 `SmartFormat(string format, any... args)`라는 두 가지 API를 제공합니다. 포맷 내에 포함된 **Argument hole**에는 단순한 단어가 삽입될 수도 있으며, 특정 규칙에 따라 변환된 문자열이 삽입될 수도 있습니다. 한국어 조사 처리나 단수·복수 처리 등이 이러한 변환의 예시입니다. **Argument [original] | 위에서 살펴본 것처럼 **LocalizationService**에서는 텍스트의 변환 서식을 설정할 수 있는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** 포맷에 포함되어 있는 **Argument hole**에는 단순한 단어가 들어갈 수도 있지만 특정 규칙에 맞춰 변환된 문자가 들어갈 수도 있습니다. 예를 들면 한국어 조사나 단수 복수 처리가 이에 해당합니다. **Argument hol [chunk_id] | Guides:968:4
[task] | diverse_qa [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 질문: 문서에 제시된 이벤트 핸들러의 실행 공간은 무엇으로 설정해야 하나요? 답변: 실행 공간은 **client only**로 설정해야 합니다. 질문: 아래 코드의 `HandleTriggerEnterEvent`에서 `TriggerBodyEntity` 변수는 어떤 값에서 가져오나요? ```lua local TriggerBodyEntity = event.TriggerBodyEntity ``` 답변: `event` 객체의 `TriggerBodyEntity` 프로퍼티에서 값을 가져옵니다. 질문: `npcName` 변수에 저장되는 값은 [original] | 8. 이벤트 핸들러에 **TriggerEnterEvent**를 추가합니다. 실행 공간은 **client only**로 설정합니다. 그리고 아래와 같이 내용을 작성합니다. ```lua [client only][self] HandleTriggerEnterEvent(TriggerEnterEvent event) { -- Parameters local TriggerBodyEntity = event.TriggerBodyEntity ------------------- [chunk_id] | Guides:968:2
[task] | extract_knowledge [title] | 아바타를 UI에서 표현하기 [category] | Guides [rephrased] | # UI 아바타 의상 동적 변경 ## 1. 개념 설명 메이플스토리 월드(mLua)에서 플레이어 캐릭터의 실제 의상과 UI(사용자 인터페이스)에 표시되는 아바타의 의상은 서로 다른 엔티티의 `CostumeManagerComponent`를 통해 관리됩니다. 특정 트리거 오브젝트에 진입했을 때, 서버 측에서는 실제 플레이어 캐릭터의 장비가 변경되고, 클라이언트 측에서는 UI에 배치된 아바타 엔티티의 장비가 변경되어야 두 화면의 상태가 동기화됩니다. ## 2. API 사용법 본 절에서 사용하는 주요 컴포넌트와 프로퍼티는 다음과 같습니다 [original] | 특정 오브젝트에 부딪히면 캐릭터의 옷이 바뀌고, UI에 보이는 아바타 옷도 바뀌는 예제를 살펴보겠습니다. 1. **Preset List**에서 아무 오브젝트나 배치한 뒤, **SpriteRUID**에 아래의 값을 입력합니다. 그리고 오브젝트의 이름을 **Pinkbean**으로 변경합니다. * **SpriteRUID** : **5a81ed24c1354d08b38f8db4b497b607** 2. **BaseEnvironment - NativeScripts - Component - TriggerComponent [chunk_id] | Guides:953:1
[task] | knowledge_list [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 1. `SmartFormat()` 함수는 `GetText()`나 `GetTextFormat()`와 달리 번역 테이블을 필요로 하지 않으며, `GetTextFormat()`의 포맷 기능만 독립적으로 사용하고자 할 때 활용됩니다. 2. `SmartFormat()` 함수의 첫 번째 인수는 **LocalizationTable**의 **Key** 대신 실제 출력하고자 하는 문자열 포맷을 직접 전달하도록 설계되어 있습니다. 3. `SmartFormat()` 함수는 `_LocalizationService` 서비스를 통해 호출되며, 예시 코드에서 [original] | ## SmartFormat `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`에서는 인수로 **LocalizationTable**의 **Key** 대신 출력할 문자열을 직접 받습니다. `SmartFormat()`를 사용해 위의 예제를 구현하면 아래와 같습니다. ```lua [client only][self] Handle [chunk_id] | Guides:968:3
[task] | knowledge_list [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | * `LocalizationService`의 `GetTextFormat(string key, any... args)` API는 특정 키를 기반으로 텍스트 변환 서식을 설정하며, 인수로 문자열 키와 가변 인자 목록을 받아 처리합니다. * `LocalizationService`의 `SmartFormat(string format, any... args)` API는 직접적인 포맷 문자열을 기반으로 텍스트 변환 서식을 설정하며, 인수로 포맷 문자열과 가변 인자 목록을 받아 처리합니다. * Argument hole의 기본 형식은 ` [original] | 위에서 살펴본 것처럼 **LocalizationService**에서는 텍스트의 변환 서식을 설정할 수 있는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** 포맷에 포함되어 있는 **Argument hole**에는 단순한 단어가 들어갈 수도 있지만 특정 규칙에 맞춰 변환된 문자가 들어갈 수도 있습니다. 예를 들면 한국어 조사나 단수 복수 처리가 이에 해당합니다. **Argument hol [chunk_id] | Guides:968:4
[task] | wikipedia [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | **로컬라이징 포맷에 맞게 로컬라이징하기** mLua 스크립트에서는 `GetText()` 또는 `GetTextFormat()` 메서드를 사용할 때 번역 테이블(Localization Table)이 필수적입니다. 만약 번역 테이블 없이 `GetTextFormat()`의 포맷팅 기능만 활용하고자 한다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`은 번역 테이블의 **Key** 대신 출력할 원본 문자열을 직접 인수로 받아 처리합니다. `SmartFormat()`을 사용하여 특정 NPC의 이름을 포함하여 [original] | ## SmartFormat `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`에서는 인수로 **LocalizationTable**의 **Key** 대신 출력할 문자열을 직접 받습니다. `SmartFormat()`를 사용해 위의 예제를 구현하면 아래와 같습니다. ```lua [client only][self] Handle [chunk_id] | Guides:968:3
[task] | diverse_qa [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 질문: LocalizationService에서 텍스트 변환 서식을 설정할 수 있는 두 가지 API는 무엇인가요? 답변: GetTextFormat(string key, any... args)와 SmartFormat(string format, any... args)입니다. 질문: Argument hole의 형식에서 대괄호([])안의 내용은 어떤 성격을 가지나요? 답변: 대괄호([])안의 내용은 선택적 요소들입니다. 질문: {0}과 같은 형식의 Argument hole은 어떤 요소를 포함할 수 있나요? 답변: 단순히 인덱스만 넣을 수 [original] | 위에서 살펴본 것처럼 **LocalizationService**에서는 텍스트의 변환 서식을 설정할 수 있는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** 포맷에 포함되어 있는 **Argument hole**에는 단순한 단어가 들어갈 수도 있지만 특정 규칙에 맞춰 변환된 문자가 들어갈 수도 있습니다. 예를 들면 한국어 조사나 단수 복수 처리가 이에 해당합니다. **Argument hol [chunk_id] | Guides:968:4
[task] | extract_knowledge [title] | 아바타를 UI에서 표현하기 [category] | Guides [rephrased] | # UI 아바타 파츠 색상 변경 ## 개념 설명 메이플스토리 월드의 UI에서 아바타를 표현할 때, `AvatarGUIRendererComponent`를 사용하여 특정 아바타 파츠(의상, 액세서리 등)의 색상을 지정할 수 있습니다. 이 기능은 `_UtilLogic` 서비스를 통해 생성된 랜덤한 RGB(A) 색상 값을 적용하여 UI 상의 아바타 외관을 동적으로 변경하는 데 사용됩니다. ## API 사용법 ### `MapleAvatarItemCategory` 아바타 파츠의 종류를 나타내는 상수 테이블입니다. `SetAvatarPar [original] | 버튼을 누르면 UI에 보이는 아바타 파츠 색상 값이 랜덤하게 변경되는 예제입니다. 1. **SetColorBtn** 버튼의 콘텍스트 메뉴에서 **Duplicate**를 클릭해 복제합니다. 2. 버튼의 위치를 적당히 옮기고 이름을 **SetPartColorBtn**으로 변경합니다. 3. **SetPartColorBtn - TextComponent - Text** 프로퍼티에 **SetPartColor**를 입력합니다. 4. **ChangeUIAvatar** 스크립트 컴포넌트에 `SetPartColor()` [chunk_id] | Guides:953:3
[task] | diverse_qa [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 질문: `GetTextFormat()` 함수는 어떤 인수를 받아 어떤 처리를 수행합니까? 답변: `GetTextFormat()` 함수는 LocalizationTable의 Key를 인수로 받아 해당 Key에 해당하는 텍스트를 찾고, 추가로 전달받은 포맷 인수(format argument)가 있다면 그것을 형식에 맞게 채워 넣은 결과를 반환합니다. 질문: 문서의 예제에서 NPC 엔티티의 이름은 무엇으로 설정해야 합니까? 답변: NPC 2명의 엔티티 이름은 각각 Stan과 Rina로 설정해야 합니다. 질문: NPC Stan과 Rina [original] | `GetTextFormat()` 함수는 **LocalizationTable**에서 **Key**를 인수로 받습니다. 이 **Key**에 해당하는 텍스트를 찾고, 추가로 전달 받은 포맷 인수(format argument)가 있다면 그것을 형식에 맞게 채워 넣은 결과를 반환합니다. 예를 들어 아래와 같이 NPC 2명이 서 있고, 플레이어 캐릭터가 각 NPC와 만나면(충돌하면) 주황색 텍스트 상자에 **"안녕, NPCName!"**라는 문장을 출력해봅시다. 1. 맵에 NPC 2명을 배치하고 각 NPC 엔티티의 이름을 아래와 같이 수 [chunk_id] | Guides:968:1
[task] | diverse_qa [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 질문: `GetText()`나 `GetTextFormat()` 함수를 사용할 때 필수적으로 필요한 요소는 무엇인가요? 답변: `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 질문: 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶을 때 사용하는 함수는 무엇인가요? 답변: `SmartFormat()` 함수를 사용합니다. 질문: `SmartFormat()` 함수는 `LocalizationTable`의 어떤 값 대신 인수를 받나요? 답변: `SmartF [original] | ## SmartFormat `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`에서는 인수로 **LocalizationTable**의 **Key** 대신 출력할 문자열을 직접 받습니다. `SmartFormat()`를 사용해 위의 예제를 구현하면 아래와 같습니다. ```lua [client only][self] Handle [chunk_id] | Guides:968:3
[task] | distill [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # 로컬라이징 포맷 (hpp, plural) ## hpp (한글 조사 처리) 한국어는 체언의 받침(종성) 유무에 따라 조사 형태가 달라집니다. `hpp` 포맷을 사용하여 동적으로 올바른 조사를 적용합니다. | 종성 유무 | 적용 조사 예시 | | :---: | :--- | | 종성 **있을** 때 | 은, 이, 을, 과, 아, 이여, 이랑, 으로 | | 종성 **없을** 때 | 는, 가, 를, 와, 야, 여, 랑, 로 | **문법:** `{인덱스:hpp:종성있을때|종성없을때}` **LocalizationTable 예시:** [original] | 한국어에서 조사는 체언(명사, 대명사, 수사) 뒤에 붙어 문법의 의미를 더하는 품사입니다. 체언의 받침 유무에 따라 뒤에 붙는 조사가 달라집니다. 예를 들어, **"나는 [ ]을/를 만납니다."** 라는 문장이 있다면 빈칸 [ ]에 들어갈 단어의 마지막 글자 종성 유무에 따라 조사 **'을'** 또는 **'를'**이 연결됩니다. | 빈칸에 들어갈 단어 | 조사 | 완성된 문장 | | :---: | :---: | :---: | | 스탄 | 을 | 나는 스탄을 만납니다. | | 리나 | 를 | 나는 리나를 만납니다. | 이러한 [chunk_id] | Guides:968:5
[task] | wikipedia [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # 로컬라이징 포맷에 맞게 로컬라이징하기 `GetTextFormat()` 함수는 **LocalizationTable**의 **Key** 값을 인수로 받아 해당 키에 매핑된 텍스트를 조회합니다. 이 함수는 조회된 텍스트 내에서 플레이홀더(예: `{0}`)를 발견하면, 추가로 전달받은 포맷 인수(format argument)의 값을 해당 위치에 치환하여 최종 문자열을 반환합니다. 이 기능을 활용하여 동적인 텍스트를 지역화하는 방법을 다음 예시를 통해 설명합니다. ## 예시: NPC 이름 기반 인사말 출력 맵에 배치된 두 NPC(S [original] | `GetTextFormat()` 함수는 **LocalizationTable**에서 **Key**를 인수로 받습니다. 이 **Key**에 해당하는 텍스트를 찾고, 추가로 전달 받은 포맷 인수(format argument)가 있다면 그것을 형식에 맞게 채워 넣은 결과를 반환합니다. 예를 들어 아래와 같이 NPC 2명이 서 있고, 플레이어 캐릭터가 각 NPC와 만나면(충돌하면) 주황색 텍스트 상자에 **"안녕, NPCName!"**라는 문장을 출력해봅시다. 1. 맵에 NPC 2명을 배치하고 각 NPC 엔티티의 이름을 아래와 같이 수 [chunk_id] | Guides:968:1
[task] | extract_knowledge [title] | 아바타를 UI에서 표현하기 [category] | Guides [rephrased] | # UI 아바타 감정 표현 변경 ## 개념 설명 메이플스토리 월드에서 UI에 배치된 아바타는 `AvatarGUIRendererComponent`를 통해 제어됩니다. 이 컴포넌트는 `PlayEmotion` 메서드를 제공하여 특정 감정 표현을 재생할 수 있게 합니다. 감정 종류는 `EmotionalType` 열거형(enum)으로 정의되며, UI 버튼 클릭 이벤트를 트리거로 하여 랜덤하거나 특정 감정을 적용할 수 있습니다. ## API 사용법 ### 1. `AvatarGUIRendererComponent:PlayEmotion(emo [original] | #### 감정 표현 변경 버튼을 누르면 UI에 보이는 아바타 감정 표현이 랜덤하게 변경되는 예제입니다. 1. **SetColorBtn** 버튼의 콘텍스트 메뉴에서 **Duplicate**를 클릭해 복제합니다. 2. 버튼의 위치를 적당히 옮기고 이름을 **SetEmotionBtn**으로 변경합니다. 3. **SetEmotionBtn - TextComponent - Text** 프로퍼티에 **SetEmotion**을 입력합니다. 4. **ChangeUIAvatar** 스크립트 컴포넌트에 `SetEmotio [chunk_id] | Guides:953:4
[task] | extract_knowledge [title] | 메이플스토리 월드에서 수익 출금하기 [category] | Guides [rephrased] | 제시된 문서는 mLua 스크립트 언어 및 API에 대한 기술적 내용이 포함되어 있지 않습니다. 해당 문서는 '메이플스토리 월드' 플랫폼의 **유료화 수익 출금 절차 및 크리에이터 정보 등록 가이드**에 관한 행정/정책 문서입니다. 따라서 요청하신 "mLua 스크립트 규칙" 및 "프로그래밍 교과서 형식(개념 설명 → API 사용법 → 예제 → 주의사항)"으로 재작성하는 것이 불가능합니다. mLua 코드 블록이나 API 명세가 원문에 존재하지 않으므로, 지어내지 않는 원칙에 따라 해당 형식의 출력을 생성할 수 없습니다. 원문이 다루 [original] | 출금 신청 페이지 또는 계정 프로필 페이지를 통해 출금을 위한 크리에이터 정보 수정 페이지에 진입할 수 있습니다. | 출금 신청 페이지를 통한 진입 | 계정 프로필 페이지를 통한 진입 | | --- | --- | | ![[object Object]](https://mod-file.dn.nexoncdn.co.kr/bbs/17454596149448215ae7b0cd2465b869e7519a088470c.png "path1")| ![[object Object]](https://mod-file.dn.nexoncdn.co.kr/bbs/ [chunk_id] | Guides:970:1
[task] | distill [title] | 메이플스토리 월드에서 수익 출금하기 [category] | Guides [rephrased] | # 유료화: 수익 출금 가이드 메이플스토리 월드에서 **아바타 상품** 및 **월드 상품**(월드 아이템, 이용권) 판매로 획득한 수익은 아래 조건 충족 시 현금으로 출금 가능합니다. ## 출금 조건 | 항목 | 상세 내용 | | :--- | :--- | | **계정 조건** | 만 18세 이상 본인인증 완료 계정 | | **최소 지급 요청액** | - 최소 **100 USD** ~ 최대 10,000 USD<br>- '지급 예정(수익 대기)' 상태가 '수익'으로 전환된 금액만 인정<br>- 원화(KRW 등) 신청 시 Tipal [original] | # 학습 과정 소개 메이플스토리 월드에서는 유료로 판매한 CGC 상품을 통해 수익을 획득할 수 있으며, 획득한 수익은 일정 조건 충족 및 절차를 거쳐 현금으로 출금할 수 있습니다. **✓ 메이플스토리 월드 내 수익 창출 방법** 1. **아바타 상품 판매 수익** - ‘아바타 상점’에 등록된 상품을 이용자가 구매할 수 있습니다. 2. **월드 상품 판매 수익** - 월드 내에서 판매 중인 월드 상품(월드 아이템, 이용권)을 이용자가 구매할 수 있습니다. # 내 수익 출금 조건 메이플스토리 월드에서 수익을 현금으 [chunk_id] | Guides:970:0
[task] | extract_knowledge [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # 로컬라이징 서비스 사용법 ## 1. 개념 설명 메이플스토리 월드 스크립트(mLua)에서 텍스트를 다국어(로컬라이징)로 처리하기 위해 `_LocalizationService`를 사용합니다. 이 서비스는 키(key)를 기반으로 클라이언트의 현재 언어 설정에 맞는 텍스트를 반환합니다. 이를 통해 스크립트 내에서 하드코딩된 문자열 대신 로컬라이징 포맷에 맞는 키를 참조하여 UI 텍스트를 동적으로 설정할 수 있습니다. ## 2. API 사용법 로컬라이징된 텍스트를 가져오는 데에는 `_LocalizationService:GetTextF [original] | 8. 이벤트 핸들러에 **TriggerEnterEvent**를 추가합니다. 실행 공간은 **client only**로 설정합니다. 그리고 아래와 같이 내용을 작성합니다. ```lua [client only][self] HandleTriggerEnterEvent(TriggerEnterEvent event) { -- Parameters local TriggerBodyEntity = event.TriggerBodyEntity ------------------- [chunk_id] | Guides:968:2
[task] | knowledge_list [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | * `_LocalizationService:SmartFormat` 메서드는 포맷 문자열과 가변 인자를 받아 로컬라이징된 문자열을 반환하며, `formatterName`에 띄어쓰기가 포함되거나 오탈자가 있는 경우 변환이 실패하여 원문 문자열 그대로를 출력한다. * `_LocalizationService:SmartFormat` 메서드의 `formatterName`이 정의된 이름과 일치하지 않는 경우(예: `hpp`를 `hp`로 잘못 작성)에는 포맷 변환이 수행되지 않고 원문 문자열이 그대로 출력된다. * `_Localizat [original] | 다음과 같이 포맷이 올바르지 않을 때는 원문 그대로 출력합니다. ##### formatterName이 틀린 경우 **formatterName**에 띄어쓰기가 포함되었거나, 오탈자가 있다면 원문이 그대로 출력됩니다. ```lua -- 1) 언어 설정 영어 : formatter name에 띄어쓰기가 포함된 경우 log(_LocalizationService:SmartFormat("I have {0: plural:an apple|{} apples}.", 2)) ``` ```lua -- 2) formatter name 자체가 틀린 경우 [chunk_id] | Guides:968:6
[task] | extract_knowledge [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # 로컬라이징 포맷 적용: GetTextFormat ## 개념 설명 `GetTextFormat()` 함수는 로컬라이징 테이블(`LocalizationTable`)의 특정 키(Key)에 해당하는 텍스트를 검색하고, 전달된 포맷 인수를 해당 텍스트의 플레이스홀더(예: `{0}`)에 치환하여 최종 문자열을 반환하는 함수입니다. 이 함수는 정적인 텍스트(`GetText`)와 달리 동적인 값(예: 캐릭터 이름)을 텍스트에 삽입해야 하는 경우에 사용됩니다. ## API 사용법 ### 1. LocalizationTable 구성 로컬라이징을 [original] | `GetTextFormat()` 함수는 **LocalizationTable**에서 **Key**를 인수로 받습니다. 이 **Key**에 해당하는 텍스트를 찾고, 추가로 전달 받은 포맷 인수(format argument)가 있다면 그것을 형식에 맞게 채워 넣은 결과를 반환합니다. 예를 들어 아래와 같이 NPC 2명이 서 있고, 플레이어 캐릭터가 각 NPC와 만나면(충돌하면) 주황색 텍스트 상자에 **"안녕, NPCName!"**라는 문장을 출력해봅시다. 1. 맵에 NPC 2명을 배치하고 각 NPC 엔티티의 이름을 아래와 같이 수 [chunk_id] | Guides:968:1
[task] | knowledge_list [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 1. `hpp` 포맷은 한국어에서 체언(명사, 대명사, 수사) 뒤에 붙는 조사의 선택을 자동화하며, 앞선 체언의 마지막 글자 종성(받침) 유무에 따라 '을/를', '은/는' 등 적절한 조사 형태를 선택하여 적용합니다. 2. `hpp` 포맷의 기본 문법은 `{0:hpp:종성있을때조사\|종성없을때조사}` 형식으로, 파이프(`|`) 기준으로 앞쪽 문자열은 앞 체언에 종성이 있을 때, 뒤쪽 문자열은 종성이 없을 때 적용되는 조사입니다. 3. `hpp` 포맷에서 앞 체언에 종성이 있을 경우 적용되는 기본 조사 매핑은 '은, 이, 을, 과, [original] | 한국어에서 조사는 체언(명사, 대명사, 수사) 뒤에 붙어 문법의 의미를 더하는 품사입니다. 체언의 받침 유무에 따라 뒤에 붙는 조사가 달라집니다. 예를 들어, **"나는 [ ]을/를 만납니다."** 라는 문장이 있다면 빈칸 [ ]에 들어갈 단어의 마지막 글자 종성 유무에 따라 조사 **'을'** 또는 **'를'**이 연결됩니다. | 빈칸에 들어갈 단어 | 조사 | 완성된 문장 | | :---: | :---: | :---: | | 스탄 | 을 | 나는 스탄을 만납니다. | | 리나 | 를 | 나는 리나를 만납니다. | 이러한 [chunk_id] | Guides:968:5
[task] | extract_knowledge [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # LocalizationService 포맷 처리 `LocalizationService`는 텍스트 변환 시 사용자의 언어 환경에 맞는 문법 처리(조사, 단수/복수 등)를 수행하기 위해 두 가지 API를 제공합니다. * `GetTextFormat(string key, any... args)`: 키 기반의 로컬라이즈 텍스트를 인자와 함께 포맷팅합니다. * `SmartFormat(string format, any... args)`: 직접적인 포맷 문자열과 인자를 받아 포맷팅합니다. 포맷 문자열 내의 **Argument hol [original] | 위에서 살펴본 것처럼 **LocalizationService**에서는 텍스트의 변환 서식을 설정할 수 있는 두 가지 API를 제공합니다. * **GetTextFormat(string key, any... args)** * **SmartFormat(string format, any... args)** 포맷에 포함되어 있는 **Argument hole**에는 단순한 단어가 들어갈 수도 있지만 특정 규칙에 맞춰 변환된 문자가 들어갈 수도 있습니다. 예를 들면 한국어 조사나 단수 복수 처리가 이에 해당합니다. **Argument hol [chunk_id] | Guides:968:4
[task] | distill [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | ### 로컬라이징 포맷 오류 및 처리 규칙 `_LocalizationService:SmartFormat` 호출 시 포맷 오류가 발생하면 변환된 문자열이 아닌 **원문 그대로 출력**됩니다. #### 1. `formatterName` 오류 `formatterName`에 띄어쓰기가 있거나 오타가 있으면 원문 출력됩니다. ```lua -- 오류: 'hpp' 오타 (정답: hpp) log(_LocalizationService:SmartFormat("나는 {0}{0:hp:을|를} 만났다.", "스탄")) -- 결과: 원문 출력 -- [original] | 다음과 같이 포맷이 올바르지 않을 때는 원문 그대로 출력합니다. ##### formatterName이 틀린 경우 **formatterName**에 띄어쓰기가 포함되었거나, 오탈자가 있다면 원문이 그대로 출력됩니다. ```lua -- 1) 언어 설정 영어 : formatter name에 띄어쓰기가 포함된 경우 log(_LocalizationService:SmartFormat("I have {0: plural:an apple|{} apples}.", 2)) ``` ```lua -- 2) formatter name 자체가 틀린 경우 [chunk_id] | Guides:968:6
[task] | distill [title] | 메이플스토리 월드에서 수익 출금하기 [category] | Guides [rephrased] | **1. 상호 표기 유의사항** * 사업자등록증 내 **영문 상호 병기** 권장. * 미병기 시: 영문 상호는 한글 상호의 **발음**과 동일하게 표기해야 함 (의미 번역 금지). **2. 표기 예시** * **병기 시**: 사업자등록증의 영문 상호 그대로 사용. * 예: `메이플스토리 월드(Maplestory Worlds)` → `Maplestory Worlds` * **미병기 시**: 한글 상호의 발음을 영문으로 표기. * 예: `메소전사 컴퍼니` → `MesoJeonsa Company` ( [original] | **1. 상호 표기 유의사항** * 기본적으로, 사업자등록증 내 영문 상호를 병기하는 것을 권장드립니다. * 영문 상호가 병기되어 있지 않은 경우, 영문 상호명은 한글 상호명의 발음과 동일하게 표기되어야 합니다. **2. 올바른 표기법 예시** **1) 사업자등록증 내 영문 상호가 병기된 경우** | 구분 | 올바른 표기 (병기 정보 입력) | 잘못된 표기 (병기 외 정보 입력) | | --- | --- | --- | |국문 상표 | 메이플스토리 월드(Maplestory Worlds) | 메이플스토리 월드(Maple [chunk_id] | Guides:970:2
[task] | extract_knowledge [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | # SmartFormat 함수 ## 개념 설명 `SmartFormat()`은 로컬라이징(번역) 테이블을 사용하지 않고, `GetTextFormat()`의 포맷팅 기능만 독립적으로 활용하기 위한 함수입니다. 일반적인 `GetText()`나 `GetTextFormat()`은 번역 테이블의 **Key**를 인수로 요구하지만, `SmartFormat()`은 출력할 문자열 자체를 직접 인수로 받습니다. 이때 문자열 내부의 `{0}`, `{1}` 등 플레이스홀더를 인수로 전달된 값으로 치환하여 최종 문자열을 반환합니다. ## API 사용법 [original] | ## SmartFormat `GetText()`나 `GetTextFormat()`은 번역 테이블을 필요로 합니다. 번역 테이블을 사용하지 않고 `GetTextFormat()`의 포맷 기능만 따로 이용하고 싶다면 `SmartFormat()` 함수를 사용합니다. `SmartFormat()`에서는 인수로 **LocalizationTable**의 **Key** 대신 출력할 문자열을 직접 받습니다. `SmartFormat()`를 사용해 위의 예제를 구현하면 아래와 같습니다. ```lua [client only][self] Handle [chunk_id] | Guides:968:3
[task] | knowledge_list [title] | 메이플스토리 월드에서 수익 출금하기 [category] | Guides [rephrased] | 제시된 원문은 메이플스토리 월드의 **유료화 및 수익 출금 정책**에 관한 가이드이며, mLua 스크립트 언어 또는 API(스크립트 컴포넌트, 메서드, 이벤트 핸들러 등)에 대한 기술적 내용이 포함되어 있지 않습니다. 따라서 요청하신 "mLua 스크립트 규칙" 및 "API 이름·매개변수·반환 타입·동기화/서버·클라이언트 제약"을 명시하는 것은 원문에 존재하지 않는 사실을 지어내는 것이 되므로, **원문에 명시된 사실만을 바탕으로 핵심 정책을 목록으로 정리**합니다. ### 메이플스토리 월드 수익 출금 정책 핵심 사항 * 메 [original] | # 학습 과정 소개 메이플스토리 월드에서는 유료로 판매한 CGC 상품을 통해 수익을 획득할 수 있으며, 획득한 수익은 일정 조건 충족 및 절차를 거쳐 현금으로 출금할 수 있습니다. **✓ 메이플스토리 월드 내 수익 창출 방법** 1. **아바타 상품 판매 수익** - ‘아바타 상점’에 등록된 상품을 이용자가 구매할 수 있습니다. 2. **월드 상품 판매 수익** - 월드 내에서 판매 중인 월드 상품(월드 아이템, 이용권)을 이용자가 구매할 수 있습니다. # 내 수익 출금 조건 메이플스토리 월드에서 수익을 현금으 [chunk_id] | Guides:970:0
[task] | distill [title] | 메이플스토리 월드에서 수익 출금하기 [category] | Guides [rephrased] | **메이플스토리 월드 수익 출금 가이드** 출금 신청 또는 계정 프로필 페이지를 통해 크리에이터 정보 수정 페이지로 진입합니다. ### 1. 크리에이터 유형 선택 * **구분:** 법인 사업자, 개인 사업자, 개인 ### 2. 크리에이터 정보 등록 **1. 공통 (모든 유형)** * **자동 기입:** 성명, 생년월일, 이메일, 전화번호 (넥슨ID 기반) * **일치 원칙:** 지급 수단 명의를 포함한 **출금 관련 정보는 넥슨 홈페이지 회원 명의 정보와 일치해야 합니다.** * **정보 수정:** [넥슨 홈페 [original] | 출금 신청 페이지 또는 계정 프로필 페이지를 통해 출금을 위한 크리에이터 정보 수정 페이지에 진입할 수 있습니다. | 출금 신청 페이지를 통한 진입 | 계정 프로필 페이지를 통한 진입 | | --- | --- | | ![[object Object]](https://mod-file.dn.nexoncdn.co.kr/bbs/17454596149448215ae7b0cd2465b869e7519a088470c.png "path1")| ![[object Object]](https://mod-file.dn.nexoncdn.co.kr/bbs/ [chunk_id] | Guides:970:1
[task] | diverse_qa [title] | 포맷에 맞게 로컬라이징하기 [category] | Guides [rephrased] | 질문: 한국어에서 조사는 어떤 품사 뒤에 붙어 문법의 의미를 더하나요? 답변: 조사는 체언(명사, 대명사, 수사) 뒤에 붙어 문법의 의미를 더하는 품사입니다. 질문: 체언의 마지막 글자 종성(받침) 유무에 따라 조사 '을'과 '를' 중 어떻게 선택되나요? 답변: 앞의 체언에 종성이 있을 때는 '을', 종성이 없을 때는 '를'이 연결됩니다. 질문: 앞의 체언에 종성이 있을 때 사용되는 조사로 잘못된 것은 무엇인가요? 1. 은 2. 를 3. 이 4. 을 답변: 2. 를 질문: 앞의 체언에 종성이 없을 때 사용되는 조사 목록 중 하 [original] | 한국어에서 조사는 체언(명사, 대명사, 수사) 뒤에 붙어 문법의 의미를 더하는 품사입니다. 체언의 받침 유무에 따라 뒤에 붙는 조사가 달라집니다. 예를 들어, **"나는 [ ]을/를 만납니다."** 라는 문장이 있다면 빈칸 [ ]에 들어갈 단어의 마지막 글자 종성 유무에 따라 조사 **'을'** 또는 **'를'**이 연결됩니다. | 빈칸에 들어갈 단어 | 조사 | 완성된 문장 | | :---: | :---: | :---: | | 스탄 | 을 | 나는 스탄을 만납니다. | | 리나 | 를 | 나는 리나를 만납니다. | 이러한 [chunk_id] | Guides:968:5