我正在开发一款游戏,我正在努力完成2个图片框的碰撞检测。我有一个计时器控件,负责将尖峰(敌人)移向一个盒子(我的角色)。
这是我的代码:
private void tmrSpike_Tick(object sender, EventArgs e)
{
// Spike moving left interval
spike1.Left -= 6;
if (picSquare.ClientRectangle.IntersectsWith(spike1.ClientRectangle))
MessageBox.Show("sd");
if (spike1.Left + spike1.Width < 0)
spike1.Left = ActiveForm.Width;
}
PicturesBoxes:
spike1
picSquare
当盒子(角色)击中长钉(敌人)时,我该怎么做呢,它会显示警告?
注意:只有尖峰朝向盒子移动。按下向上键时,盒子只会跳起并下降。我的游戏概念非常类似于:http://www.flukedude.com/theimpossiblegame/
答案 0 :(得分:1)
您使用的是错误的属性。 ClientRectangle是相对于控件的矩形。您想要使用相对于容器的Bounds属性。在调试器bww中很容易看到,请练习使用它。