MatchmakingService

1:1 매치매이킹과 승패 결과를 관리하는 리더보드 관련 기능을 제공합니다.

# Methods

[{"index":"MatchmakingResultCode CancelMatchingAndWait(string userProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"매칭을 취소합니다. 작업이 완료되면 결과 코드를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, LeaderboardInfo CreateLeaderboardAndWait(string name, LeaderboardScoringStrategy scoringStrategy, LeaderboardRatingStrategy ratingStrategy, LeaderboardRankingStrategy rankingStrategy, LeaderboardSeasonResetInfo resetInfo) (ServerOnly) (ReleaseOnly) (Yield)","0":"리더보드를 생성합니다. 리더보드는 월드당 최대 20개까지 생성할 수 있으며, 각 리더보드의 시즌은 최근 30개까지만 보관됩니다.ratingStrategy가 None이면 리더보드에는 점수만 등록되고 순위는 계산되지 않습니다.순위를 계산하려면 ratingStrategy를 None이 아닌 값으로 설정해야 하며, 이 경우 scoringStrategy는 반드시 Last로 설정해야 합니다.resetInfo가 nil이면 리더보드를 초기화하지 않고 하나의 시즌으로만 운영됩니다.작업이 완료되면 결과 코드와 생성된 리더보드 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode DeleteLeaderboardAndWait(string leaderboardId) (ServerOnly) (ReleaseOnly) (Yield)","0":"리더보드를 삭제합니다. 작업이 완료되면 결과 코드를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode DeleteScoreInfoAndWait(string leaderboardId, string userProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"유저의 점수를 삭제합니다. 작업이 완료되면 결과 코드를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, LeaderboardInfo GetLeaderboardInfoAndWait(string leaderboardId) (ServerOnly) (ReleaseOnly) (Yield)","0":"리더보드 정보를 얻어옵니다. 작업이 완료되면 결과 코드와 리더보드 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, table GetLeaderboardInfosAndWait() (ServerOnly) (ReleaseOnly) (Yield)","0":"월드의 모든 리더보드 정보를 얻어옵니다.작업이 완료되면 결과 코드와 리더보드 정보들을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"MatchmakingResultCode, table GetMatchUserInfosAndWait(string userProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"매칭이 성사된 유저들의 정보를 얻어옵니다.테이블의 첫 번째 요소는 Home 유저, 두 번째 요소는 Away 유저 정보입니다.작업이 완료되면 결과 코드와 유저들의 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, LeaderboardRankInfo GetRankInfoAndWait(string leaderboardId, string seasonId, string userProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"유저의 순위 정보를 얻어옵니다.작업이 완료되면 결과 코드와 순위 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, table GetRankInfosAndWait(string leaderboardId, string seasonId, int32 startRank, int32 count) (ServerOnly) (ReleaseOnly) (Yield)","0":"특정 범위 내의 순위 정보를 모두 얻어옵니다.startRank는 조회를 시작할 순위, count는 조회할 순위의 개수입니다. 한 번에 최대 100개까지 조회할 수 있습니다. 작업이 완료되면 결과 코드와 순위 정보들을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, LeaderboardScoreInfo GetScoreInfoAndWait(string leaderboardId, string seasonId, string userProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"유저의 점수 정보를 얻어옵니다.작업이 완료되면 결과 코드와 점수 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, LeaderboardSeasonInfo GetSeasonInfoAndWait(string leaderboardId, string seasonId) (ServerOnly) (ReleaseOnly) (Yield)","0":"리더보드의 특정 시즌 정보를 얻어옵니다.작업이 완료되면 결과 코드와 시즌 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode, table GetSeasonInfosAndWait(string leaderboardId) (ServerOnly) (ReleaseOnly) (Yield)","0":"리더보드의 모든 시즌 정보를 얻어옵니다. 작업이 완료되면 결과 코드와 시즌 정보들을 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"MatchmakingResultCode RequestMatchingAndWait(string leaderBoardId, string queueName, string userProfileCode, string extras, func onCompleted) (ServerOnly) (ReleaseOnly) (Yield)","0":"매칭을 요청합니다. 동일한 queueName을 사용하는 유저들 간에만 매칭이 이루어집니다.매칭에 성공하거나 실패하면 경기 정보와 onCompleted로 전달된 함수가 호출됩니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"LeaderboardResultCode SetScoreAndWait(string leaderboardId, string userProfileCode, int32 score, string extras) (ServerOnly) (ReleaseOnly) (Yield)","0":"유저의 점수를 등록하고 순위를 갱신합니다.extras는 필요에 따라 추가로 저장할 수 있는 임의의 데이터입니다. 작업이 완료되면 결과 코드를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"MatchmakingResultCode, MatchResultInfo UpdateMatchResultAndWait(string leaderboardId, string homeUserProfileCode, string awayUserProfileCode, string winnerUserProfileCode) (ServerOnly) (ReleaseOnly) (Yield)","0":"경기의 승패를 반영하여 점수를 새로 계산합니다. 비겼을 때는 winnerUserProfileCode에 nil을 전달합니다.작업이 완료되면 결과 코드와 경기 결과 정보를 반환합니다. 수행하는 동안 스크립트 실행을 중단합니다."}]

[{"index":"MatchmakingResultCode WarpMatchUser(string userProfileCode) (ServerOnly) (ReleaseOnly)","0":"매칭이 성사된 유저를 같은 월드 인스턴스로 워프시키고 결과 코드를 반환합니다."}]

##### inherited from Service:

[{"index":"EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)","0":"이벤트를 연결합니다. 이 서비스에서 타입의 이름이 key인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다."}]

[{"index":"EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)","0":"이벤트를 연결합니다. 이 서비스에서 타입이 eventType인 이벤트가 발생하면, 핸들러로 통지받습니다. 핸들러는 event 매개 변수를 전달받습니다."}]

[{"index":"boolean DisconnectEvent(string key, EventHandlerBase eventHandler)","0":"타입의 이름이 key인 이벤트와 핸들러와의 이벤트 연결을 끊습니다."}]

[{"index":"boolean DisconnectEvent(Type eventType, EventHandlerBase eventHandler)","0":"타입이 eventType인 이벤트와 핸들러와의 연결을 끊습니다."}]

[{"index":"void SendEvent(EventType sendEvent)","0":"이벤트를 발생시킵니다."}]