如何在XNA游戏中实现类似对话框的功能?我想要做的是当对话框的图像仍处于活动状态时,其下方的任何内容都将停止接收用户输入,直到该框消失。使用矩形的Contains()方法似乎不起作用,因为它是基于坐标的。
例如:点击某个项目会弹出一个小的“使用”框。即使该盒子的图像与另一个物品位于同一位置(或者更准确地说,在其上方),点击那里只会触发第一个项目的使用而不会显示第二个项目的另一个“使用”框,从而有效地禁用第二个项目在碰撞矩形中的输入区域。
答案 0 :(得分:0)
最简单的方法是使用UIElementRenderer,如下例所示:http://blogs.microsoft.co.il/blogs/pavely/archive/2011/10/26/windows-phone-combining-silverlight-amp-xna-in-a-single-page.aspx
答案 1 :(得分:0)
只需使用一些标志即可获得输入
例如,
bool accessFlag = true;
然后在Update()方法
中if (accessFlag)
{
// Take input from user
}
然后,当您的对话框或任何其他内容出现时,将accessFlag设为false。当弹出消失时,让它成为现实。