Add electron warp terminals.

This commit is contained in:
David Thompson 2024-05-22 12:35:56 -04:00
parent 747a1d285a
commit 9b88cb19c0
6 changed files with 154 additions and 22 deletions

View file

@ -77,11 +77,16 @@
(target-y (bytevector-u8-ref objects (+ i 4))))
(spawn ^electric-switch x y target-x target-y)))
(13 (spawn ^xor-gate x y))
(14 (let ((target-x (bytevector-u8-ref objects (+ i 3)))
(target-y (bytevector-u8-ref objects (+ i 4))))
(spawn ^electron-warp x y target-x target-y)))
(15 (spawn ^or-gate x y))
(id (error "invalid level object" id))))
(i* (+ i (match id
;; floor-switch or electric-switch
((or 8 12) 5)
;; floor-switch
;; electric-switch
;; electron-warp
((or 8 12 14) 5)
(_ 3)))))
(when obj
($ level* 'add-object obj))