DrRacket按键错误/错误
问题描述:
我正在为我的Comp-160类做一个项目,我的按键功能正在做一些奇怪的事情。DrRacket按键错误/错误
(define (KEY-PRESS W key)
(cond
[(key=? key "left") (make-MOVEB
(- 15 (MOVEB-x W))
(MOVEB-y W))]
[(key=? key "right") (make-MOVEB
(+ 15 (MOVEB-x W))
(MOVEB-y W))]))
对于上下文我MOVEB
是适用于移动左一斗,沿着我的场景的地面正确的位置的结构。当我运行这个功能时,我们可以毫无问题地向右移动,但是每当我离开时,我的水桶就会消失或者一直移动回到起始点。
有没有人知道为什么会发生这种情况?
答
我意识到,这可能是太晚啦,但是当你说
(- 15 (MOVEB-x W))
这就像15 - (MOVEB-x W)
;所以如果(MOVEB-x W)
是100,那么这给你-85,这可能不是你想要的。你可能想要(- (MOVEB-x W) 15)
。