0

如何在 XNA 游戏中实现类似对话框的功能?我想要做的是当对话框的图像仍然处于活动状态时,它下面的任何内容都将停止接收用户输入,直到该框消失。使用矩形的 Contains() 方法似乎不起作用,因为它是基于坐标的。

例如:点击一个项目会弹出一个小的“使用”框。即使该框的图像与另一个项目的图像位于同一位置(或更准确地说,在顶部),单击该位置只会触发第一个项目的使用,而不会为第二个项目显示另一个“使用”框,有效地禁用碰撞矩形中第二项的输入区域。

4

2 回答 2

0

最简单的方法是使用 UIElementRenderer,如本例所示:http: //blogs.microsoft.co.il/blogs/pavely/archive/2011/10/26/windows-phone-combining-silverlight-amp-xna-in -a-single-page.aspx

于 2012-11-18T15:18:54.267 回答
0

只需使用一些标志来获取输入

例如,

bool accessFlag = true;

然后在 Update() 方法中

if (accessFlag)
{
  // Take input from user
}

然后,当您的对话框或您想要的任何其他内容出现时,将 accessFlag 设置为 false。并在弹出窗口消失时使其成为现实。

于 2012-11-19T11:52:38.567 回答