簡単なゲームを作ろうとしていますが、picturebox1(私のキャラクター)が他のpicturebox(壁)と衝突するかどうかを知る必要があります。
私はすでにこれをどのように行うかを理解しましたが、それは私のキャラクターと他の1つのピクチャーボックスでのみ機能します。
If picturebox1.bounds.intersectWith(picturebox2.bounds) then
collision = true
end if
私はこのような何か他のことをしようとしました:
For Each PictureBox In Me.Controls
If PictureBox1.Bounds.IntersectsWith(PictureBox.Bounds) Then
collision = True
Else : collision = False
End If
Next
ただし、picturebox1(キャラクター)は常にそれ自体と交差するため、ブール衝突は常に真になります。
だから私はピクチャーボックスをパネルに変更しました、そしてコードは次のようになります:
For Each PictureBox In Me.Controls
If Panel1.Bounds.IntersectsWith(PictureBox.Bounds) Then
collision = True
Else : collision = False
End If
Next
ただし、フォーム内のすべての画像ボックスではなく、1つの画像ボックスでのみ機能します。理由がわかりません...そして、関数ごとに例外を追加して、picturebox1を保持できるようにする方法を誰かが知っている場合は、
多分このようなもの
For each picturebox(except(picturebox1)) in me.controls
それを検索したのに何も見つからなかったので...
どんな助けでも大歓迎です:)ありがとう!