В настоящее время я делаю игру, в которой ваш персонаж должен уклоняться от объектов, происходящих и покидающих сцену.
Моя проблема в том, что когда объекты уходят со сцены, они не появляются с другой стороны.
Каждый объект представлен posn-структурой, и они перемещаются на определенное расстояние на сцене каждый раз, когда отмечается галочка слева направо и наоборот. Я приложил, какую часть кода, я думаю, нужно редактировать.
Для ясности, мир - это struct
, содержащий курицу и машину, обе из которых являются структурами, содержащими x и y posns.
И MOVE-CAR - это константа, установленная в (add1 (случайное 49)), которая определяет, насколько быстро или медленно машина будет двигаться во время игры.
;update-world: world -> world
;purpose: updates the position of the car
(define (update-world a-world)
(make-world (world-chicken a-world) (move-horiz (world-car a-world) (* -1 MOVE-CAR))))
;move-horiz: posn number -> posn
;purpose: moves the posn left or right
(define (move-horiz a-posn delta-x)
(make-posn (+ delta-x (posn-x a-posn)) (posn-y a-posn)))
Если потребуется больше кода, я постараюсь проанализировать остальное, что у меня есть.
Буду признателен за любую оказанную помощь.