← 목록

mLua · Nemotron SDG 질문-응답 (SFT)

총 21,567개 · 페이지 458/719
🔀 랜덤
불러오는 중…

[task] | code [pass] | ⏳ 미판정 [title] | 액세서리 [question] | 모자 아이템의 앞모습 레이어(edithere:cap_cap_34)와 뒷모습 레이어(edithere:cap_backCap_92)의 이름을 확인하여 수정되지 않았는지 검증하는 로직을 _UserService 와 log() 함수를 사용하여 작성해줘. [answer] | 제시된 참고 문서에는 Photoshop 파일(`Avatar_Cap_C1.psd`, `Avatar_Cap_C2.psd`)의 레이어 구조와 이름(`edithere:cap_cap_34`, `edithere:cap_backCap_92`)에 대한 설명만 포함되어 있습니다. mLua API 문서나 메이플스토리 월드 런타임에서 **PSD 파일의 레이어 이름을 직접 읽거나 검증하는 API**(예: `GetLayerName`, `LoadPSD`, `CheckAssetLayer` 등)가 제공된다는 내용은 참고 문서에 존재하지 않습니다. mLua는 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 액세서리 제작 시트를 소개합니다. [아바타 아이템 제작의 기본 개념](/docs?postId=588%7B%22target%22:%22_self%22%7D)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Cap_C1.psd","url":"https://mod-file.dn.nexoncdn.co.kr/storage/A

[task] | two_turn [pass] | ⏳ 미판정 [title] | 제작 과정 안내 [question] | PSD 파일 내 애니메이션 프레임 순서와 포토샵 타임라인 설정 시 프레임 재생 속도(0.2초)를 조정해야 하는 이유는 무엇인가요? [answer] | PSD 파일 내 애니메이션 프레임 순서와 포토샵 타임라인 설정 시 프레임 재생 속도 조정은 다음 두 가지 목적을 위해 필요합니다. **1. 애니메이션 프레임 순서 (0번부터 4번까지)** 애니메이션은 레이어 이름의 끝자리 숫자가 작은 수에서부터 큰 수로 재생됩니다. 따라서 0번 레이어부터 4번 레이어까지 동일한 위치에 하트를 점점 크게 그려야 합니다. 이러한 순서대로 프레임을 구성해야 하트가 자연스럽게 커지는 이펙트가 올바르게 재생됩니다. **2. 프레임 재생 속도 0.2초 조정** 애니메이션이 자연스럽게 재생되도록 하기 위해 [followup] | 프레임 재생 속도를 0.0초에서 0.2초로 변경하지 않을 경우 애니메이션이 어떻게 재생되는지, 그리고 GIF로 저장하여 미리보기할 때 주의해야 할 점은 무엇인가요? [followup_answer] | 프레임 재생 속도를 0.0초에서 0.2초로 변경하지 않을 경우와 GIF 저장 시 주의해야 할 점은 다음과 같습니다. **1. 프레임 재생 속도 미변경 시 애니메이션 재생 방식** 프레임 재생 속도를 0.2초로 변경해야 애니메이션이 자연스럽게 재생됩니다. 따라서 0.0초 상태로 두면 애니메이션이 자연스럽게 재생되지 않는다는 점이 명시되어 있습니다. 문서에는 0.0초 상태에서의 구체적인 재생 현상(예: 프레임이 너무 빠르게 지나가거나 멈춘 것처럼 보이는 등)에 대한 추가적인 기술적 설명은 제공되지 않습니다. **2. GIF로 저장하 [scores] | [judge_reason] | [source_doc] | 이펙트 모자를 만들기 위해 **Avatar_Cap_Ani.psd** 파일을 열어 하트 모양 이펙트를 만들어봅시다. | 기본 이펙트 | 하트 이펙트 | | --- | --- | | | | 1. case1.front 폴더 - **edithere:cap_cap_34:0** 레이어에 모자의 앞모습을 그립니다. 2. 모자를 복사해 나머지 3개의 레이어에 동일하게 그립니다. * **edithere:cap_cap_34:1** * **edithere:cap_cap_34:2** * **edithere:cap_cap_

