← 목록

mLua · Nemotron-CC 리프레이즈 (CPT)

총 8,200개 · 페이지 90/274
🔀 랜덤
불러오는 중…

[task] | knowledge_list [title] | WorldShopService [category] | Services [rephrased] | * `_WorldShopService`는 조건에 해당하는 상품을 검색하기 위해 `GetProductsAndWait(WorldShopProductType, WorldShopProductStatus)` 메서드를 제공합니다. * `GetProductsAndWait` 메서드의 첫 번째 매개변수는 `WorldShopProductType` 타입이며, 예시에서는 `WorldShopProductType.Item`을 사용하여 아이템 종류를 지정합니다. * `GetProductsAndWait` 메서드의 두 번째 매개변수는 `WorldSho [original] | #### GetProductsAndWait `GetProductsAndWait()` 함수를 이용해 조건에 해당하는 상품들을 검색할 수 있습니다. 이 함수가 리턴하는 `WorldShopProductPages` 타입의 객체는 검색된 결과가 많을 경우 결과를 페이지 단위로 나눠 구할 수 있게 해줍니다. ```lua Method: void SearchOnSaleItems () { -- 상품 종류가 아이템이고, 판매 상태가 판매 중인 상품을 검색합니다. local pages = _WorldShopService:GetProductsAn [chunk_id] | Services:645:4

[task] | extract_knowledge [title] | ResourceService [category] | Services [rephrased] | # 4. 스크린샷을 스프라이트 리소스로 업로드하기 ## 4.1 개념 설명 `ResourceService`는 클라이언트에서 생성된 픽셀 데이터를 서버로 전송하여 영구적인 스프라이트 리소스로 변환하는 기능을 제공합니다. 이 과정은 크게 세 단계로 구성됩니다. 1. **업로드 검증(서버)**: 어떤 유저가 스프라이트를 업로드할 수 있는지를 결정하는 로직을 서버에 등록합니다. 2. **캡처 및 요청(클라이언트)**: `ScreenshotService`를 사용하여 화면을 캡처하고, `ResourceService`에 비동기 업로드를 [original] | `ResourceService`를 이용해 스크린샷을 스프라이트 리소스로 만들어 업로드하는 예제입니다. 유저가 스크린샷을 업로드 했을 때 업로드를 허용하는 함수를 먼저 만들어야 합니다. 업로드 허용 결정 함수는 월드가 생성될 때 등록되고 계속해서 유지되어야 하므로 Logic의 함수로 작성하는 것을 권장합니다. 한 업로드 허용 판단은 서버에서 진행되므로 함수 등록도 서버에서 수행되어야 합니다. 이 예제는 업로드 허가를 받은 유저인지 확인하고 허용 여부를 결정합니다. ```lua [server only] void OnBeginPlay( [chunk_id] | Services:644:3

[task] | diverse_qa [title] | WorldShopService [category] | Services [rephrased] | 질문: `WorldShopService`에서 상품 지급 함수는 어떤 매개변수를 받아야 하며, 어떤 타입의 값을 반환해야 하는가요? 답변: 상품 지급 함수는 `WorldShopPurchaseInfo`를 매개변수로 받고, boolean을 반환해야 합니다. 질문: `WorldShopPurchaseInfo` 구조체에 어떤 정보가 포함되어 있나요? 답변: `WorldShopPurchaseInfo`에는 구매한 유저, 구매한 상품과 같이 처리할 구매의 정보가 들어 있습니다. 질문: 상품 지급이 정상적으로 진행되어 구매를 완료하려면 함수에서 [original] | 상품 지급 함수는 `WorldShopPurchaseInfo`를 매개 변수로 받고 boolean을 반환해야 합니다. `WorldShopPurchaseInfo`에는 구매한 유저, 구매한 상품과 같은 처리할 구매의 정보가 들어있습니다. 이를 이용해 상품을 지급하거나 지급하지 않을지 여부를 결정합니다. 상품 지급이 정상적으로 진행되어 구매를 완료시키려면 true를 리턴합니다. 만약 상품을 지급할 수 없다고 판단되어 정상적인 구매 과정을 수행할 수 없다면 false를 리턴합니다. false를 리턴한 구매의 경우, 구매를 수행한 유저가 다음에 [chunk_id] | Services:645:2

[task] | extract_knowledge [title] | ResourceService [category] | Services [rephrased] | # ResourceService `ResourceService`는 메이플스토리 월드(mLua) 환경에서 리소스(스프라이트, 애니메이션 클립 등)의 로딩, 캐시 관리, 업로드 및 메모리 해제를 담당하는 서비스입니다. ## 개념 설명 mLua에서 리소스는 **RUID(Resource Unique ID)**를 통해 식별됩니다. 리소스는 로딩 시 자동으로 캐시(Cache)되며, 이는 메모리에서 해제되지 않고 필요 시 재사용되도록 설계되었습니다. 따라서 메모리 관리를 위해서는 캐시 제거와 비동기 로딩, 그리고 사용하지 않는 리소스의 명 [original] | 리소스와 관련된 기능을 제공하는 서비스입니다. # Methods - **void ClearCaches()** 불러온 모든 리소스를 캐시에서 제거합니다. 리소스를 메모리에서 해제하려면 ClearCaches() 함수로 캐시를 먼저 제거한 후 UnloadUnusedResources() 함수를 사용합니다. - **ResourceType GetTypeAndWait(string RUID) [Yield]** RUID의 리소스 타입을 반환합니다. - **AnimationClip LoadAnimationClipAndWait(string [chunk_id] | Services:644:0

[task] | extract_knowledge [title] | WorldShopService [category] | Services [rephrased] | # WorldShopService `WorldShopService`는 월드 내에서 유료 재화를 사용하여 상품을 구매하는 기능을 제공하기 위한 서비스입니다. 상품 정보 조회, 구매 창 출력, 구매 처리 콜백 등록, 그리고 이용권 보유 여부 확인을 지원합니다. ## 개념 설명 이 서비스는 클라이언트와 서버 간에 상품 구매 흐름을 관리합니다. 1. **상품 정보 조회**: 특정 상품 ID 또는 조건에 맞는 상품 목록을 비동기적으로(Yield) 가져옵니다. 2. **구매 트리거**: 클라이언트에서 `PromptPurchase`를 호출 [original] | 유료 재화를 통한 월드 내 상품 구매 관련 기능을 제공합니다. # Methods - **WorldShopProduct GetProductAndWait(string productId) [Yield]** 상품의 정보를 얻습니다. 수행하는 동안 스크립트 실행을 중단합니다. 출시된 월드에서는 Waiting, Ing, End 상태의 상품의 정보를 얻을 수 있고, 제작 중인 월드에서는 Register, Waiting, Ing, End 상태의 상품의 정보를 얻을 수 있습니다. - **WorldShopProductPages GetProdu [chunk_id] | Services:645:0

[task] | distill [title] | DefaultUserEnterLeaveLogic [category] | Logics [rephrased] | # [Logics] DefaultUserEnterLeaveLogic 유저 입장/퇴장 기능을 제공하는 기본 로직 컴포넌트입니다. ## Properties | 속성 | 타입 | 설명 | | :--- | :--- | :--- | | **PlayerUri** | `string` | 플레이어 엔티티 생성 시 사용할 Model ID. <br>※ `Server` 공간에서만 수정 시 적용됩니다. | | **StartPoint** | `string` | 시작 맵의 Entry Path. <br>※ `Server` 공간에서만 수정 시 적용됩니다. [original] | 유저의 입장과 퇴장에 관련된 기능을 제공합니다. # Properties - **string PlayerUri** 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. - **string StartPoint** 시작 맵의 이름입니다. 맵 콘텍스트 메뉴의 Copy Entry Path를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. # Methods ##### inherited f [chunk_id] | Logics:650:0

[task] | extract_knowledge [title] | WorldShopService [category] | Services [rephrased] | # WorldShopService: 상품 검색 (GetProductsAndWait) ## 개념 설명 `WorldShopService`의 `GetProductsAndWait()` 메서드는 특정 조건에 부합하는 월드 숍 상품을 검색하는 비동기 함수입니다. 이 함수는 검색 결과가 많을 경우 모든 데이터를 한 번에 반환하지 않고, `WorldShopProductPages` 타입의 객체를 반환합니다. 이 객체를 통해 개발자는 검색 결과를 페이지 단위로 나누어 순차적으로 처리할 수 있습니다. ## API 사용법 * **함수명**: `G [original] | #### GetProductsAndWait `GetProductsAndWait()` 함수를 이용해 조건에 해당하는 상품들을 검색할 수 있습니다. 이 함수가 리턴하는 `WorldShopProductPages` 타입의 객체는 검색된 결과가 많을 경우 결과를 페이지 단위로 나눠 구할 수 있게 해줍니다. ```lua Method: void SearchOnSaleItems () { -- 상품 종류가 아이템이고, 판매 상태가 판매 중인 상품을 검색합니다. local pages = _WorldShopService:GetProductsAn [chunk_id] | Services:645:4

[task] | diverse_qa [title] | WorldShopService [category] | Services [rephrased] | 질문: `WorldShopService`의 `GetProductsAndWait()` 함수는 어떤 용도로 사용됩니까? 답변: 조건에 해당하는 상품들을 검색할 수 있게 해주는 함수입니다. 질문: `GetProductsAndWait()` 함수가 반환하는 객체의 타입은 무엇이며, 이 타입의 주요 특징은 무엇입니까? 답변: `WorldShopProductPages` 타입의 객체를 반환하며, 검색된 결과가 많을 경우 결과를 페이지 단위로 나눠 구할 수 있게 해줍니다. 질문: 아래 코드에서 `WorldShopProductType.Item`과 [original] | #### GetProductsAndWait `GetProductsAndWait()` 함수를 이용해 조건에 해당하는 상품들을 검색할 수 있습니다. 이 함수가 리턴하는 `WorldShopProductPages` 타입의 객체는 검색된 결과가 많을 경우 결과를 페이지 단위로 나눠 구할 수 있게 해줍니다. ```lua Method: void SearchOnSaleItems () { -- 상품 종류가 아이템이고, 판매 상태가 판매 중인 상품을 검색합니다. local pages = _WorldShopService:GetProductsAn [chunk_id] | Services:645:4

[task] | distill [title] | MODTweenLogic [category] | Logics [rephrased] | # [Logics] MODTweenLogic **[Deprecated]** 더 이상 사용되지 않습니다. 용도에 따라 `TweenLogic`, `TweenLineComponent`, `TweenFloatingComponent`, `TweenCircularComponent`를 사용하세요. ## Methods 모든 메서드는 **[Deprecated] [Static]** 입니다. - **float Ease(EaseType type, float from, float totalDelta, float time, float duration [original] | 더는 사용하지 않는 Logic입니다. 용도에 맞게 TweenLogic, TweenLineComponent, TweenFloatingComponent, TweenCircularComponent를 사용하세요. # Methods - **float Ease(EaseType type, float from, float totalDelta, float time, float duration) [Deprecated] [Static]** 더는 사용하지 않는 함수입니다. TweenLogic의 Ease(float, float, float, Eas [chunk_id] | Logics:651:0

[task] | distill [title] | ComponentRef [category] | Misc [rephrased] | # [Misc] ComponentRef `ComponentRef`는 `Component`의 Id를 저장해 두고, 실제 접근 시점에 해당 컴포넌트를 찾는 참조 타입입니다. 사용법은 `Component` 타입과 동일합니다. ## Properties - **string EntityId [ReadOnly]**: 참조 대상 `Component`를 가진 `Entity`의 Id. - **string TypeName [ReadOnly]**: 참조 대상 `Component`의 타입명. ## Constructors - **`Component [original] | 컴포넌트를 참조합니다. 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾습니다. 사용법은 Component 타입과 똑같습니다. # Properties - **string EntityId [ReadOnly]** 참조하고 있는 Component를 가진 Entity의 Id입니다. - **string TypeName [ReadOnly]** 참조하고 있는 Component의 타입명입니다. # Constructors - **ComponentRef(Component component)** 지정한 compon [chunk_id] | Misc:655:0

[task] | knowledge_list [title] | DefaultUserEnterLeaveLogic [category] | Logics [rephrased] | * `PlayerUri` 속성은 `string` 타입으로, 플레이어 엔티티 생성 시 사용할 Model의 Id를 저장하며, Server 공간에서만 변경해야 적용됩니다. * `StartPoint` 속성은 `string` 타입으로, 시작 맵의 이름을 저장하며, Server 공간에서만 변경해야 적용됩니다. * `ConnectEvent(string key, IScriptFunction eventHandler)` 메서드는 `string` 타입의 `key`와 `IScriptFunction` 타입의 `eventHandler`를 매개변수 [original] | 유저의 입장과 퇴장에 관련된 기능을 제공합니다. # Properties - **string PlayerUri** 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. - **string StartPoint** 시작 맵의 이름입니다. 맵 콘텍스트 메뉴의 Copy Entry Path를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. # Methods ##### inherited f [chunk_id] | Logics:650:0

[task] | distill [title] | MODTweenLogic [category] | Logics [rephrased] | # MODTweenLogic 이벤트 연결·해제 및 실행 환경 확인, 이벤트 발생을 담당하는 로직입니다. ## API 시그니처 및 동작 ### 이벤트 연결 * **`EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)`** * `key` 이름의 이벤트 발생 시 `eventHandler`에게 `event` 매개변수를 전달합니다. * **`EventHandlerBase ConnectEvent(Type eventType, IScriptFunc [original] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지 [chunk_id] | Logics:651:1

[task] | wikipedia [title] | DefaultUserEnterLeaveLogic [category] | Logics [rephrased] | **DefaultUserEnterLeaveLogic**은 메이플스토리 월드 스크립트 환경에서 유저의 입장(Enter)과 퇴장(Leave) 처리와 관련된 기능을 제공하는 로직 컴포넌트입니다. ## 속성(Properties) 이 컴포넌트는 유저 엔티티 생성 및 시작 위치 설정에 사용되는 두 개의 문자열(`string`) 타입 속성을 가집니다. 첫 번째 속성인 `PlayerUri`는 플레이어가 월드에 진입할 때 생성될 플레이어 엔티티에 사용할 모델(Model)의 고유 식별자(Id)를 저장합니다. 이 값은 에디터의 모델 콘텍스트 메뉴 [original] | 유저의 입장과 퇴장에 관련된 기능을 제공합니다. # Properties - **string PlayerUri** 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. - **string StartPoint** 시작 맵의 이름입니다. 맵 콘텍스트 메뉴의 Copy Entry Path를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. # Methods ##### inherited f [chunk_id] | Logics:650:0

[task] | wikipedia [title] | WorldShopService [category] | Services [rephrased] | WorldShopService의 상품 지급 처리 메커니즘은 `WorldShopPurchaseInfo` 객체를 매개 변수로 받아 boolean 타입의 값을 반환하는 함수를 통해 이루어집니다. `WorldShopPurchaseInfo`에는 구매를 수행한 유저 정보, 구매한 상품 정보 등 해당 구매 건을 처리하는 데 필요한 데이터가 포함되어 있습니다. 개발자는 이 정보를 기반으로 상품을 실제 지급할지 여부를 결정합니다. 상품 지급이 정상적으로 완료되어 구매 절차를 마무리하려면 함수에서 `true`를 반환해야 하며, 상품 지급이 불가능하다 [original] | 상품 지급 함수는 `WorldShopPurchaseInfo`를 매개 변수로 받고 boolean을 반환해야 합니다. `WorldShopPurchaseInfo`에는 구매한 유저, 구매한 상품과 같은 처리할 구매의 정보가 들어있습니다. 이를 이용해 상품을 지급하거나 지급하지 않을지 여부를 결정합니다. 상품 지급이 정상적으로 진행되어 구매를 완료시키려면 true를 리턴합니다. 만약 상품을 지급할 수 없다고 판단되어 정상적인 구매 과정을 수행할 수 없다면 false를 리턴합니다. false를 리턴한 구매의 경우, 구매를 수행한 유저가 다음에 [chunk_id] | Services:645:2

[task] | wikipedia [title] | ComponentRef [category] | Misc [rephrased] | **ComponentRef** `ComponentRef`는 컴포넌트를 참조하기 위해 사용되는 타입입니다. 이 타입은 컴포넌트의 식별자(Id)를 저장해 두었다가, 실제 접근이 필요한 시점에 해당 컴포넌트를 검색하는 방식을 취합니다. 사용법 측면에서는 `Component` 타입과 동일한 인터페이스를 제공합니다. **속성** `ComponentRef`에는 다음과 같은 읽기 전용(ReadOnly) 속성이 포함됩니다. * **EntityId** (`string`): 이 `ComponentRef`가 참조하고 있는 컴포넌트를 보유하고 [original] | 컴포넌트를 참조합니다. 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾습니다. 사용법은 Component 타입과 똑같습니다. # Properties - **string EntityId [ReadOnly]** 참조하고 있는 Component를 가진 Entity의 Id입니다. - **string TypeName [ReadOnly]** 참조하고 있는 Component의 타입명입니다. # Constructors - **ComponentRef(Component component)** 지정한 compon [chunk_id] | Misc:655:0

[task] | extract_knowledge [title] | DefaultUserEnterLeaveLogic [category] | Logics [rephrased] | # DefaultUserEnterLeaveLogic 컴포넌트 ## 개념 설명 `DefaultUserEnterLeaveLogic`은 유저의 입장(Enter)과 퇴장(Leave) 처리와 관련된 기능을 제공하는 로직 컴포넌트입니다. 이 컴포넌트를 통해 플레이어 엔티티가 생성될 때 사용할 모델 정보와 시작 맵 위치를 설정할 수 있으며, 상속된 `Logic` 기반의 이벤트 연결 및 발생 메서드를 활용할 수 있습니다. ## API 사용법 ### Properties - **`string PlayerUri`** 플레이어 엔티티 생성 시 [original] | 유저의 입장과 퇴장에 관련된 기능을 제공합니다. # Properties - **string PlayerUri** 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. - **string StartPoint** 시작 맵의 이름입니다. 맵 콘텍스트 메뉴의 Copy Entry Path를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. # Methods ##### inherited f [chunk_id] | Logics:650:0

[task] | knowledge_list [title] | MODTweenLogic [category] | Logics [rephrased] | * `ConnectEvent` 메서드는 `string key`와 `IScriptFunction eventHandler` 매개변수를 받아, 해당 서비스에서 이름이 `key`인 이벤트 발생 시 `event` 매개변수를 전달받아 `eventHandler`를 호출하도록 연결하며, `EventHandlerBase` 타입을 반환합니다. * `ConnectEvent` 메서드는 `Type eventType`와 `IScriptFunction eventHandler` 매개변수를 받아, 해당 서비스에서 타입이 `eventType`인 이벤트 발생 [original] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지 [chunk_id] | Logics:651:1

[task] | distill [title] | AnimationClip [category] | Misc [rephrased] | # AnimationClip MSW 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하는 클래스입니다. ## Properties - **ReadOnlyList<Frame> Frames [ReadOnly]** 각 프레임을 담고 있는 리스트입니다. - **float PlayRate [ReadOnly]** 재생 속도입니다. 1일 경우 1배속입니다. ### inherited from ResourceObject: - **boolean IsLoadComplete [ReadOnly]** 리소스가 정상적으로 로드가 완료됐 [original] | MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. # Properties - **ReadOnlyList<Frame> Frames [ReadOnly]** 각 프레임을 담고 있는 리스트입니다. - **float PlayRate [ReadOnly]** 재생 속도입니다. 1일 경우 1배속입니다. ##### inherited from ResourceObject: - **boolean IsLoadComplete [ReadOnly]** 리소스가 정상적으로 로드가 완료됐는지를 확인하는 플래그 [chunk_id] | Misc:669:0

[task] | knowledge_list [title] | ComponentRef [category] | Misc [rephrased] | 1. `ComponentRef`는 컴포넌트의 Id를 보유하고 실제 접근이 필요할 때 해당 컴포넌트를 찾도록 설계되었으며, 사용법은 `Component` 타입과 동일합니다. 2. `ComponentRef`의 `EntityId` 프로퍼티는 `string` 타입의 읽기 전용(`ReadOnly`) 값으로, 참조 대상 컴포넌트를 가진 `Entity`의 Id를 반환합니다. 3. `ComponentRef`의 `TypeName` 프로퍼티는 `string` 타입의 읽기 전용(`ReadOnly`) 값으로, 참조 대상 컴포넌트의 타입명을 반환합니다. [original] | 컴포넌트를 참조합니다. 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾습니다. 사용법은 Component 타입과 똑같습니다. # Properties - **string EntityId [ReadOnly]** 참조하고 있는 Component를 가진 Entity의 Id입니다. - **string TypeName [ReadOnly]** 참조하고 있는 Component의 타입명입니다. # Constructors - **ComponentRef(Component component)** 지정한 compon [chunk_id] | Misc:655:0

[task] | diverse_qa [title] | ComponentRef [category] | Misc [rephrased] | 질문: ComponentRef는 어떤 목적으로 사용되는 컴포넌트 참조 방식인가요? 답변: ComponentRef는 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾도록 하며, 사용법은 Component 타입과 똑같습니다. 질문: ComponentRef의 EntityId 속성은 어떤 정보를 담고 있으며, 수정 가능한가요? 답변: EntityId 속성은 참조하고 있는 Component를 가진 Entity의 Id를 담고 있으며, ReadOnly 속성이 붙어 있어 수정할 수 없습니다. 질문: ComponentRef의 [original] | 컴포넌트를 참조합니다. 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾습니다. 사용법은 Component 타입과 똑같습니다. # Properties - **string EntityId [ReadOnly]** 참조하고 있는 Component를 가진 Entity의 Id입니다. - **string TypeName [ReadOnly]** 참조하고 있는 Component의 타입명입니다. # Constructors - **ComponentRef(Component component)** 지정한 compon [chunk_id] | Misc:655:0

[task] | wikipedia [title] | MODTweenLogic [category] | Logics [rephrased] | **MODTweenLogic** `MODTweenLogic`은 이벤트 연결 및 처리, 실행 환경 확인, 그리고 이벤트 발생 기능을 제공하는 컴포넌트입니다. 이 컴포넌트는 이벤트 키 또는 타입을 기반으로 이벤트를 구독하고, 현재 스크립트가 클라이언트 또는 서버에서 실행 중인지 여부를 확인하며, 특정 이벤트를 전송하는 메서드를 포함합니다. 이벤트 연결은 `ConnectEvent` 메서드를 통해 수행됩니다. 이 메서드는 두 가지重载(오버로드) 형태를 지원하며, 각각 이벤트의 식별 방식이 다릅니다. 첫 번째 형태인 `EventHandl [original] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지 [chunk_id] | Logics:651:1

[task] | diverse_qa [title] | MODTweenLogic [category] | Logics [rephrased] | 질문: `ConnectEvent(string key, IScriptFunction eventHandler)` 메서드에서 `key` 매개변수는 어떤 역할을 하나요? 답변: `key`는 이벤트의 이름이며, 이 서비스에서 해당 이름의 이벤트가 발생하면 지정된 `eventHandler`로 통지받습니다. 질문: `ConnectEvent` 메서드를 사용할 때 핸들러는 어떤 매개변수를 전달받나요? 답변: 핸들러는 `event` 매개변수를 전달받습니다. 질문: `DisconnectEvent(string key, EventHandlerBase [original] | - **EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다. - **EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)** 이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지 [chunk_id] | Logics:651:1

[task] | wikipedia [title] | AnimationClip [category] | Misc [rephrased] | `AnimationClip`은 MapleStory Worlds(MSW)에서 애니메이션 출력을 위해 사용되는 클래스로, 메타 정보와 스프라이트(Sprite) 데이터를 포함하고 있습니다. 이 클래스는 고유한 속성 두 가지와 상위 클래스인 `ResourceObject`에서 상속된 속성 세 가지로 구성됩니다. `AnimationClip` 고유의 속성은 다음과 같습니다. 먼저, `Frames`는 `ReadOnlyList<Frame>` 타입의 읽기 전용 속성으로, 애니메이션의 각 프레임을 담은 리스트입니다. 다음으로, `PlayRate`는 [original] | MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. # Properties - **ReadOnlyList<Frame> Frames [ReadOnly]** 각 프레임을 담고 있는 리스트입니다. - **float PlayRate [ReadOnly]** 재생 속도입니다. 1일 경우 1배속입니다. ##### inherited from ResourceObject: - **boolean IsLoadComplete [ReadOnly]** 리소스가 정상적으로 로드가 완료됐는지를 확인하는 플래그 [chunk_id] | Misc:669:0

[task] | extract_knowledge [title] | ComponentRef [category] | Misc [rephrased] | # ComponentRef `ComponentRef`는 컴포넌트의 `Id`를 저장해 두고, 실제 접근이 필요할 때 해당 컴포넌트를 찾아 참조하는 타입입니다. 사용법은 `Component` 타입과 동일합니다. ## 개념 설명 `Component`가 컴포넌트 객체 자체를 직접 참조한다면, `ComponentRef`는 컴포넌트를 식별하는 정보(Entity ID, 타입명)만 보관합니다. 이는 컴포넌트가 소멸하거나 상태가 변경되었을 때 직접 참조가 아닌 식별자를 통해 안전하게 접근할 수 있도록 하기 위한 설계입니다. ## API 사용 [original] | 컴포넌트를 참조합니다. 컴포넌트의 Id를 갖고 있다가 실제로 접근이 필요할 때 컴포넌트를 찾습니다. 사용법은 Component 타입과 똑같습니다. # Properties - **string EntityId [ReadOnly]** 참조하고 있는 Component를 가진 Entity의 Id입니다. - **string TypeName [ReadOnly]** 참조하고 있는 Component의 타입명입니다. # Constructors - **ComponentRef(Component component)** 지정한 compon [chunk_id] | Misc:655:0

[task] | knowledge_list [title] | AnimationClip [category] | Misc [rephrased] | - `AnimationClip` 클래스는 MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. - `AnimationClip` 클래스의 `Frames` 속성은 `ReadOnlyList<Frame>` 타입이며, `[ReadOnly]` 제약이 있어 각 프레임을 담고 있는 리스트를 읽기 전용으로 제공합니다. - `AnimationClip` 클래스의 `PlayRate` 속성은 `float` 타입이며, `[ReadOnly]` 제약이 있어 재생 속도를 나타내며 값이 1일 경우 1배속을 의미합니다. - `Res [original] | MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. # Properties - **ReadOnlyList<Frame> Frames [ReadOnly]** 각 프레임을 담고 있는 리스트입니다. - **float PlayRate [ReadOnly]** 재생 속도입니다. 1일 경우 1배속입니다. ##### inherited from ResourceObject: - **boolean IsLoadComplete [ReadOnly]** 리소스가 정상적으로 로드가 완료됐는지를 확인하는 플래그 [chunk_id] | Misc:669:0

[task] | knowledge_list [title] | MODTweenLogic [category] | Logics [rephrased] | - `MODTweenLogic`은 더 이상 사용되지 않는 Logic이며, 용도에 맞게 `TweenLogic`, `TweenLineComponent`, `TweenFloatingComponent`, `TweenCircularComponent`를 사용해야 합니다. - `float Ease(EaseType type, float from, float totalDelta, float time, float duration)` 함수는 비추천(Deprecated) 상태의 정적(Static) 메서드로, 반환 타입은 `float`이며, `TweenL [original] | 더는 사용하지 않는 Logic입니다. 용도에 맞게 TweenLogic, TweenLineComponent, TweenFloatingComponent, TweenCircularComponent를 사용하세요. # Methods - **float Ease(EaseType type, float from, float totalDelta, float time, float duration) [Deprecated] [Static]** 더는 사용하지 않는 함수입니다. TweenLogic의 Ease(float, float, float, Eas [chunk_id] | Logics:651:0

[task] | extract_knowledge [title] | WorldShopService [category] | Services [rephrased] | # WorldShopService 상품 지급 처리 ## 개념 설명 `WorldShopService`는 월드 내 상품 구매 시 상품을 지급하는 로직을 처리하는 서비스입니다. 개발자는 `SetProcessPurchaseCallback` 메서드를 통해 상품 지급 콜백 함수를 등록해야 합니다. 등록된 콜백 함수는 매개 변수로 `WorldShopPurchaseInfo` 객체를 받고, `boolean` 타입의 값을 반환해야 합니다. `WorldShopPurchaseInfo`에는 구매를 수행한 유저 ID, 구매한 상품 ID, 주문 번호 등 [original] | 상품 지급 함수는 `WorldShopPurchaseInfo`를 매개 변수로 받고 boolean을 반환해야 합니다. `WorldShopPurchaseInfo`에는 구매한 유저, 구매한 상품과 같은 처리할 구매의 정보가 들어있습니다. 이를 이용해 상품을 지급하거나 지급하지 않을지 여부를 결정합니다. 상품 지급이 정상적으로 진행되어 구매를 완료시키려면 true를 리턴합니다. 만약 상품을 지급할 수 없다고 판단되어 정상적인 구매 과정을 수행할 수 없다면 false를 리턴합니다. false를 리턴한 구매의 경우, 구매를 수행한 유저가 다음에 [chunk_id] | Services:645:2

[task] | diverse_qa [title] | DefaultUserEnterLeaveLogic [category] | Logics [rephrased] | 질문: `DefaultUserEnterLeaveLogic` 컴포넌트의 주요 목적은 무엇인가요? 답변: 유저의 입장과 퇴장에 관련된 기능을 제공하는 것입니다. 질문: `PlayerUri` 프로퍼티에 저장되는 값은 무엇이며, 이를 설정할 때 주의해야 할 점은 무엇인가요? 답변: 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용해야 하며, Server 공간에서 변경해야 변경 사항이 적용됩니다. 질문: `StartPoint` 프로퍼티는 어떤 정보를 포함하나요? 답변: 시작 [original] | 유저의 입장과 퇴장에 관련된 기능을 제공합니다. # Properties - **string PlayerUri** 플레이어 엔티티를 생성할 때 사용할 Model의 Id입니다. 모델 콘텍스트 메뉴의 Copy Model ID를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. - **string StartPoint** 시작 맵의 이름입니다. 맵 콘텍스트 메뉴의 Copy Entry Path를 활용하세요. Server 공간에서 변경해야 변경 사항이 적용됩니다. # Methods ##### inherited f [chunk_id] | Logics:650:0

[task] | diverse_qa [title] | AnimationClip [category] | Misc [rephrased] | 질문: AnimationClip 클래스의 주요 목적은 무엇인가요? 답변: MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. 질문: AnimationClip의 Frames 속성은 어떤 데이터 타입이며, 어떤 정보를 담고 있나요? 답변: ReadOnlyList<Frame> 타입이며, 각 프레임을 담고 있는 리스트입니다. 질문: AnimationClip의 PlayRate 속성이 1일 때의 의미는 무엇인가요? 답변: 재생 속도가 1배속임을 의미합니다. 질문: AnimationClip의 Frames [original] | MSW의 애니메이션 출력을 위한 메타 정보와 Sprite를 포함하고 있는 클래스입니다. # Properties - **ReadOnlyList<Frame> Frames [ReadOnly]** 각 프레임을 담고 있는 리스트입니다. - **float PlayRate [ReadOnly]** 재생 속도입니다. 1일 경우 1배속입니다. ##### inherited from ResourceObject: - **boolean IsLoadComplete [ReadOnly]** 리소스가 정상적으로 로드가 완료됐는지를 확인하는 플래그 [chunk_id] | Misc:669:0

[task] | wikipedia [title] | MODTweenLogic [category] | Logics [rephrased] | # MODTweenLogic `MODTweenLogic`은 더 이상 사용되지 않는 비추천(Non-recommended) 로직 컴포넌트입니다. 해당 로직의 기능을 대체하기 위해 용도에 따라 `TweenLogic`, `TweenLineComponent`, `TweenFloatingComponent`, `TweenCircularComponent`를 사용해야 합니다. 이 컴포넌트는 다음과 같은 메서드들을 제공하지만, 모든 메서드는 `Deprecated`(비추천) 및 `Static`(정적) 속성을 가지고 있어 신규 개발에서는 사용이 지양 [original] | 더는 사용하지 않는 Logic입니다. 용도에 맞게 TweenLogic, TweenLineComponent, TweenFloatingComponent, TweenCircularComponent를 사용하세요. # Methods - **float Ease(EaseType type, float from, float totalDelta, float time, float duration) [Deprecated] [Static]** 더는 사용하지 않는 함수입니다. TweenLogic의 Ease(float, float, float, Eas [chunk_id] | Logics:651:0

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