1

私はプログラミングが初めてなので、アドバイスが必要です。単純なマルチプレイヤー ゲームを作成しており (クライアントは携帯電話で、C++ コードを持っています)、Tornado/Python 2.7 を使用してサーバー側を書いています。プレーヤーなどを定義するためにサーバー上でPythonクラスを定義しました...私の質問は、ユーザーがGoogle経由でログインするときです

class GoogleHandler(tornado.web.RequestHandler, tornado.auth.GoogleMixin):
    @tornado.web.asynchronous
    def get(self):
        if self.get_argument("openid.mode", None):
            self.get_authenticated_user(self.async_callback(self._on_auth))
            return
        self.authenticate_redirect()

    def _on_auth(self, user):
        if not user:
            raise tornado.web.HTTPError(500, "Google auth failed")
        print(user)
        self.set_secure_cookie("user", tornado.escape.json_encode(user))


class Player(Document):

    def __init__(self, t):
        self._token = t
        self._connection = None

その接続を取り、Player クラスに入れる方法。後でそのゲームのすべてのユーザーにメッセージをブロードキャストできます (1 つのゲームをプレイできるのは 3 人のユーザーのみで、サーバーでは現時点で多くのゲームが可能です)。HTTP リクエストを使用してログインすることができ、3 人のプレイヤー間でメッセージをブロードキャストできるように永続的な HTTP が必要です (明確にするために、3 人のプレイヤーがログインしてゲームをプレイし、1 人がサーバーにメッセージを送信するときに、そのメッセージを他の 2 人にブロードキャストする必要があります)。誰かがこれを行う方法のアドバイスを手伝ってもらえますか?

4

1 に答える 1

0

ドメインプロセスを作成する必要があると思います。を含むメッセージを受け取ったら、groupidそれをクライアントに送信してから、このメッセージをユーザーに表示します。

于 2012-11-19T10:15:22.367 に答える