2013-12-12 62 views
0

我遇到了一個小問題。我在Windows 8上運行了一個遊戲,但其中有一個小錯誤。我們通過FreeDrag事件拖動玩家,但問題在於當您拖動小鳥並將手指放在屏幕的另一側時,開始拖動您將啓動另一個FreeDrag事件並影響小鳥的移動。只處理一個FreeDrag手勢Monogame XNA

所以我的問題是我可以只處理1個FreeDrag而不是兩個?有人問過比較individually handle gesture's但沒有得到答案。

在此先感謝。

+0

爲什麼你應該把另一個手指放在屏幕上? – pinckerman

+0

你不會故意這樣做,但如果你不小心用另一個手指觸摸屏幕,或者你自己擊中了屏幕,玩家會做出意想不到的舉動。遊戲是一種逃避遊戲,通過用另一隻手指觸摸屏幕,您可以提升自己速度,獲得雙倍速度,因此通過正確地瞭解和執行它而獲得不公平的優勢。除此之外,它也是一些便於瞭解進一步發展(雙人支持)以及我們未來可能製作的任何其他遊戲的東西:) – MrME

+0

我不認爲你可以處理這個問題,FreeDrag不是多點觸控手勢XNA,這意味着如果你用另一個手指觸摸屏幕,你開始另一個拖動手勢。 – pinckerman

回答

2

我不認爲你可以處理,FreeDrag不是XNA中的多點觸摸手勢,這意味着如果你用另一個手指觸摸屏幕,你會開始另一個拖動手勢。
我的建議是避免FreeDrag並使用TouchLocation來代替您的鳥。它更容易處理,並與TouchCollection結合檢測多點觸控手勢。

+0

嘿,我把你的建議放到我的遊戲中,但它創造了一個新的錯誤。當我現在回到主菜單,我使用混合的手勢和touchcollection,然後我的遊戲凍結的手勢:/我正在寫一個更大的職位/問題,並會把鏈接>這裏<當它完成 – MrME