diff --git a/resources/[system]/sessionmanager-rdr3/rline.proto b/resources/[system]/sessionmanager-rdr3/rline.proto index ed4b078..9084181 100644 --- a/resources/[system]/sessionmanager-rdr3/rline.proto +++ b/resources/[system]/sessionmanager-rdr3/rline.proto @@ -180,3 +180,13 @@ message TransitionReady_PlayerQueue_Parameters { MpSessionRequestIdDto requestId = 5; MpSessionIdDto transferId = 6; }; + +message TransitionToSession_Parameters { + MpTransitionIdDto id = 1; + float x = 2; + float y = 3; +}; + +message TransitionToSessionResult { + uint32 code = 1; +}; \ No newline at end of file diff --git a/resources/[system]/sessionmanager-rdr3/sm_server.js b/resources/[system]/sessionmanager-rdr3/sm_server.js index ef76619..4e6eedc 100644 --- a/resources/[system]/sessionmanager-rdr3/sm_server.js +++ b/resources/[system]/sessionmanager-rdr3/sm_server.js @@ -32,6 +32,8 @@ protobuf.load(GetResourcePath(GetCurrentResourceName()) + "/rline.proto", functi const QueueForSessionResult = root.lookupType("rline.QueueForSessionResult"); const QueueEntered_Parameters = root.lookupType("rline.QueueEntered_Parameters"); const TransitionReady_PlayerQueue_Parameters = root.lookupType("rline.TransitionReady_PlayerQueue_Parameters"); + const TransitionToSession_Parameters = root.lookupType("rline.TransitionToSession_Parameters"); + const TransitionToSessionResult = root.lookupType("rline.TransitionToSessionResult"); const scmds_Parameters = root.lookupType("rline.scmds_Parameters"); function toArrayBuffer(buf) { @@ -173,6 +175,14 @@ protobuf.load(GetResourcePath(GetCurrentResourceName()) + "/rline.proto", functi return {}; }, + async TransitionToSession(source, data) { + const req = TransitionToSession_Parameters.decode(data); + + return makeResponse(TransitionToSessionResult, { + code: 1 // in this message, 1 is success + }); + }, + async QueueForSession_Seamless(source, data) { const req = QueueForSession_Seamless_Parameters.decode(data);