我正在开发一款自上而下的RPG游戏。这是向左移动主角的方法。问题是ANYTIME我按左键,打印'触发对话框'并调用该功能。这个应该被触发的唯一时间是我将我的角色移动到另一个图像附近(在listofwidgets中)。我怀疑我做了一些错误的'for i in listofwidgets'行或数学。
def on_keyboard_down(self, keyboard, keycode, text, modifiers):
if keycode[1] == 'left':
self.source = 'characters/walkleft.zip'
self.x -=6
for i in listofwidgets:
if self.x - (i.x+i.width) < 100: #if distance between character and tree is smaller than 100
print "trigger dialogue box"
calldialoguebox() #call function that opens dialogue box and prints message
else:
pass