[task] | code [pass] | ⏳ 미판정 [title] | 게임 섬네일 변경하기 [question] | mLua 스크립트 언어와 API 문서에 정통한 기술 작가로서, 주어진 원문에 없는 사실·API·코드 예제를 지어내지 않는 규칙을 준수해야 하므로, 해당 문서 내용만으로 해결 가능한 mLua 코딩 과제를 생성할 수 없습니다. [answer] | 제시된 참고 문서는 메이플스토리 월드 메이커에서 **게임 섬네일(이미지) 및 YouTube 영상 등록/삭제**하는 UI 조작 가이드입니다. mLua 스크립트 언어, API, 컴포넌트, 이벤트 핸들러에 대한 기술적 내용이 포함되어 있지 않아, 해당 문서 근거만으로 mLua 코딩 과제를 생성하거나 코드를 작성할 수 없습니다. 따라서 질문하신 대로, 주어진 원문에 없는 사실·API·코드 예제를 지어내지 않는 규칙을 준수하므로, **해당 문서 내용만으로 해결 가능한 mLua 코딩 과제를 생성할 수 없습니다.** [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 게임 섬네일은 유저의 흥미와 플레이 욕구를 자극할 수 있는 중요한 요소입니다. 이번 과정에서는 게임의 섬네일을 등록, 삭제하는 방법에 대해 알아보겠습니다. # 섬네일 등록하기 1. **만들기** 메뉴에 있는 월드 목록에서 섬네일을 변경하려는 월드를 선택합니다. 2. **이미지** 탭에서 **[이미지 첨부]** 버튼을 클릭해 내 컴퓨터에 있는 이미지를 섬네일로 등록합니다. 섬네일은 최대 5장까지 등록 가능합니다. 3. 아래와 같이 등록한 이미지를 확인할 수 있습니다. # YouTube 영상 등록하기

[task] | single_turn [pass] | ⏳ 미판정 [title] | 게임 섬네일 변경하기 [question] | 게임 섬네일 등록 시 내 컴퓨터의 이미지를 불러오지 못하거나 등록이 안 되는 경우, 주로 어떤 원인이 있을까요? [answer] | 제공된 참고 문서에는 게임 섬네일 등록 시 이미지 불러오기 실패 또는 등록 불가의 구체적인 원인(예: 파일 형식, 용량 제한, 네트워크 문제 등)에 대한 정보가 포함되어 있지 않습니다. 문서에서 확인할 수 있는 사항은 다음과 같습니다: 1. **섬네일 등록 방법**: `만들기` 메뉴에서 월드를 선택한 뒤, `이미지` 탭의 `[이미지 첨부]` 버튼을 클릭하여 내 컴퓨터의 이미지를 등록합니다. 2. **등록 제한**: 섬네일은 최대 5장까지 등록 가능합니다. 3. **출시 시 등록 방법**: `File - Release` 창에서도 내 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 게임 섬네일은 유저의 흥미와 플레이 욕구를 자극할 수 있는 중요한 요소입니다. 이번 과정에서는 게임의 섬네일을 등록, 삭제하는 방법에 대해 알아보겠습니다. # 섬네일 등록하기 1. **만들기** 메뉴에 있는 월드 목록에서 섬네일을 변경하려는 월드를 선택합니다. 2. **이미지** 탭에서 **[이미지 첨부]** 버튼을 클릭해 내 컴퓨터에 있는 이미지를 섬네일로 등록합니다. 섬네일은 최대 5장까지 등록 가능합니다. 3. 아래와 같이 등록한 이미지를 확인할 수 있습니다. # YouTube 영상 등록하기

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | OnConditionCheck와 OnExit 메서드의 역할 및 실행 순서를 3문장 이내로 설명하세요. [answer] | 상태 전이 조건을 확인하기 위해 `OnConditionCheck`가 먼저 실행되며, 지정된 다음 상태로 넘어갈 수 있는지 판단합니다. 이 조건을 통과하면 해당 상태의 종료 로직이 담긴 `OnExit` 메서드가 실행되어 스프라이트 변경이나 타이머 정리 등의 처리가 이루어집니다. 즉, `OnConditionCheck`가 진입 허락을 하고 `OnExit`가 이전 상태의 마무리 작업을 수행하는 순서로 동작합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | ```lua boolean OnConditionCheck(string nextStateName) { return self.exitFlag } void OnExit() { self.ParentComponent.Entity.SpriteRendererComponent.SpriteRUID = "b871399ae18d41c4b76c2ae79feefa7d" --IDLE RUID _TimerService:ClearTimer(self.timerId) }

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | BROKEN 상태 추가 및 전이 설정 코드를 [server only] 메서드 블록 형식으로 코드만 출력하고 설명은 주석으로 작성하세요. [answer] | ```lua Method: [server only] void OnBeginPlay() { -- Entity의 StateComponent를 참조합니다. local state = self.Entity.StateComponent -- BROKEN 상태를 등록합니다. state:AddState("BROKEN", BrokenBox) -- BROKEN 상태에서 DEAD 상태로 전이되는 조건을 추가합니다. state:AddCondition("BROKEN", "DEAD") } ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | ```lua boolean OnConditionCheck(string nextStateName) { return self.exitFlag } void OnExit() { self.ParentComponent.Entity.SpriteRendererComponent.SpriteRUID = "b871399ae18d41c4b76c2ae79feefa7d" --IDLE RUID _TimerService:ClearTimer(self.timerId) }

[task] | two_turn [pass] | ⏳ 미판정 [title] | 제작 과정 안내 [question] | 이펙트 모자 제작 시 포토샵 타임라인에서 앞모습과 뒷모습 레이어를 프레임별로 어떻게 조합해야 하나요? [answer] | 이펙트 모자의 포토샵 타임라인에서 앞모습과 뒷모습 레이어는 다음과 같은 순서로 4프레임에 걸쳐 조합됩니다. 1. **1번 프레임**: 앞모습 레이어 0번(`edithere:cap_cap_34:0`)과 뒷모습 레이어 0번(`edithere:cap_backCap_92:0`)을 선택합니다. 2. **2번 프레임**: 앞모습 레이어 1번(`edithere:cap_cap_34:1`)과 뒷모습 레이어 1번(`edithere:cap_backCap_92:1`)을 선택합니다. 3. **3번 프레임**: 앞모습 레이어 2번(`edithere:cap [followup] | Timeline 3번 채널에서 앞모습 레이어 2번과 뒷모습 레이어 0번을 조합하는 이유와, 이 조합 방식이 애니메이션 재생에 미치는 구체적인 영향은 무엇인가요? [followup_answer] | 제공된 참고 문서에는 Timeline 3번 채널에서 앞모습 레이어 2번과 뒷모습 레이어 0번을 조합하는 **구체적인 이유**나, 이러한 비대칭 조합(앞:2번, 뒤:0번)이 애니메이션 재생에 미치는 **기술적·시각적 영향**에 대한 설명이 포함되어 있지 않습니다. 문서에서는 단순히 "Timeline 3번 채널에 앞모습의 레이어 2번(edithere:cap_cap_34:2)과 뒷모습의 레이어 0번(edithere:cap_backCap_92:0)을 선택하고, 타임라인의 + 버튼을 누릅니다"라고 절차만 안내하고 있으며, 왜 뒷모습은 1번 [scores] | [judge_reason] | [source_doc] | 이펙트 모자를 만들기 위해 **Avatar_Cap_Ani.psd** 파일을 열어 하트 모양 이펙트를 만들어봅시다. | 기본 이펙트 | 하트 이펙트 | | --- | --- | | | | 1. case1.front 폴더 - **edithere:cap_cap_34:0** 레이어에 모자의 앞모습을 그립니다. 2. 모자를 복사해 나머지 3개의 레이어에 동일하게 그립니다. * **edithere:cap_cap_34:1** * **edithere:cap_cap_34:2** * **edithere:cap_cap_

[task] | two_turn [pass] | ⏳ 미판정 [title] | 뒤통수가 개방된 모자 [question] | 아바타 모자 이펙트가 재생되는 동작 범위와 그렇지 않은 경우의 화면 표시 방식은 어떻게 되나요? [answer] | 아바타 모자 이펙트는 `stand`, `walk`, `fly`, `rope`, `ladder` 동작에서만 재생됩니다. 이 다섯 동작 외의 다른 동작에서는 이펙트가 재생되지 않으며, 첫 번째 프레임만 화면에 표시됩니다. [followup] | 'stand', 'walk', 'fly', 'rope', 'ladder' 외의 다른 동작에서 이펙트가 첫 번째 프레임만 보이는 경우, 이를 처리하기 위한 특정 스크립트 로직이나 설정이 필요한가요? [followup_answer] | 제공된 참고 문서에는 'stand', 'walk', 'fly', 'rope', 'ladder' 외의 동작에서 첫 번째 프레임만 보이는 현상을 처리하기 위한 특정 mLua 스크립트 로직이나 설정 방법이 언급되어 있지 않습니다. 문서에는 해당 동작 범위에서 이펙트가 재생되고, 다른 동작에서는 첫 번째 프레임만 표시된다는 사실만 기술되어 있을 뿐, 이를 위한 개발자 추가 구현 지침은 포함되어 있지 않습니다. [scores] | [judge_reason] | [source_doc] | * **case1.front**: 모자의 앞모습을 그릴 레이어와 앞모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_cap_34**: 모자의 앞모습을 그릴 수 있는 레이어입니다. * **edithere:cap_frontBackCap_92**: 헤어 뒤에 오는 모자의 앞모습을 그릴 수 있는 레이어입니다. * **case2.back**: 모자의 뒷모습을 그릴 레이어와 뒷모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_backCap_92**

[task] | two_turn [pass] | ⏳ 미판정 [title] | 뒤통수가 개방된 모자 [question] | 뒤통수가 개방된 모자(Avatar_Cap_A)를 제작할 때 사용하는 헤어 샘플의 선택 기준은 무엇인가요? [answer] | 뒤통수가 개방된 모자(Avatar_Cap_A)를 제작할 때 헤어 샘플 선택 기준은 다음과 같습니다. `guide_backHairBelowCapWide_samples_94`와 `guide_backHairBelowCapNarrow_samples_95` 두 가지 헤어 샘플 중에서 **Wide 이미지와 Narrow 이미지가 동일한 001번 샘플**을 사용해야 합니다. [followup] | guide_backHairBelowCapWide_samples_94와 guide_backHairBelowCapNarrow_samples_95 중 Wide와 Narrow 이미지가 동일한 001번 샘플을 사용해야 하는 구체적인 이유는 무엇인가요? [followup_answer] | 제공된 참고 문서에는 뒤통수가 개방된 모자(Avatar_Cap_A) 작업 시 `guide_backHairBelowCapWide_samples_94`와 `guide_backHairBelowCapNarrow_samples_95` 중 Wide와 Narrow 이미지가 동일한 001번 샘플을 사용해야 한다는 **규정**만 명시되어 있습니다. 그러나 왜 해당 샘플을 사용해야 하는지 그 **구체적인 이유**(예: 렌더링 충돌 방지, 헤어 길이와의 호환성, 시각적 일관성 등)에 대한 설명은 문서에 포함되어 있지 않습니다. [scores] | [judge_reason] | [source_doc] | * **case1.front**: 모자의 앞모습을 그릴 레이어와 앞모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_cap_34**: 모자의 앞모습을 그릴 수 있는 레이어입니다. * **edithere:cap_frontBackCap_92**: 헤어 뒤에 오는 모자의 앞모습을 그릴 수 있는 레이어입니다. * **case2.back**: 모자의 뒷모습을 그릴 레이어와 뒷모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_backCap_92**

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | HitComponent가 HitEvent를 발생시킬 때 StateComponent가 어떻게 반응하여 HIT 상태로 전이되고, 이후 IDLE 상태로 복귀하는 구체적인 과정은 어떤가요? [answer] | HitComponent가 HitEvent를 발생시키면 StateComponent는 해당 이벤트를 받아 엔티티의 상태를 HIT으로 전이시킵니다. HIT 상태로 진입한 후 0.5초가 지나면 StateComponent가 자동으로 상태를 IDLE로 전이시킵니다. 이 과정은 내부적으로 StateComponent가 HitEvent를 감지하여 상태 전이를 처리하고, HIT 상태의 지속 시간(0.5초)이 종료되면 IDLE 상태로 복귀하는 방식으로 동작합니다. 참고로, HIT 상태가 적용되는 대상이 DEAD 상태인 경우 AttackCompone [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 어떤 상태에서 다음 상태로 변하는 것을 상태 전이(Transition)라 합니다. 상태 전이가 발생할 때 다양한 이벤트가 발생하고, 이를 활용해 특정 엔티티가 상태 전이를 감지할 수 있습니다. 이벤트는 상태 전이가 발생하기 이전의 상태와 현재 상태(바뀐 상태)의 정보를 갖고 있습니다. 아래와 같은 상황에서 이벤트가 발생합니다. * StateComponent의 상태가 전이되면, [StateChangeEvent](/apiReference/Events/StateChangeEvent)가 함께 발생합니다. * StateComponent가

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | `AddCondition`과 `RemoveCondition`의 매개변수 구성 및 기능 차이를 표로 정리하세요. [answer] | `AddCondition`과 `RemoveCondition`의 매개변수 구성 및 기능 차이는 다음과 같습니다. | 구분 | `AddCondition` | `RemoveCondition` | | :--- | :--- | :--- | | **기능** | 현재 상태에서 다음 상태로 넘어가는 상태 전이 조건을 추가합니다. | 현재 상태에서 다음 상태로 넘어가는 상태 전이 조건을 삭제합니다. | | **1번째 매개변수** | `string stateName`<br>현재 상태 이름 | `string stateName`<br>현재 상태 이름 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **MyDesk - Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성하고, 상태를 정의합니다. `OnConditionCheck()`를 활용해 상태 전이 조건을 만들 수 있습니다. 아래와 같이 **MoveDown** StateType을 만들고 아래의 예시 코드처럼 활용할 수 있습니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformComponent:Translate(0, -0.01) }

[task] | single_turn [pass] | ⏳ 미판정 [title] | 제작 과정 안내 [question] | case1.front와 case2.back 폴더의 레이어 명명 규칙과 애니메이션 재생 순서에 대해 어떻게 이해해야 하나요? [answer] | case1.front와 case2.back 폴더의 레이어 명명 규칙과 애니메이션 재생 순서는 다음과 같이 이해할 수 있습니다. **1. 레이어 명명 규칙** 모자 아이템은 앞모습(front)과 뒷모습(back)이 각각 별도의 폴더에 관리되며, 각 폴더 안의 레이어는 특정 접두어와 인덱스 숫자로 구성됩니다. * **case1.front (앞모습)** * 기본 레이어 이름: `edithere:cap_cap_34` * 인덱스: `0`, `1`, `2`, `3` * 전체 레이어 예시: `edither [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 이펙트 모자를 만들기 위해 **Avatar_Cap_Ani.psd** 파일을 열어 하트 모양 이펙트를 만들어봅시다. | 기본 이펙트 | 하트 이펙트 | | --- | --- | | | | 1. case1.front 폴더 - **edithere:cap_cap_34:0** 레이어에 모자의 앞모습을 그립니다. 2. 모자를 복사해 나머지 3개의 레이어에 동일하게 그립니다. * **edithere:cap_cap_34:1** * **edithere:cap_cap_34:2** * **edithere:cap_cap_

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | BrokenBox 스크립트의 Property 블록에 선언된 변수 2개의 이름과 타입을 '이름: 타입' 형식의 2줄 목록으로만 출력하세요. [answer] | exitFlag: boolean timerId: number [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 플레이어의 공격에 상태가 변하는 나무 상자를 만들어봅시다. 기본 상태인 IDLE, DEAD와 크리에이터가 만든 새로운 BROKEN 상태를 함께 활용합니다. 상태마다의 특정 애니메이션, 스프라이트를 추가해 상태 변화를 직관적으로 확인할 수 있습니다. 이 예시는 IDLE → BROKEN → DEAD → IDLE로 상태 전이하며, 상태마다 다른 스프라이트, 애니메이션을 연결해 재생하게 됩니다. >**Tip.** >만들기 - 새로 만들기 - **기본** 템플릿을 사용해 플레이어의 기본 공격, 피격을 구성합니다. 해당 템플릿의 D

[task] | two_turn [pass] | ⏳ 미판정 [title] | 액세서리 [question] | 모자 아이템을 제작할 때 빨간색 레이어인 data:vslot:Cp의 구체적인 역할과 모자와 헤어가 겹칠 때의 우선순위 결정 방식이 궁금합니다. [answer] | 참고 문서에 따르면, 모자 제작 시트의 빨간색 레이어인 `data:vslot:Cp`는 모자 아이템에만 존재하는 개념으로, 모자와 헤어(머리카락)가 겹칠 경우 어느 쪽이 위에 보이는지를 결정하는 **우선순위** 역할을 합니다. 구체적인 동작 방식은 다음과 같습니다: 1. **겹침 발생 시**: 플레이어의 아바타가 모자와 헤어를 동시에 착용했을 때, 두 아이템의 이미지가 공간적으로 겹치는 부분이 발생합니다. 2. **우선순위 결정**: `data:vslot:Cp` 레이어의 데이터에 따라 겹치는 영역에서 모자와 헤어 중 어느 쪽이 [followup] | 노란색 레이어에 모자를 그릴 때, 빨간색 레이어와 겹치는 부분이 특정 동작이나 헤어 스타일(넓은 헤어/좁은 헤어)에 따라 다르게 렌더링되는 예외 상황이 있는지, 그리고 이를 테스트하는 구체적인 절차나 팁이 있나요? [followup_answer] | 제공된 참고 문서에는 모자와 헤어가 겹칠 때 특정 동작이나 헤어 스타일(넓은 헤어/좁은 헤어)에 따라 렌더링 방식이 달라지는 **예외 상황에 대한 구체적인 설명이 없으며**, 이를 테스트하는 구체적인 절차나 팁도 명시되어 있지 않습니다. 문서에 나와 있는 관련 정보의 한계는 다음과 같습니다: 1. **vslot의 역할 한계**: `data:vslot:Cp`는 모자와 헤어가 겹칠 경우의 우선순위를 결정하는 역할만 수행하며, 헤어의 넓이나 좁음에 따라 렌더링 로직이 변경된다는 내용은 없습니다. 2. **가이드 레이어의 용도**: [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 액세서리 제작 시트를 소개합니다. [아바타 아이템 제작의 기본 개념](/docs?postId=588%7B%22target%22:%22_self%22%7D)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Cap_C1.psd","url":"https://mod-file.dn.nexoncdn.co.kr/storage/A

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | OnEnter 메서드 내에서 실행되는 _TimerService:SetTimerOnce 호출 두 건의 지연 시간(초 단위)을 '지연시간1, 지연시간2' 형식의 한 줄로만 출력하세요. [answer] | 1.1, 0.21 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 플레이어의 공격에 상태가 변하는 나무 상자를 만들어봅시다. 기본 상태인 IDLE, DEAD와 크리에이터가 만든 새로운 BROKEN 상태를 함께 활용합니다. 상태마다의 특정 애니메이션, 스프라이트를 추가해 상태 변화를 직관적으로 확인할 수 있습니다. 이 예시는 IDLE → BROKEN → DEAD → IDLE로 상태 전이하며, 상태마다 다른 스프라이트, 애니메이션을 연결해 재생하게 됩니다. >**Tip.** >만들기 - 새로 만들기 - **기본** 템플릿을 사용해 플레이어의 기본 공격, 피격을 구성합니다. 해당 템플릿의 D

[task] | two_turn [pass] | ⏳ 미판정 [title] | 액세서리 [question] | 모자 제작 시트가 120x120 픽셀 이내를 권장하는 이유와, 이 범위를 벗어나거나 특정 가이드 레이어(guide_backHairBelowCapWide_samples_94 등)의 샘플 헤어를 의도적으로 가리는 경우 아이템이 정상적으로 동작하지 않는 구체적인 제약 조건이나 오류 발생 사례가 있나요? [answer] | 제시된 참고 문서에는 모자 제작 시트가 120x120 픽셀 이내를 권장하는 **구체적인 이유**에 대한 설명이 없습니다. 문서에는 단순히 "모자는 아바타 발을 기준으로 최대 120x120 안에서 제작을 권장합니다"라고만 명시되어 있습니다. 또한, 가이드 레이어(예: `guide_backHairBelowCapWide_samples_94`)의 샘플 헤어를 의도적으로 가렸을 때 아이템이 정상적으로 동작하지 않는 **구체적인 제약 조건이나 오류 발생 사례**에 대한 내용도 문서에 포함되어 있지 않습니다. 문서에 명시된 것과 관련된 제한 [followup] | 가이드용 선 레이어나 아바타 body 샘플 레이어를 일부러 지우거나 가렸을 때, 실제 게임 내 아바타에 모자가 어떻게 적용되는지(예: 투명 처리, 위치 오프셋 등) 확인하는 방법이나, 이러한 실수를 방지하기 위한 Photoshop 작업 시 체크리스트가 있나요? [followup_answer] | 제시된 참고 문서에는 가이드용 선 레이어(`guide_` 레이어)나 아바타 body 샘플 레이어를 지우거나 가렸을 때 실제 게임 내 아바타에 모자가 어떻게 적용되는지(투명 처리, 위치 오프셋 등)에 대한 **구체적인 설명이나 확인 방법이 없습니다.** 또한, 이러한 실수를 방지하기 위한 Photoshop 작업 시의 **구체적인 체크리스트**도 문서에 명시되어 있지 않습니다. 문서에서 확인할 수 있는 관련 내용은 다음과 같습니다: 1. **레이어 수정 금지 원칙**: 회색 레이어(가이드용 선 레이어, data 폴더 포함)는 모 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 액세서리 제작 시트를 소개합니다. [아바타 아이템 제작의 기본 개념](/docs?postId=588%7B%22target%22:%22_self%22%7D)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Cap_C1.psd","url":"https://mod-file.dn.nexoncdn.co.kr/storage/A

[task] | single_turn [pass] | ⏳ 미판정 [title] | 게임 섬네일 변경하기 [question] | 만들기 메뉴의 월드 목록과 File - Release 창에서 섬네일을 관리하는 기능의 차이가 무엇인지 설명해 주세요. [answer] | 만들기 메뉴의 월드 목록과 File - Release 창에서 섬네일을 관리하는 기능의 차이는 **사용 시점**과 **섬네일 등록 방법의 다양성**에 있습니다. **1. 사용 시점의 차이** * **만들기 메뉴의 월드 목록**: 게임을 제작 중일 때, 즉 메이커(Maker) 환경에서 직접 편집하는 단계에서 섬네일을 등록하거나 삭제하는 데 사용됩니다. * **File - Release 창**: 제작한 게임을 출시(Release)하는 시점에 섬네일이나 영상을 등록, 변경, 삭제할 때 사용됩니다. **2. 섬네일 등록 방법의 차 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 게임 섬네일은 유저의 흥미와 플레이 욕구를 자극할 수 있는 중요한 요소입니다. 이번 과정에서는 게임의 섬네일을 등록, 삭제하는 방법에 대해 알아보겠습니다. # 섬네일 등록하기 1. **만들기** 메뉴에 있는 월드 목록에서 섬네일을 변경하려는 월드를 선택합니다. 2. **이미지** 탭에서 **[이미지 첨부]** 버튼을 클릭해 내 컴퓨터에 있는 이미지를 섬네일로 등록합니다. 섬네일은 최대 5장까지 등록 가능합니다. 3. 아래와 같이 등록한 이미지를 확인할 수 있습니다. # YouTube 영상 등록하기

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | Model_Box 모델 생성 시 추가해야 하는 컴포넌트 4가지의 이름을 쉼표로 구분하여 한 줄로만 출력하세요. [answer] | TransformComponent, SpriteRendererComponent, StateComponent, HitComponent [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 플레이어의 공격에 상태가 변하는 나무 상자를 만들어봅시다. 기본 상태인 IDLE, DEAD와 크리에이터가 만든 새로운 BROKEN 상태를 함께 활용합니다. 상태마다의 특정 애니메이션, 스프라이트를 추가해 상태 변화를 직관적으로 확인할 수 있습니다. 이 예시는 IDLE → BROKEN → DEAD → IDLE로 상태 전이하며, 상태마다 다른 스프라이트, 애니메이션을 연결해 재생하게 됩니다. >**Tip.** >만들기 - 새로 만들기 - **기본** 템플릿을 사용해 플레이어의 기본 공격, 피격을 구성합니다. 해당 템플릿의 D

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | HandleStateChangeEvent에서 서버와 클라이언트가 각각 처리하는 CurrentStateName 조건을 표로 정리해서 제시하세요. [answer] | `HandleStateChangeEvent`에서 `CurrentStateName`에 따라 서버와 클라이언트가 수행하는 동작은 다음과 같습니다. | 실행 공간 | CurrentStateName 조건 | 수행 동작 | | :--- | :--- | :--- | | **Server** | `"HIT"` | `StateComponent`의 상태를 `"BROKEN"`으로 변경합니다. | | **Server** | `"DEAD"` | 5초 후 `StateComponent`의 상태를 `"IDLE"`로 변경하는 타이머를 설정합니다. | | **C [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | ```lua boolean OnConditionCheck(string nextStateName) { return self.exitFlag } void OnExit() { self.ParentComponent.Entity.SpriteRendererComponent.SpriteRUID = "b871399ae18d41c4b76c2ae79feefa7d" --IDLE RUID _TimerService:ClearTimer(self.timerId) }

[task] | two_turn [pass] | ⏳ 미판정 [title] | 후드 [question] | `data:use_zmap_preset1` 파일이 아바타의 층(layer) 구조에서 어떤 역할을 하며, 모자 아이템 제작 시 이 zmap 정보를 직접 수정해야 하는 경우가 있나요? [answer] | `data:use_zmap_preset1` 파일은 아바타 이미지를 층(layer)별로 쌓아 올리는 구조를 정의하는 **zmap** 정보입니다. 아바타의 다양한 몸동작을 구현하기 위해 몸, 옷, 방패, 무기 등의 이미지가 순서대로 겹쳐지는데, 이 zmap 파일은 각 Sprite(이미지 조각)의 높이가 어떤 순서로 정렬되는지를 관리하는 역할을 합니다. 모자 아이템 제작 시 이 zmap 정보를 직접 수정해야 하는 경우는 **없습니다**. * `data:use_zmap_preset1`는 **data 폴더** 안에 포함된 파일로, 이 [followup] | 아바타의 몸, 옷, 무기 순으로 이미지가 쌓이는 구조에서 모자의 `data:use_zmap_preset1`이 다른 스프라이트와 높낮이 순서를 어떻게 조정하는지 코드나 설정값 예시를 알려주세요. [followup_answer] | 제공된 참고 문서에는 `data:use_zmap_preset1` 파일이 아바타의 스프라이트 높이 순서를 조정하는 구체적인 **코드, 설정값, 또는 숫자 파라미터 예시가 포함되어 있지 않습니다.** 문서에서 확인 가능한 정보만으로는 다음과 같이 설명할 수 있습니다: 1. **역할**: `data:use_zmap_preset1`은 "아이템에 따라 분리된 각 Sprite의 높이가 순서대로 정리된 파일"이며, 아바타의 몸, 옷, 방패, 무기 등이 층층이 쌓이는 구조를 정의하는 zmap 정보입니다. 2. **수정 여부**: 이 파일은 [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 후드 시트를 소개합니다. [아바타 아이템 제작의 기본 개념](/docs?postId=588%7B%22target%22:%22_self%22%7D)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Cap_G.psd","url":"https://mod-file.dn.nexoncdn.co.kr/storage/Avatar_

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | OnUpdate에서 TransformComponent:Translate를 호출할 때 self.ParentComponent.Entity를 직접 참조하는 대신 다른 접근 방식이 있나요? [answer] | 제공된 참고 문서에는 `OnUpdate`에서 `TransformComponent:Translate`를 호출할 때 `self.ParentComponent.Entity`를 직접 참조하는 방식 외에 다른 접근 방식에 대한 설명이 없습니다. 문서에 명시된 예제들은 모두 `self.ParentComponent.Entity.TransformComponent` 또는 `self.Entity.TransformComponent`를 통해 변환을 수행하고 있으며, 이 외의 대안적 접근 방식(예: 다른 컴포넌트 경로, 서비스 호출 등)은 문서에 포함되어 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **MyDesk - Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성하고, 상태를 정의합니다. `OnConditionCheck()`를 활용해 상태 전이 조건을 만들 수 있습니다. 아래와 같이 **MoveDown** StateType을 만들고 아래의 예시 코드처럼 활용할 수 있습니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformComponent:Translate(0, -0.01) }

[task] | instruction_following [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | StateType 생성부터 상태 전이 조건 삭제까지의 과정을 단계별 번호 목록으로 정리하세요. [answer] | StateType 생성부터 상태 전이 조건 삭제까지의 과정은 다음과 같이 4단계로 진행됩니다. 1. **StateType 생성 및 상태 정의** `MyDesk`에서 **Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성합니다. 생성된 StateType에서 `OnConditionCheck()` 메서드를 구현하여 상태 전이 조건을 정의합니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformC [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **MyDesk - Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성하고, 상태를 정의합니다. `OnConditionCheck()`를 활용해 상태 전이 조건을 만들 수 있습니다. 아래와 같이 **MoveDown** StateType을 만들고 아래의 예시 코드처럼 활용할 수 있습니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformComponent:Translate(0, -0.01) }

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | StateComponent에 새로운 State를 추가할 때 AddState 함수를 직접 호출해야 하는 이유와, StateType을 스크립트 컴포넌트로 직접 엔티티에 추가할 수 없는 이유는 무엇인가요? [answer] | StateType은 상태를 정의하는 타입이므로 스크립트 컴포넌트처럼 엔티티에 직접 추가하는 형태로 사용할 수 없습니다. StateType은 StateComponent의 `AddState()` 함수를 호출할 때만 자동으로 할당됩니다. 따라서 StateType을 만들고 해당 상태의 동작(진입, 유지, 퇴장, 전이 조건 등)을 정의한 후, 해당 StateType을 사용할 엔티티의 스크립트 컴포넌트에서 반드시 `StateComponent:AddState()`를 호출하여 추가해야 합니다. 이 과정이 없으면 StateComponent가 해당 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 어떤 상태에서 다음 상태로 변하는 것을 상태 전이(Transition)라 합니다. 상태 전이가 발생할 때 다양한 이벤트가 발생하고, 이를 활용해 특정 엔티티가 상태 전이를 감지할 수 있습니다. 이벤트는 상태 전이가 발생하기 이전의 상태와 현재 상태(바뀐 상태)의 정보를 갖고 있습니다. 아래와 같은 상황에서 이벤트가 발생합니다. * StateComponent의 상태가 전이되면, [StateChangeEvent](/apiReference/Events/StateChangeEvent)가 함께 발생합니다. * StateComponent가

[task] | code [pass] | ⏳ 미판정 [title] | 후드 [question] | 빨간색 레이어 `data:vslot:CpH1H3H4H5H6HfHbHcAe`가 활성화된 상태일 때만 노란색 레이어의 `edithere:cap_cap_34`에 특정 색상 효과를 적용하는 스크립트를 작성해줘 [answer] | 제공된 참고 문서에는 **Photoshop 시트(이미지 파일)의 레이어 구조와 용도**에 대한 정보만 포함되어 있습니다. 문서에서 확인되는 사실: 1. `data:vslot:CpH1H3H4H5H6HfHbHcAe`는 **빨간색 레이어**로, 모자와 헤어의 겹침 우선순위를 결정하는 데 사용됩니다. 2. `edithere:cap_cap_34`는 **노란색 레이어**로, 후드의 앞모습을 그리는 레이어입니다. 3. 두 레이어 모두 **Adobe Photoshop의 .psd 파일 내부의 레이어**이며, 메이플스토리 월드(mLua) 런타 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # 학습 과정 소개 후드 시트를 소개합니다. [아바타 아이템 제작의 기본 개념](/docs?postId=588%7B%22target%22:%22_self%22%7D)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Cap_G.psd","url":"https://mod-file.dn.nexoncdn.co.kr/storage/Avatar_

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | StateType의 OnConditionCheck에서 reverseResult 매개변수를 true로 설정하면 어떤 결과가 나오나요? [answer] | StateType의 `OnConditionCheck()` 함수 자체에는 `reverseResult` 매개변수가 없습니다. `reverseResult`는 `StateComponent:AddCondition()` 메서드의 매개변수입니다. `StateComponent:AddCondition(string stateName, string nextStateName, boolean reverseResult = false)`에서 `reverseResult`를 `true`로 설정하면, 해당 상태 전이 조건(`OnConditionCheck()`의 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **MyDesk - Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성하고, 상태를 정의합니다. `OnConditionCheck()`를 활용해 상태 전이 조건을 만들 수 있습니다. 아래와 같이 **MoveDown** StateType을 만들고 아래의 예시 코드처럼 활용할 수 있습니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformComponent:Translate(0, -0.01) }

[task] | two_turn [pass] | ⏳ 미판정 [title] | 뒤통수가 개방된 모자 [question] | 이펙트가 포함된 아바타 시트(Avatar_Cap_Ani.psd)에서 앞모습과 뒷모습의 애니메이션 프레임 구성 차이는 무엇인가요? [answer] | 이펙트가 포함된 아바타 시트(Avatar_Cap_Ani.psd)에서 앞모습과 뒷모습의 애니메이션 프레임 구성 차이는 다음과 같습니다. * **앞모습 (case1.front)**: **4프레임**의 애니메이션으로 구성됩니다. `animation` 폴더 내에 모자의 앞모습과 이펙트를 그릴 수 있는 4장의 레이어가 존재하며, 모든 레이어에 동일한 모자를 그려야 합니다. * **뒷모습 (case2.back)**: **2프레임**의 애니메이션으로 구성됩니다. `animation` 폴더 내에 모자의 뒷모습과 이펙트를 그릴 수 있는 2 [followup] | animation 폴더의 레이어 순서에 따라 모자와 이펙트를 각각 그려야 할 때, 앞모습 4프레임과 뒷모습 2프레임 각각의 동일한 모자 그리기 규칙은 어떻게 적용되나요? [followup_answer] | 앞모습 4프레임과 뒷모습 2프레임에 동일한 모자 그리기 규칙은 다음과 같이 적용됩니다. * **앞모습 (case1.front)**: `animation` 폴더에 있는 4장의 레이어 각각에 **동일한 모자**를 그려야 합니다. * **뒷모습 (case2.back)**: `animation` 폴더에 있는 2장의 레이어 각각에 **동일한 모자**를 그려야 합니다. 즉, 프레임 수가 달라지더라도 각 프레임 레이어에는 모두 동일한 모자 디자인을 유지해야 하며, 애니메이션 레이어의 순서에 따라 모자와 이펙트를 구분하여 그려야 합니다 [scores] | [judge_reason] | [source_doc] | * **case1.front**: 모자의 앞모습을 그릴 레이어와 앞모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_cap_34**: 모자의 앞모습을 그릴 수 있는 레이어입니다. * **edithere:cap_frontBackCap_92**: 헤어 뒤에 오는 모자의 앞모습을 그릴 수 있는 레이어입니다. * **case2.back**: 모자의 뒷모습을 그릴 레이어와 뒷모습의 일반 헤어와 눌린 헤어 샘플이 포함되어 있습니다. * **edithere:cap_backCap_92**

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | 상태 전이 조건을 검사할 때 rotationAngle % 90 == 0과 같은 부동소수점 비교가 오작동할 수 있는 이유는 무엇인가요? [answer] | 참고 문서에는 `OnConditionCheck()` 메서드 내부에서 `rotationAngle % 90 == 0`과 같은 조건 검사를 사용하는 예제 코드가 제시되어 있습니다. 그러나, **부동소수점(실수) 비교가 오작동할 수 있는 이유**에 대한 설명, 부동소수점의 정밀도 문제, 또는 이를 방지하기 위한 대안(예: 허용 오차 범위 사용 등)에 대한 내용은 제공된 문서에 포함되어 있지 않습니다. 따라서 제공된 문서를 근거로 부동소수점 비교 오작동의 원인을 설명할 수 없습니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | **MyDesk - Create Scripts - Create StateType**을 눌러 새로운 StateType을 생성하고, 상태를 정의합니다. `OnConditionCheck()`를 활용해 상태 전이 조건을 만들 수 있습니다. 아래와 같이 **MoveDown** StateType을 만들고 아래의 예시 코드처럼 활용할 수 있습니다. ```lua Method: void OnUpdate() { self.ParentComponent.Entity.TransformComponent:Translate(0, -0.01) }

[task] | single_turn [pass] | ⏳ 미판정 [title] | 엔티티의 상태 제어하기 [question] | AttackComponent의 IsAttackTarget 함수가 피격 대상의 State가 DEAD일 때 false를 반환하는 이유는 무엇이며, 이것이 게임 로직에 미치는 영향은 무엇인가요? [answer] | AttackComponent의 `IsAttackTarget()` 함수가 피격 대상의 State가 DEAD일 때 `false`를 반환하는 이유는, 이미 사망 상태인 대상은 더 이상 공격 대상이 될 수 없기 때문입니다. 이는 게임 로직에서 죽은 몬스터나 캐릭터가 추가 피해를 입거나 공격 행위를 받는 것을 방지하는 기본적인 방어 기제입니다. 이것이 게임 로직에 미치는 주요 영향은 다음과 같습니다. 1. **불필요한 계산 및 이벤트 발생 방지**: 사망한 엔티티를 공격 대상으로 검색하거나 공격 판정을 수행하지 않으므로, 서버와 클라이 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 어떤 상태에서 다음 상태로 변하는 것을 상태 전이(Transition)라 합니다. 상태 전이가 발생할 때 다양한 이벤트가 발생하고, 이를 활용해 특정 엔티티가 상태 전이를 감지할 수 있습니다. 이벤트는 상태 전이가 발생하기 이전의 상태와 현재 상태(바뀐 상태)의 정보를 갖고 있습니다. 아래와 같은 상황에서 이벤트가 발생합니다. * StateComponent의 상태가 전이되면, [StateChangeEvent](/apiReference/Events/StateChangeEvent)가 함께 발생합니다. * StateComponent가

[task] | code [pass] | ⏳ 미판정 [title] | 제작 과정 안내 [question] | 애니메이션이 0부터 4까지 동일한 위치에 하트를 점점 크게 그리도록, 프레임 인덱스가 증가할 때마다 하트 이펙트 오브젝트의 스케일(Scale) 값을 단계적으로 키워주는 스크립트를 작성해줘 [answer] | 제시된 참고 문서는 아바타 아이템(모자)의 **PSD 파일 내 레이어 작업 과정**과 **포토샵 타임라인 설정**에 대한 가이드입니다. mLua 스크립트에서 이펙트 모자의 애니메이션 프레임이나 스케일을 직접 제어하는 API, 이벤트, 또는 프로퍼티에 대한 정보는 문서에 포함되어 있지 않습니다. 또한, mLua 스크립트 컴포넌트 구조에 해당 기능이 명시되어 있지 않아, 요청하신 "프레임 인덱스가 증가할 때마다 하트 이펙트 오브젝트의 스케일 값을 단계적으로 키워주는 스크립트"를 작성할 수 있는 근거가 부족합니다. 따라서, 문서에 없 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 이펙트 모자를 만들기 위해 **Avatar_Cap_Ani.psd** 파일을 열어 하트 모양 이펙트를 만들어봅시다. | 기본 이펙트 | 하트 이펙트 | | --- | --- | | | | 1. case1.front 폴더 - **edithere:cap_cap_34:0** 레이어에 모자의 앞모습을 그립니다. 2. 모자를 복사해 나머지 3개의 레이어에 동일하게 그립니다. * **edithere:cap_cap_34:1** * **edithere:cap_cap_34:2** * **edithere:cap_cap_

[task] | code [pass] | ⏳ 미판정 [title] | 제작 과정 안내 [question] | 사용자가 'stand', 'walk', 'fly', 'rope', 'ladder' 동작 중 하나를 수행하고 있는지 확인하여, 해당 동작일 경우에만 하트 이펙트 애니메이션을 재생하고 그렇지 않으면 첫 번째 프레임만 표시하도록 하는 스크립트를 작성해줘 [answer] | 제공된 참고 문서에는 특정 동작(`stand`, `walk`, `fly`, `rope`, `ladder`)을 감지하여 조건부 애니메이션 재생을 수행하는 **mLua 스크립트 예제**가 포함되어 있지 않습니다. 문서에는 해당 동작에서만 이펙트가 재생된다는 **기능 설명**과, `ActionStateChangedEvent`를 사용하여 애니메이션 프레임을 제어하는 **단일 코드 스니펫**만 제공되고 있을 뿐, 동작 상태를 판별하여 로직을 분기하는 전체 스크립트 구조나 관련 API(예: 현재 액션 상태를 가져오는 메서드 등)에 대한 정보 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 이펙트 모자를 만들기 위해 **Avatar_Cap_Ani.psd** 파일을 열어 하트 모양 이펙트를 만들어봅시다. | 기본 이펙트 | 하트 이펙트 | | --- | --- | | | | 1. case1.front 폴더 - **edithere:cap_cap_34:0** 레이어에 모자의 앞모습을 그립니다. 2. 모자를 복사해 나머지 3개의 레이어에 동일하게 그립니다. * **edithere:cap_cap_34:1** * **edithere:cap_cap_34:2** * **edithere:cap_cap_

← → 방향키로 페이지 이동 · 숫자 입력 후 Enter로 점프