def _connect_and_join(self, userid, username, mode, gameid, force_start, public_server):
logging.debug("Creating connection")
self._ws = create_connection(ENDPOINT_BOT if not public_server else ENDPOINT_PUBLIC)
self._lock = threading.RLock()
_spawn(self._start_sending_heartbeat)
self._send(["set_username", userid, username, BOT_KEY])
logging.info("Joining game")
self._gameid = None
if mode == "private":
self._gameid = gameid
if gameid is None:
raise ValueError("Gameid must be provided for private games")
self._send(["join_private", gameid, userid, BOT_KEY])
elif mode == "1v1":
self._send(["join_1v1", userid, BOT_KEY])
elif mode == "team":
self._send(["join_team", userid, BOT_KEY])
elif mode == "ffa":
self._send(["play", userid, BOT_KEY])
else:
raise ValueError("Invalid mode")
if force_start:
_spawn(self.send_forcestart)
评论列表
文章目录