为什么我的乌龟键绑定没有响应?

Why isn't my turtle keybinding responding?

我正在 mod为我编写的游戏修改代码。当我 mod 计算播放器 class 时,我添加了所有额外的 parameters/arguments 以便将其分开。我将键绑定保留在主游戏中 module.

键绑定代码如下所示


turtle.listen()
a=turtle.onkey(player.go_left(walls), "Left")
b=turtle.onkey(player.go_right(walls), "Right")
c=turtle.onkey(player.go_up(walls), "Up")
d=turtle.onkey(player.go_down(walls), "Down")
e=turtle.onkey(player.headright(missile,lives), "d")
f=turtle.onkey(player.headleft(missile,lives), "a")
g=turtle.onkey(player.headdown(missile,lives),"s")
h=turtle.onkey(player.headup(missile,lives),"w")
i=turtle.onkey(player.headright(missile,lives),"D")
j=turtle.onkey(player.headleft(missile,lives), "A")
k=turtle.onkey(player.headdown(missile,lives),"S")
l=turtle.onkey(player.headup(missile,lives),"W")
o=turtle.onkey(player.drink(info),"space")
m=turtle.onkey(player.fireball(missile2,info,lives),"z")
n=turtle.onkey(player.fireball(missile2,info,lives),"Z")

游戏 运行 没有错误,但按键没有响应操作。

您可以在

中找到代码

https://github.com/Ninedeadeyes/7-Dungeons-Deep/tree/master

键绑定代码在游戏中(mod版本)

所有功能都在'player.py'

任何帮助都会很棒。

onkey 函数只允许没有参数的函数,因此不能使用带参数的函数,因此它不起作用。

https://docs.python.org/2/library/turtle.html#turtle.onkey

但是...如果你使用

turtle.onkey((lambda:player.go_left(walls)), "左")

它会起作用,因为您正在一个函数内创建一个函数,该函数将表达输出,就好像它没有参数一样。