问题

你想为玩家设置富状态信息,这些信息可以显示给其他Xbox Live玩家,这些玩家可以通过Xbox Guide或在http://www.xbox.com网站上看到这些信息。

解决方案

大多数游戏可以给玩家添加富状态信息,这样其他玩家可以看到玩家正在玩什么游戏,当前他们正在游戏中干什么。你可以在Gamer.SignedInGamers[0].Presence属性中设置这个信息。

工作原理

使用XNA的网络功能,在你设置玩家的富状态信息前,首先需要确保玩家已经登录到Xbox Live。你可以从60个PresenceModes中选择,对已经登录的玩家来说非常容易设置:

Gamer.SignedInGamers[0].Presence.PresenceMode=GamerPresenceMode.AtMenu; 

所有的PresenceModes如表8-1所示。

表8-1 60个PresenceModes

image

对某些模式(Stage,Level,Score,CoOpStage,VersusScore),你还可以设置一个值表示玩家的stage或关卡或当前得分。下面的例子表示玩家正处于第15关:

Gamer.SignedInGamers[0].Presence.PresenceMode = GamerPresenceMode.Level; 
Gamer.SignedInGamers[0].Presence.PresenceValue = 15;