diff --git a/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs b/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs index 7a283db..c4a5b9c 100644 --- a/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs +++ b/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs @@ -35,6 +35,12 @@ public class WSNet2Client /// 例外が発生した時は tcs.TrySetException(exceptin) とします。 public Action<string, IReadOnlyDictionary<string, string>, byte[], TaskCompletionSource<(int, byte[])>> HttpPost { private get; set; } + /// <summary> + /// Task AdjustJoinedRoomInfo(joinedRoom): 接続前に入室した部屋の情報を必要に応じて調整する + /// </summary> + /// 別スレッドで呼び出されるので注意 + public Func<JoinedRoom, Task> AdjustJoinedRoomInfo { private get; set; } + /// <summary> /// コンストラクタ /// </summary> @@ -489,6 +495,11 @@ private async Task connectToRoom( throw new RoomFullException(res.msg); } + if (AdjustJoinedRoomInfo != null) + { + await AdjustJoinedRoomInfo(res.room); + } + var logger = prepareLogger(roomLogger); var hmac = new HMACSHA1(Encoding.ASCII.GetBytes(authData.MACKey)); var room = new Room(res.room, userId, hmac, logger);