我有两个移动的图像(UI ELEMENT),一个牧羊人和一个狼。我想如果他们在每张照片的同一区域(如果他们互相接触)会发生一些事情(牧羊人会死)。
我是菜鸟,我想到了一个for循环,但它只有在努力去死后才有效...大声笑...
private void GameOver(Image enemy, Image actualToMove)
{
for (int i = 0; i < 200; i++)
{
if (Canvas.GetLeft(actualToMove) == (Canvas.GetLeft(enemy) - i) && Canvas.GetTop(actualToMove) == (Canvas.GetTop(enemy) - i)
|| Canvas.GetLeft(actualToMove) == (Canvas.GetLeft(enemy) + i) && Canvas.GetTop(actualToMove) == (Canvas.GetTop(enemy) + i))
{
gameOver = true;
break;
}
}
}
我想到这个循环抓住一只绵羊它的确有效......但是绵羊是静止的。我非常肯定在这种情况下for循环是一个非常糟糕的主意......
我真的很难在UWP中进行碰撞检测......请帮忙!
您可以使用Manipulation event移动图像。例如,您可以在ManipulationDelta
事件中移动图像,在ManipulationCompleted
事件中,您可以进行碰撞检测。您不需要使用循环。