パスワードルーム
using
SoftGear.Strix.Client.Core.Model.Manager.Filter;
using SoftGear.Strix.Unity.Runtime;
using UnityEngine;
using UnityEngine.Events;
using System.Linq;
public class StrixEnterPasswordRoom : MonoBehaviour
{
// ルームに参加可能な最大人数
public int Capacity = 4;
// ルーム名
public string RoomName = "New Room";
// パスワード
public string Password = "AAA";
// ルーム入室完了時イベント
public UnityEvent onRoomEntered;
// ルーム入室失敗時イベント
public UnityEvent onRoomEnterFailed;
public void EnterRoom()
{
ICondition condition
= new Equals(new Field("isPasswordProtected"), new
Value((bool)true));
RoomProperties
roomProperties = new RoomProperties
{
capacity = Capacity,
name = RoomName,
password = Password
};
RoomMemberProperties
memberProperties = new RoomMemberProperties
{
name = StrixNetwork.instance.playerName
};
StrixNetwork.instance.SearchJoinableRoom(condition, null, 10, 0,
searchResult => {
var roomInfo = searchResult.roomInfoCollection.FirstOrDefault();
if (roomInfo != null)
{
StrixNetwork.instance.JoinRoom(
args: new RoomJoinArgs
{
host = roomInfo.host,
port = roomInfo.port,
protocol = roomInfo.protocol,
roomId = roomInfo.roomId,
password = Password,
memberProperties = memberProperties
},
handler: joinResult => onRoomEntered.Invoke(),
failureHandler: joinError => CreateRoom(roomProperties,
memberProperties)
);
}
else
{
CreateRoom(roomProperties, memberProperties);
}
},
searchError =>
CreateRoom(roomProperties, memberProperties)
);
}
private void CreateRoom(RoomProperties
roomProperties, RoomMemberProperties memberProperties)
{
StrixNetwork.instance.CreateRoom(roomProperties,
memberProperties, args => {
onRoomEntered.Invoke();
}, args => {
onRoomEnterFailed.Invoke();
});
}
}
上記のスクリプトを作った後 「StrixConnectUI」の中の「StrixConnectPanel」のInspectorの
StrixConnectGUIのOn Connectを上記のスクリプトのEnterRoomにします

これでパスワードのかかったルームの制作が可能です
戻る