Steam 비동기 이벤트 처리
이 문서는 Steam 확장 함수의 콜백에 의해 트리거되는 이벤트에 대해 설명합니다. 이 이벤트는 async_load
라는 변수에 저장된 DS 맵을 반환하며, 이 맵은 호출된 함수에 따라 다양한 키/값 쌍을 포함합니다. 항상 포함되는 키는 "event_type"
이며, 이를 통해 어떤 함수가 이벤트를 트리거했는지 파악하고 필요한 코드를 변경할 수 있습니다.
주요 키 설명
키 | 설명 |
---|---|
id |
이벤트를 트리거한 함수에서 반환된 비동기 ID입니다. |
result |
작업의 결과(실제 값). 성공적인 호출인지 확인하기 위해 이 값을 체크해야 합니다. |
event_type |
이벤트의 유형을 나타내는 문자열입니다. 특정 함수의 문서를 참조하여 이벤트 유형을 확인할 수 있습니다. |
활용 예제
1. 비동기 이벤트 처리
// 비동기 이벤트를 처리하는 코드 예제
if (async_load[? "event_type"] == "some_event") {
var async_id = async_load[? "id"];
var result = async_load[? "result"];
if (result == ugc_result_success) {
// 성공적으로 처리된 경우
show_message("작업이 성공적으로 완료되었습니다.");
} else {
// 실패한 경우
show_message("작업이 실패했습니다. ID: " + string(async_id));
}
}
2. 이벤트 유형에 따른 분기 처리
// 이벤트 유형에 따라 다른 처리를 하는 코드 예제
switch (async_load[? "event_type"]) {
case "event_type_1":
// 이벤트 유형 1에 대한 처리
break;
case "event_type_2":
// 이벤트 유형 2에 대한 처리
break;
default:
// 알 수 없는 이벤트 유형
show_message("알 수 없는 이벤트 유형입니다.");
}
3. 비동기 ID 저장 및 확인
// 비동기 ID를 저장하고 확인하는 코드 예제
var my_async_id = async_load[? "id"];
if (my_async_id == stored_async_id) {
// 저장된 ID와 일치하는 경우 처리
}
이 문서에서는 Steam의 비동기 이벤트 처리 방법과 관련된 기본적인 내용을 다루었습니다. 각 키의 의미와 활용 예제를 통해 실제 코드에서 어떻게 적용할 수 있는지 이해할 수 있습니다.