จะทราบได้อย่างไรว่าผู้เล่นลงชื่อเข้าใช้?


11

ฉันสงสัยว่ามีวิธีใดที่จะทราบว่า "ผู้เล่น" ลงชื่อเข้าใช้หรือไม่?

บางสิ่งเช่นนี้

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

เพื่อให้คอนโทรลเลอร์นั้นเชื่อมต่อและสามารถใช้งานได้ แต่ผู้เล่นไม่ได้ลงชื่อเข้าใช้บัญชี สิ่งที่ชอบเดา

คำตอบ:


11

ใน XNA มีSignedInGamerคลาสพร้อมSignedInGamer.PlayerIndexสมาชิกที่ควรบอกคุณว่าหากคุณสามารถเก็บSignedInGamerวัตถุได้

ในการทำเช่นนั้นจะมีGamer.SignedInGamersคุณสมบัติคงที่ซึ่งมีการรวบรวมSignedInGamerวัตถุตามสถานะปัจจุบันของระบบ นี่คือจากMicrosoft.Xna.Framework.GamerServicesเนมสเปซ

ด้วยข้อมูลนี้คุณสามารถทำสิ่งต่อไปนี้:

//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
    }
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.