Làm thế nào để biết người chơi đã đăng nhập?


11

Tôi đã tự hỏi liệu có cách nào để biết "người chơi" đã đăng nhập hay không?

Một cái gì đó như thế này:

if (GamePad.GetState(PlayerIndex.Two).IsConnected && !Gamer.PlayerTwo.IsSignedIn)

Vì vậy, bộ điều khiển được kết nối và nó có thể được sử dụng, nhưng trình phát không được đăng nhập vào tài khoản. Một cái gì đó giống như một dự đoán.

Câu trả lời:


11

Trong XNA có một SignedInGamerlớp với một SignedInGamer.PlayerIndexthành viên sẽ chỉ cho bạn biết rằng nếu bạn có thể nắm giữ SignedInGamerđối tượng.

Để làm điều đó, có thuộc tính Gamer.SignedInGamerstĩnh chứa một tập hợp các SignedInGamerđối tượng dựa trên trạng thái hiện tại của hệ thống. Đây là từ Microsoft.Xna.Framework.GamerServiceskhông gian tên.

Với thông tin này, bạn có thể làm một cái gì đó như sau:

//If player 2 is connected
if (GamePad.GetState(PlayerIndex.Two).IsConnected)
{
    //If we can't find a signed in gamer with a PlayerIndex of two
    if (!Gamer.SignedInGamers.Cast<SignedInGamer>().Any(x => x.PlayerIndex == PlayerIndex.Two))
    {
        //Your handling code here
    }
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.