← 목록

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

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

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | SendEvent로 이벤트를 발생시켰는데 ConnectEvent로 연결해 둔 핸들러가 실행되지 않을 때 확인해야 할 포인트가 무엇인가요? [answer] | `SendEvent`로 이벤트를 발생시켰음에도 `ConnectEvent`로 연결해 둔 핸들러가 실행되지 않을 경우, 다음 포인트들을 순서대로 확인해야 합니다. **1. 이벤트 식별자(Key) 또는 타입(Type) 일치 여부** `ConnectEvent`와 `SendEvent`에서 사용하는 이벤트 식별자가 정확히 일치하는지 확인해야 합니다. - `ConnectEvent`에서 문자열 `key`를 사용했다면, `SendEvent`에서 전달하는 이벤트 객체의 이름이 그 문자열과 정확히 동일해야 합니다. - `ConnectEvent`에서 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService:PlayBasicParticleAttached를 사용하여 자기 자신(Entity)에 BasicParticle을 부착하여 재생하고, OnEndPlay() 생명주기 메서드에서 해당 파티클의 일련번호를 저장해두었다가 RemoveParticle로 정리하는 스크립트를 작성해줘. [answer] | `ParticleService`의 `PlayBasicParticleAttached` 메서드를 사용해 자기 자신에 파티클을 부착하고, 생성 시 반환되는 일련번호를 프로퍼티에 저장한 뒤 `OnEndPlay()`에서 `RemoveParticle`로 정리하는 스크립트입니다. ```lua Property: [None] integer ParticleSerial = 0 Method: [server only] void OnBeginPlay() { -- 자기 자신(self.Entity)에 BasicParticle을 부착하여 재생합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 파티클을 소환하는 기능을 제공합니다. # Methods - **integer PlayAreaParticle(AreaParticleType particleType, Vector2 areaSize, Entity instigator, Vector3 position, float zRotation, Vector3 scale, boolean isLoop = false, Dictionary<string, any> options = nil)** 현재 맵의 고정된 위치에 AreaParticle을 재생하고 이펙트를 제거하기 위한 일련번호를 반

[task] | two_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | ScreenshotService의 동기/비동기 캡처 메서드 차이와 플랫폼별 지원 범위는 어떻게 다른가요? [answer] | ScreenshotService의 캡처 메서드는 수행 방식(동기/비동기)과 결과를 저장하는 방식(파일 저장, 픽셀 데이터 반환, 사진 갤러리 저장)에 따라 구분됩니다. 각 메서드는 모두 `[ClientOnly]` 속성을 가지며, `includeUI` 파라미터를 통해 UI 포함 여부를 지정할 수 있습니다. ### 1. 동기 메서드 (Yield) 동기 메서드는 캡처 수행 중 스크립트 실행을 중단(Yield)하며, 완료 시점에 결과를 즉시 반환합니다. * **`CaptureFullScreenAsFileAndWait`**: 화면 전 [followup] | `CaptureFullScreenAsPixelDataAndWait`가 픽셀 수를 800x600 미만으로 자동 조정할 때, 원본 해상도가 매우 큰 경우 품질 저하가 어떻게 발생하며 이를 방지하는 구체적인 코드는 무엇인가요? [followup_answer] | `CaptureFullScreenAsPixelDataAndWait` 메서드는 캡처된 이미지의 픽셀 총 개수가 800x600(480,000 픽셀) 미만으로 **자동 조정**되도록 설계되어 있습니다. 원본 해상도가 매우 큰 경우(예: 4K 디스플레이) 이 제한이 적용되면 이미지가 **축소(downscale)**되어 반환됩니다. 이로 인해 원본 해상도에서 볼 수 있었던 세부 사항이 손실되는 **품질 저하**가 발생하며, 이는 API의 내장된 동작이므로 스크립트 코드로 직접 방지하거나 원본 해상도를 유지하는 방법은 제공되지 않습니다. [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService:PlayAreaParticle을 사용하여 지정된 좌표에 AreaParticle을 재생하고, 5초 후 _TimerService:SetTimerOnce를 호출하여 반환된 일련번호로 RemoveParticle을 실행해 제거하는 스크립트를 작성해줘. [answer] | ParticleService의 `PlayAreaParticle` 메서드로 지정된 좌표에 AreaParticle을 재생하고, 반환된 일련번호(serial)를 저장한 뒤 `_TimerService:SetTimerOnce`를 통해 5초 후 `RemoveParticle`을 호출하여 제거하는 스크립트는 다음과 같습니다. ```lua Property: [None] number ParticleSerial = 0 Method: [server only] void OnBeginPlay() { -- 1. AreaParticle 재생 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 파티클을 소환하는 기능을 제공합니다. # Methods - **integer PlayAreaParticle(AreaParticleType particleType, Vector2 areaSize, Entity instigator, Vector3 position, float zRotation, Vector3 scale, boolean isLoop = false, Dictionary<string, any> options = nil)** 현재 맵의 고정된 위치에 AreaParticle을 재생하고 이펙트를 제거하기 위한 일련번호를 반

[task] | single_turn [pass] | ⏳ 미판정 [title] | AlignmentType [question] | 부모 오브젝트의 크기가 변할 때 자식의 위치가 어떻게 고정되는지 HorizontalTop과 BottomCenter를 비교해서 설명해 주세요. [answer] | `AlignmentType`은 앵커(Anchor)의 참조 포인트를 결정하며, 부모 오브젝트의 크기가 변할 때 자식의 위치가 어떻게 고정되는지를 정의합니다. 질문하신 `HorizontalTop`과 `BottomCenter`의 차이는 다음과 같습니다. **HorizontalTop (값: 9)** * **고정 방식:** 기준 위치가 부모의 **상단**에 고정됩니다. * **크기 변화 시 동작:** 가로 길이가 부모의 가로 길이와 함께 늘어납니다. 즉, 부모가 가로로 넓어지면 자식의 가로 폭도 함께 늘어나며, 세로 방향에서는 부모 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 앵커의 참조 포인트를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Center | 0 | 기준 위치가 부모 중앙입니다. | | Left | 1 | 기준 위치가 부모 왼쪽 중앙입니다. | | Right | 2 | 기준 위치가 부모 오른쪽 중앙입니다. | | TopCenter | 3 | 기준 위치가 부모 상단 중앙입니다. | | TopLeft | 4 | 기준 위치가 부모 왼쪽 상단입니다. | | TopRight | 5 | 기준 위치가 부모 오른쪽 상단입니다. | | BottomCenter

[task] | code [pass] | ⏳ 미판정 [title] | AlignmentType [question] | AlignmentType.CastFrom(string) 메서드를 활용하여 설정 값인 "TopLeft" 문자열을 AlignmentType enum 으로 변환하여 앵커를 적용하는 스크립트를 작성해줘 [answer] | `AlignmentType.CastFrom(string)`을 사용하여 `"TopLeft"` 문자열을 enum 값으로 변환하고, 해당 엔티티의 `UITransformComponent`에 앵커 옵션을 적용하는 스크립트입니다. ```lua Property: [None] string anchorSetting = "TopLeft" Method: [client only] void OnBeginPlay() { local targetAlignment = AlignmentType.CastFrom(self.anchorSetting) [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 앵커의 참조 포인트를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Center | 0 | 기준 위치가 부모 중앙입니다. | | Left | 1 | 기준 위치가 부모 왼쪽 중앙입니다. | | Right | 2 | 기준 위치가 부모 오른쪽 중앙입니다. | | TopCenter | 3 | 기준 위치가 부모 상단 중앙입니다. | | TopLeft | 4 | 기준 위치가 부모 왼쪽 상단입니다. | | TopRight | 5 | 기준 위치가 부모 오른쪽 상단입니다. | | BottomCenter

[task] | code [pass] | ⏳ 미판정 [title] | PulleyJoint [question] | PulleyJoint의 복사 생성자 PulleyJoint(PulleyJoint joint)를 사용하여 기존 PulleyJoint의 설정을 새로운 인스턴스로 복제한 후, 새 인스턴스의 TargetEntityRef만 다른 Entity로 변경하여 동일한 물리 제약 조건을 다른 Entity 쌍에 적용하는 스크립트를 작성해줘 [answer] | PulleyJoint의 복사 생성자 `PulleyJoint(PulleyJoint joint)`는 기존 인스턴스의 모든 프로퍼티(`CollideConnected`, `GroundAnchorA/B`, `LocalAnchorA/B`, `Ratio`, `TargetEntityRef`)를 복사합니다. 이후 `TargetEntityRef`만 새 Entity로 교체하면, 동일한 도르래 물리 설정(앵커 위치, 줄 비율, 충돌 여부)을 다른 Entity 쌍에 적용할 수 있습니다. 다음은 `PulleyJointComponent`에 기존 Joint가 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 두 Entity의 Anchor와 GroundAnchor의 값을 설정해 선을 만들고, 그 선들의 총 합이 일정하게 유지되도록 합니다. 마치 두 Entity가 도르래에 연결된 것처럼 동작하게 됩니다. PullyJointComponent의 Joints에 추가해 사용합니다. # Properties - **boolean CollideConnected** Joint로 연결된 두 Entity가 서로 충돌할지 여부를 설정합니다. - **Vector2 GroundAnchorA** JointComponent를 가진 Entity의 Groun

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | 화면 캡처를 비동기로 수행할 때 스크립트 실행이 중단되는 현상을 방지하기 위해 어떤 함수를 선택해야 하나요? [answer] | 화면 캡처를 비동기로 수행하여 스크립트 실행이 중단되는 현상을 방지하려면 `Async`로 끝나는 함수를 선택해야 합니다. 참고 문서에 따르면 `Wait`로 끝나는 함수(예: `CaptureScreenRegionAsFileAndWait`)는 `[Yield]` 속성이 있어 수행하는 동안 스크립트 실행이 중단됩니다. 반면, `Async`로 끝나는 함수는 비동기로 수행되어 스크립트 실행이 중단되지 않으며, 완료 시점에 전달된 콜백 함수(`callbackFunction`)를 통해 결과를 수신합니다. 사용 가능한 비동기 함수는 다음과 같습 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | to, boolean includeUI = true) [ClientOnly] [Yield]** 화면 일부를 캡처해 PNG 파일로 저장합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Windows PC, macOS, Android, iOS 환경에서 지원합니다. - **void CaptureScreenRegionAsFileAsync(string fileName, Vector2 from, Vector2 to, func<ScreenshotError, string> callback

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | PlayBasicParticle과 PlaySpriteParticleAttached를 사용할 때 두 번째 인자로 Entity를 전달하면 파티클이 플레이어에 고정되는 원리가 무엇인가요? [answer] | 제공된 참고 문서에는 `PlayBasicParticle`과 `PlaySpriteParticleAttached` 메서드의 두 번째 인자(Entity)에 대한 구체적인 동작 원리나 파라미터 설명이 포함되어 있지 않습니다. 문서에는 해당 메서드를 호출할 때 두 번째 인자로 `self.Entity`를 전달하는 **코드 예제**만 제시되어 있으며, 이를 통해 파티클이 플레이어에 고정되는지 여부나 그 내부적 원리에 대한 기술적 설명은 찾을 수 없습니다. 따라서 요청하신 원리에 대해 답변할 수 있는 정보가 문서에 없습니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService:PlayAreaParticleAttached를 사용하여 지정된 parentEntity에 AreaParticle을 부착하여 재생하고, TouchEvent 이벤트 핸들러가 트리거될 때마다 새로운 파티클을 재생하되 이전 파티클은 RemoveParticle로 즉시 제거하는 로직을 구현하는 스크립트를 작성해줘. [answer] | `_ParticleService:PlayAreaParticleAttached` 메서드는 `parentEntity`에 파티클을 부착할 때 `localPosition`, `localZRotation`, `localScale`을 인수로 받아야 하며, 반환값인 일련번호를 통해 `RemoveParticle`로 제거할 수 있습니다. TouchEvent 이벤트 핸들러가 트리거될 때마다 이전 파티클의 일련번호를 저장해 두었다가, 새로운 파티클을 재생하기 전에 해당 일련번호로 즉시 제거하는 로직을 적용한 스크립트는 다음과 같습니다. ```lua [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 파티클을 소환하는 기능을 제공합니다. # Methods - **integer PlayAreaParticle(AreaParticleType particleType, Vector2 areaSize, Entity instigator, Vector3 position, float zRotation, Vector3 scale, boolean isLoop = false, Dictionary<string, any> options = nil)** 현재 맵의 고정된 위치에 AreaParticle을 재생하고 이펙트를 제거하기 위한 일련번호를 반

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | 스크립트에서 KeyDown 이벤트 시 PlaySpriteParticleAttached로 생성한 파티클의 Serial 값을 변수에 저장해 두고, KeyUp 이벤트에서 RemoveParticle로 삭제하는 방식 외에 파티클이 자동으로 사라지도록 설정하는 방법이 있나요? [answer] | 제공된 문서에는 `PlaySpriteParticleAttached`로 생성한 파티클이 자동으로 사라지도록 설정하는 옵션이나 메서드에 대한 정보가 없습니다. 문서에 명시된 `PlaySpriteParticleAttached`의 사용 예제에서는 반환된 `Serial` 값을 변수에 저장하고, `KeyUp` 이벤트에서 `_ParticleService:RemoveParticle(self.ParticleSerial)`을 호출하여 수동으로 삭제하는 방식만 제시되어 있습니다. 따라서 주어진 참고 문서 범위 내에서는 파티클이 자동으로 사라지도록 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BackgroundType [question] | BackgroundType에서 단일 색상 배경을 나타내는 멤버의 이름과 값, 그리고 그 설명을 한 문장으로 요약해서 작성하세요. [answer] | BackgroundType에서 단일 색상 배경을 나타내는 멤버는 이름이 SolidColor이고 값이 2이며, 단일 색상 배경을 의미합니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배경 종류를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | 0 | 기본값입니다. 사용하는 배경이 없습니다. | | Template | 1 | 메이플스토리 월드가 제공하는 배경입니다. | | SolidColor | 2 | 단일 색상 배경입니다. | | Web | 3 | 웹 이미지 배경입니다. | | Gradient | 4 | 그라데이션 배경입니다. | | Sprite | 5 | 단일 스프라이트 이미지 배경입니다. | # Methods - **BackgroundType

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | PlayBasicParticle 호출 시 options 테이블에 SortingLayer와 Color를 지정했는데, 파티클이 다른 오브젝트 뒤에 가려지거나 색상이 안 바뀌는 경우가 발생할 수 있는 원인은 무엇인가요? [answer] | 제공된 참고 문서에는 `PlayBasicParticle`의 `options` 테이블에서 `SortingLayer`와 `Color`가 지정되었을 때 파티클이 가려지거나 색상이 적용되지 않는 현상의 **원인 분석이나 해결 방안이 명시되어 있지 않습니다.** 문서에는 단순히 `options` 테이블에 `["SortingLayer"]`와 `["Color"]`를 포함하여 `PlayBasicParticle`을 호출하는 **사용 예제 코드**만 제시되어 있을 뿐, 이 파라미터들이 제대로 동작하지 않을 수 있는 이유(예: 레이어 충돌, 렌더링 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BackgroundType [question] | BackgroundType CastFrom 메서드의 시그니처 두 가지를 코드 블록으로만 출력하고 각 용도를 주석으로 설명하세요. [answer] | ```lua -- 숫자 값을 BackgroundType 열거형으로 변환하는 정적 메서드 BackgroundType CastFrom(number value) -- 문자열 값을 BackgroundType 열거형으로 변환하는 정적 메서드 BackgroundType CastFrom(string value) ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배경 종류를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | 0 | 기본값입니다. 사용하는 배경이 없습니다. | | Template | 1 | 메이플스토리 월드가 제공하는 배경입니다. | | SolidColor | 2 | 단일 색상 배경입니다. | | Web | 3 | 웹 이미지 배경입니다. | | Gradient | 4 | 그라데이션 배경입니다. | | Sprite | 5 | 단일 스프라이트 이미지 배경입니다. | # Methods - **BackgroundType

[task] | code [pass] | ⏳ 미판정 [title] | AreaParticleType [question] | AreaParticleComponent의 파티클 프리셋을 Rain으로 설정하는 스크립트를 작성해줘 [answer] | `AreaParticleComponent`의 `AreaParticleType` 프로퍼티에 `Rain` 값을 대입하여 비 파티클 효과를 적용할 수 있습니다. ```lua Property: [None] AreaParticleType ParticlePreset = AreaParticleType.None Method: [client only] void OnBeginPlay() { local areaParticleComponent = self.Entity.AreaParticleComponent areaParticleComp [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | AreaParticleComponent에서 사용하는 파티클 프리셋 타입입니다. # Members | 이름 | 값 | 설명 | |---|---|---| | None | 0 | 기본값입니다. 사용하는 파티클이 없습니다. | | Rain | 1 | 비가 내리는 파티클입니다. | | Snow | 2 | 눈이 내리는 파티클입니다. | | FogCalm | 3 | 안개구름 파티클입니다. | | FogHeavy | 4 | 하강하는 안개구름 파티클입니다. | | FogLively | 5 | 피어오르는 안개구름 파티클입니다. | | CalmSt

[task] | code [pass] | ⏳ 미판정 [title] | AreaParticleType [question] | AreaParticleComponent에 StarFieldSimple 파티클을 설정하고 OnBeginPlay 시점에 로그로 출력하는 스크립트를 작성해줘 [answer] | `AreaParticleComponent` 에 `StarFieldSimple` 파티클을 설정하고, `OnBeginPlay` 시점에 해당 설정이 완료되었음을 로그로 출력하는 스크립트는 다음과 같습니다. ```lua Method: [server only] void OnBeginPlay() { self.Entity.AreaParticleComponent.ParticleType = AreaParticleType.StarFieldSimple log("AreaParticleComponent에 StarFieldSimple 파티클 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | AreaParticleComponent에서 사용하는 파티클 프리셋 타입입니다. # Members | 이름 | 값 | 설명 | |---|---|---| | None | 0 | 기본값입니다. 사용하는 파티클이 없습니다. | | Rain | 1 | 비가 내리는 파티클입니다. | | Snow | 2 | 눈이 내리는 파티클입니다. | | FogCalm | 3 | 안개구름 파티클입니다. | | FogHeavy | 4 | 하강하는 안개구름 파티클입니다. | | FogLively | 5 | 피어오르는 안개구름 파티클입니다. | | CalmSt

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService:PlaySpriteParticle을 사용하여 특정 spriteRUID로 SpriteParticle을 재생하되, 생성 실패 시 0을 반환하는 값을 확인하여 로그를 출력하고, 성공 시에는 10초 후 자동 제거되도록 _TimerService를 설정하는 스크립트를 작성해줘. [answer] | `_ParticleService:PlaySpriteParticle` 메서드를 호출하여 `spriteRUID`를 지정해 파티클을 재생합니다. 이 메서드는 생성 성공 시 파티클의 일련번호(정수)를, 실패 시 `0`을 반환합니다. 반환값이 `0`이 아닌 경우에만 성공으로 간주하고, `_TimerService:SetTimerOnce`를 사용해 10초 후 해당 일련번호로 파티클을 제거하도록 설정하는 스크립트입니다. ```lua Property: [None] string SpriteRUID = "sprite://your_sprite_id" [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 파티클을 소환하는 기능을 제공합니다. # Methods - **integer PlayAreaParticle(AreaParticleType particleType, Vector2 areaSize, Entity instigator, Vector3 position, float zRotation, Vector3 scale, boolean isLoop = false, Dictionary<string, any> options = nil)** 현재 맵의 고정된 위치에 AreaParticle을 재생하고 이펙트를 제거하기 위한 일련번호를 반

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | SpriteParticleType.StreamSharp와 같은 스프라이트 파티클을 사용할 때 "000000"과 같은 문자열 인자가 어떤 역할을 하는지, 그리고 이 값을 변경하면 파티클의 외관이 어떻게 달라지나요? [answer] | 제공된 참고 문서에는 `_ParticleService:PlaySpriteParticleAttached` 및 `_ParticleService:PlaySpriteParticle` 호출 시 `"000000"` 문자열 인자가 전달되는 코드 예시만 포함되어 있습니다. 그러나 해당 문자열 인자가 구체적으로 어떤 역할을 하는지(예: 색상 코드, 리소스 ID 등) 또는 이 값을 변경했을 때 파티클의 외관이 어떻게 달라지는지에 대한 설명, API 문서, 또는 파라미터 정의가 참고 문서에 존재하지 않습니다. 따라서 주어진 문서 범위 내에서 이 인 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService의 ConnectEvent 메서드로 "MagicEffect" 이벤트 핸들러를 연결하고, OnBeginPlay에서 연결을 시작하며 OnEndPlay에서 DisconnectEvent를 호출하여 연결을 해제하는 스크립트를 작성해줘 [answer] | ParticleService의 `ConnectEvent`와 `DisconnectEvent` 메서드를 사용하여 "MagicEffect" 이벤트를 관리하는 스크립트입니다. 참고 문서에 따르면 `ConnectEvent`는 `string key` 또는 `Type eventType`를 인자로 받으며, 반환값으로 `EventHandlerBase` 타입의 핸들러 객체를 반환합니다. `DisconnectEvent`는 `string key` (또는 `Type`)와 `EventHandlerBase` 객체를 인자로 받아 연결을 해제합니다. 따라서 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BadgeGrade [question] | CastFrom 메서드를 사용할 때 전달 가능한 파라미터의 데이터 타입 두 가지를 코드 블록으로만 출력하세요. [answer] | ```lua number string ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배지의 등급을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Normal | 0 | 노멀 등급 배지입니다. | | Rare | 1 | 레어 등급 배지입니다. | | Epic | 2 | 에픽 등급 배지입니다. | # Methods - **BadgeGrade CastFrom(number value) [Static]** 숫자를 해당 타입으로 변환합니다. - **BadgeGrade CastFrom(string value) [Static]** 문자열을 해당 타입으로 변환합니다.

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BadgeGrade [question] | Epic 등급에 해당하는 수치 값을 3문장 이내로 설명하세요. [answer] | Epic 등급 배지에 해당하는 수치 값은 2입니다. [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배지의 등급을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Normal | 0 | 노멀 등급 배지입니다. | | Rare | 1 | 레어 등급 배지입니다. | | Epic | 2 | 에픽 등급 배지입니다. | # Methods - **BadgeGrade CastFrom(number value) [Static]** 숫자를 해당 타입으로 변환합니다. - **BadgeGrade CastFrom(string value) [Static]** 문자열을 해당 타입으로 변환합니다.

[task] | single_turn [pass] | ⏳ 미판정 [title] | ParticleService [question] | 더블 점프 구현 시 RigidbodyComponent:SetForce로 힘을 가한 직후 PlayBasicParticle을 호출했는데, 파티클이 플레이어의 현재 위치가 아닌 예상치 못한 위치에 생성되는 현상을 어떻게 해결할 수 있나요? [answer] | 참고 문서에 제시된 예제를 보면, `RigidbodyComponent:SetForce` 호출 직후 `self.Entity.TransformComponent.Position`을 바로 참조하여 파티클 위치(`pos`)로 사용하고 있습니다. 문서에는 파티클이 예상치 못한 위치에 생성되는 현상의 원인에 대한 명시적인 설명이나, 이를 해결하기 위한 별도의 API나 설정 옵션(예: 파티클 위치 보정, 프레임 대기 등)에 대한 정보가 포함되어 있지 않습니다. 따라서 문서 내에서 확인할 수 있는 정보로는 이 현상의 구체적인 원인을 파악하거나 해 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | # Examples 플레이어의 더블 점프 및 스킬 이펙트 효과를 파티클로 구현하는 예제입니다. ```lua Property : [None] number ParticleSerial = 0 Event Handler: [service: InputService] HandleKeyDownEvent (KeyDownEvent event) { -- Parameters local key = event.key -------------------------------------------------------- if key == Ke

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BackgroundType [question] | BackgroundType 열거형의 모든 멤버 이름과 값을 표로 정리해서 나열하세요. [answer] | BackgroundType 열거형의 모든 멤버 이름과 값은 다음과 같습니다. | 이름 | 값 | 설명 | |---|---|---| | Unknown | 0 | 기본값입니다. 사용하는 배경이 없습니다. | | Template | 1 | 메이플스토리 월드가 제공하는 배경입니다. | | SolidColor | 2 | 단일 색상 배경입니다. | | Web | 3 | 웹 이미지 배경입니다. | | Gradient | 4 | 그라데이션 배경입니다. | | Sprite | 5 | 단일 스프라이트 이미지 배경입니다. | [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배경 종류를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Unknown | 0 | 기본값입니다. 사용하는 배경이 없습니다. | | Template | 1 | 메이플스토리 월드가 제공하는 배경입니다. | | SolidColor | 2 | 단일 색상 배경입니다. | | Web | 3 | 웹 이미지 배경입니다. | | Gradient | 4 | 그라데이션 배경입니다. | | Sprite | 5 | 단일 스프라이트 이미지 배경입니다. | # Methods - **BackgroundType

[task] | two_turn [pass] | ⏳ 미판정 [title] | AlignmentType [question] | AlignmentType의 16가지 멤버가 각각 어떤 레이아웃 상황에 사용되나요? [answer] | `AlignmentType`은 앵커의 참조 포인트를 나타내며, 위젯(UI 요소)이 부모 컨테이너 내에서 어떻게 배치되고 리사이즈되는지를 결정합니다. 16가지 멤버는 고정 위치 배치, 한쪽 축 확장, 전체 확장으로 나눌 수 있습니다. ### 1. 고정 위치 배치 (9가지) 부모의 크기가 변해도 위젯 자체의 크기는 변하지 않으며, 지정된 앵커 포인트에 고정됩니다. | 멤버 | 값 | 레이아웃 상황 | | :--- | :--- | :--- | | `Center` | 0 | 부모의 **중앙**에 고정됩니다. | | `Left` | 1 [followup] | HorizontalTop, VerticalLeft, StretchAll과 같은 9번 이후의 값들은 부모 크기 변화 시 어떻게 동작하며, 기존 9개의 고정 위치(0~8)와 무엇이 다른가요? [followup_answer] | 9번부터 15번까지의 `AlignmentType` 값들은 0~8번의 고정 위치 배치와 달리, **부모 컨테이너의 크기가 변경될 때 위젯의 크기가 자동으로 조정**되도록 설계되어 있습니다. ### 1. 9~15번 값의 동작 원리 이 값들은 단순히 위치만 고정하는 것이 아니라, **특정 축(가로 또는 세로)의 길이가 부모의 해당 축 길이와 연동되어 함께 늘어납니다.** * **9~11번 (Horizontal 계열):** * `HorizontalTop` (9), `HorizontalCenter` (10), `Horiz [scores] | [judge_reason] | [source_doc] | 앵커의 참조 포인트를 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Center | 0 | 기준 위치가 부모 중앙입니다. | | Left | 1 | 기준 위치가 부모 왼쪽 중앙입니다. | | Right | 2 | 기준 위치가 부모 오른쪽 중앙입니다. | | TopCenter | 3 | 기준 위치가 부모 상단 중앙입니다. | | TopLeft | 4 | 기준 위치가 부모 왼쪽 상단입니다. | | TopRight | 5 | 기준 위치가 부모 오른쪽 상단입니다. | | BottomCenter

[task] | code [pass] | ⏳ 미판정 [title] | ParticleService [question] | ParticleService의 ConnectEvent(Type eventType, IScriptFunction eventHandler) 오버로드를 사용하여 특정 이벤트 타입에 핸들러를 연결하고, SendEvent로 해당 타입의 이벤트를 발생시켜 연결된 핸들러가 실행되는지 확인하는 스크립트를 작성해줘 [answer] | ParticleService의 `ConnectEvent(Type eventType, IScriptFunction eventHandler)` 오버로드는 이벤트의 **타입(Type)**을 직접 인수로 받아 연결하는 방식입니다. 하지만 참고 문서에는 **mLua 스크립트 코드에서 `Type` 객체를 직접 생성하거나 참조하는 문법**이 명시되어 있지 않습니다. 또한 `IScriptFunction` 타입을 mLua에서 어떻게 인스턴스화하는지(예: 함수 리터럴을 직접 전달하는지, 별도 래퍼 객체를 생성하는지)에 대한 구체적인 코드 예시도 문서 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지

[task] | single_turn [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | MobileShareService와 연동해서 캡처 이미지를 공유하려면 어떤 캡처 메서드를 선택해서 사용하는 것이 좋나요? [answer] | MobileShareService와 연동하여 캡처 이미지를 공유하려면 **`CaptureFullScreenAsFileAndWait`** 또는 **`CaptureFullScreenAsFileAsync`** 메서드를 사용해야 합니다. 문서에서 명시적으로 "MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다"라고 설명된 메서드는 파일로 저장하는 두 가지 방식뿐입니다. 픽셀 데이터(`RawImage`)를 반환하는 `CaptureFullScreenAsPixelData*` 계열 메서드는 공유 연동에 대한 언급이 없 [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | single_turn [pass] | ⏳ 미판정 [title] | AreaParticleType [question] | Windlines 계열 파티클 중 직선으로 빠르게 움직이는 효과를 원할 때 선택해야 하는 정확한 enum 값은 무엇인가요? [answer] | Windlines 계열 파티클 중 직선으로 빠르게 움직이는 효과를 원할 때 선택해야 하는 정확한 enum 값은 **WindlinesSpeedy**입니다. 해당 값은 숫자적으로 **12**에 해당하며, "빠르게 직선으로 움직이는 얇은 선 파티클"을 나타냅니다. ```lua AreaParticleType.WindlinesSpeedy ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | AreaParticleComponent에서 사용하는 파티클 프리셋 타입입니다. # Members | 이름 | 값 | 설명 | |---|---|---| | None | 0 | 기본값입니다. 사용하는 파티클이 없습니다. | | Rain | 1 | 비가 내리는 파티클입니다. | | Snow | 2 | 눈이 내리는 파티클입니다. | | FogCalm | 3 | 안개구름 파티클입니다. | | FogHeavy | 4 | 하강하는 안개구름 파티클입니다. | | FogLively | 5 | 피어오르는 안개구름 파티클입니다. | | CalmSt

[task] | instruction_following [pass] | ⏳ 미판정 [title] | BadgeGrade [question] | BadgeGrade의 모든 멤버를 이름, 값, 설명 순서로 표로 정리하세요. [answer] | BadgeGrade의 모든 멤버는 다음과 같습니다. | 이름 | 값 | 설명 | |---|---|---| | Normal | 0 | 노멀 등급 배지입니다. | | Rare | 1 | 레어 등급 배지입니다. | | Epic | 2 | 에픽 등급 배지입니다. | [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 배지의 등급을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Normal | 0 | 노멀 등급 배지입니다. | | Rare | 1 | 레어 등급 배지입니다. | | Epic | 2 | 에픽 등급 배지입니다. | # Methods - **BadgeGrade CastFrom(number value) [Static]** 숫자를 해당 타입으로 변환합니다. - **BadgeGrade CastFrom(string value) [Static]** 문자열을 해당 타입으로 변환합니다.

[task] | code [pass] | ⏳ 미판정 [title] | ScreenshotService [question] | _ScreenshotService:CaptureFullScreenAsFileAndWait("my_screenshot", true) 를 호출하여 화면 전체를 캡처하고, 반환된 에러 코드가 ScreenshotError.Success 가 아닐 경우 log() 로 실패 경로를 출력하는 [client only] 스크립트를 작성해줘 [answer] | ```lua [client only] void CaptureScreen() { local errorCode, filePath = _ScreenshotService:CaptureFullScreenAsFileAndWait("my_screenshot", true) if errorCode ~= ScreenshotError.Success then log("캡처 실패: " .. tostring(errorCode) .. ", 경로: " .. filePath) end } ``` [followup] | [followup_answer] | [scores] | [judge_reason] | [source_doc] | 화면의 전체 또는 일부를 캡처하는 기능을 제공합니다. # Methods - **ScreenshotError, string CaptureFullScreenAsFileAndWait(string fileName, boolean includeUI = true) [ClientOnly] [Yield]** 화면 전체를 캡처해 PNG 파일로 저장합니다. MobileShareService와 연동해 캡처 이미지를 공유할 때 사용합니다. 저장을 완료하면 에러 코드와 저장 경로를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다. Window

[task] | two_turn [pass] | ⏳ 미판정 [title] | BadgeGrade [question] | 배지 등급(BadgeGrade)의 종류와 값은 어떻게 정의되어 있나요? [answer] | 배지 등급(BadgeGrade)은 총 3가지로 정의되며, 각 등급은 다음과 같은 정수 값과 설명을 가집니다. * **Normal**: 값 `0` (노멀 등급 배지) * **Rare**: 값 `1` (레어 등급 배지) * **Epic**: 값 `2` (에픽 등급 배지) 또한, 숫자나 문자열을 해당 등급 타입으로 변환하기 위해 정적 메서드 `CastFrom`을 제공합니다. ```lua -- BadgeGrade 사용 예시 local normalGrade = BadgeGrade.Normal local rareGrade = [followup] | BadgeGrade CastFrom을 사용해 숫자 2를 Enum 값으로 변환하는 코드를 작성해 주세요. [followup_answer] | 숫자 2를 `BadgeGrade` Enum 값으로 변환하는 코드는 다음과 같습니다. ```lua local grade = BadgeGrade.CastFrom(2) log("Converted BadgeGrade: " .. tostring(grade)) ``` 이 코드에서 `BadgeGrade.CastFrom(2)`는 정적 메서드 `CastFrom`을 호출하여 숫자 2를 `Epic` 등급으로 변환합니다. [scores] | [judge_reason] | [source_doc] | 배지의 등급을 나타냅니다. # Members | 이름 | 값 | 설명 | |---|---|---| | Normal | 0 | 노멀 등급 배지입니다. | | Rare | 1 | 레어 등급 배지입니다. | | Epic | 2 | 에픽 등급 배지입니다. | # Methods - **BadgeGrade CastFrom(number value) [Static]** 숫자를 해당 타입으로 변환합니다. - **BadgeGrade CastFrom(string value) [Static]** 문자열을 해당 타입으로 변환합니다.

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