internal static IAsyncResult BeginJoin(LidgrenAvailableSession availableSession, AsyncCallback callback, object asyncState)
{
if (availableSession.OpenPublicSlots < SessionManager.LocalPlayers.Count)
{
throw new CoreException("To many local players to join");
}
var asyncCreate = new AsynchronousJoin(Join);
return asyncCreate.BeginInvoke(availableSession, callback, asyncState);
}