我在檢查我的角色是否在我的XNA遊戲中命中時遇到問題。我有一個包含hitbox的角色類,但我怎麼可能讓它檢查其他角色被擊中?XNA中的Hitbox檢測
是有辦法做到這一點是這樣的:
if(this.hitbox.Y = [any other character using this class].attackbox.Y)
感謝您的幫助
我在檢查我的角色是否在我的XNA遊戲中命中時遇到問題。我有一個包含hitbox的角色類,但我怎麼可能讓它檢查其他角色被擊中?XNA中的Hitbox檢測
是有辦法做到這一點是這樣的:
if(this.hitbox.Y = [any other character using this class].attackbox.Y)
感謝您的幫助
據我瞭解「打」是當hitbox1有hitbox2非空交集。 我建議像下面的東西(對於2d的hitboxes)
在XNA框架中有一個方法:Rectangle.Intersects()
,所以使用它。
這樣做的手動方式看起來有點像下面描述: 說,hitbox是一個座標[(x1,y1),(x2,y2)]的矩形,那麼我們有幾個類似於一個低於
if(h1.x2 >= h2.x1 && h1.y2 >= h2.y1)
{
\\this is one of cases when we got hit
}
這就是我要這樣做的方式。
爲什麼不使用'Rectangle.Intersects(
是的,這肯定會工作:)我在我的文章中寫道,只是不知道確切的函數名稱。 –
然後現在編輯你的帖子,你知道它。 – neeKo
它不工作還是什麼? 記住它:'if(x == y)' – jAC
這不會工作,因爲它的每個角色和每個角色的類應該檢測來自其他角色的攻擊 – Evi
-1在谷歌上搜索這個應該不會那麼困難! –