我正在研究遊戲的碰撞檢測,這樣如果角色碰到一個物體就會停止移動。作爲我的解決方案的一部分,我已經做了兩個函數遍歷屏幕對象列表來檢查碰撞。如何檢查我的角色與哪個對象發生碰撞?
第一個函數(on_key_up)在方向鍵被按下時檢查衝突,然後在True時停止字符移動。
第二部分是另一個函數(on_key_up),它將角色稍微移出碰撞區域,以便他可以再次自由移動。這在釋放方向鍵時觸發。
問題是我需要訪問角色碰撞的任何對象的高度和寬度屬性,所以我想知道是否有辦法做到這一點。
我貼什麼,我這樣做的一個片段,你可以看到我試圖去的方向。
我幹了什麼錯在這裏做什麼?
def on_keyboard_up(self, keyboard, keycode):
if keycode[1] == 'left':
self.source = 'selectionscreen/faceleft.png'
for i in listofwidgets:
if self.collide_widget(i):
self.x = ((listofwidgets(i).x + listofwidgets(i).width + .1)-self.x) + self.x
小部件是你碰撞的對象? –
'i'的屬性是什麼? –