Fix tile editor, level warp, chuck mode
This commit is contained in:
parent
6d005950a5
commit
1e062dd281
BIN
NeutTower.dsk
BIN
NeutTower.dsk
Binary file not shown.
|
@ -62,8 +62,8 @@
|
||||||
(draw-bit-color b px py)
|
(draw-bit-color b px py)
|
||||||
(draw-bit b px py (= (% bitx 2) 1)))
|
(draw-bit b px py (= (% bitx 2) 1)))
|
||||||
(when (and (active? self :tile) (mouse-inside px py pixel-size pixel-size))
|
(when (and (active? self :tile) (mouse-inside px py pixel-size pixel-size))
|
||||||
(when (= self.bit nil) (set self.bit (not bit)))
|
(when (= self.bit nil) (set self.bit (not b)))
|
||||||
(when (not= self.bit bit)
|
(when (not= self.bit b)
|
||||||
(self:update-tile (set-tile-bit tile ibyte ibit self.bit))))))
|
(self:update-tile (set-tile-bit tile ibyte ibit self.bit))))))
|
||||||
(love.graphics.setColor 1 1 1 1)
|
(love.graphics.setColor 1 1 1 1)
|
||||||
(values editor-w editor-h))
|
(values editor-w editor-h))
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
(local {: vm} (require :game.defs))
|
(local {: vm : say-runon : say} (require :game.defs))
|
||||||
|
|
||||||
(fn defcheat [name ...]
|
(fn defcheat [name ...]
|
||||||
(local cheatdata (.. name "-data"))
|
(local cheatdata (.. name "-data"))
|
||||||
|
@ -17,7 +17,20 @@
|
||||||
|
|
||||||
(defcheat :NTSPISPOPD :noclip :get :not :noclip :set)
|
(defcheat :NTSPISPOPD :noclip :get :not :noclip :set)
|
||||||
|
|
||||||
|
(vm.code:append :level-pointers
|
||||||
|
[:vm :level1 :level2 :level3 :level4 :level5 :level6])
|
||||||
|
(defcheat :NTXYZZY
|
||||||
|
(say-runon :term "WARP TO ROOM #?" "(0 TO NOT CHEAT)")
|
||||||
|
:read-digit :hide-footer (vm:if-and [[:dup 1 :>=] [:dup 7 :<]]
|
||||||
|
[:dec :dup :+ :lit :level-pointers :+ :get :load-level]
|
||||||
|
[:drop]))
|
||||||
|
|
||||||
|
(defcheat :NTCHUCK :chuck-mode :get :not :chuck-mode :set
|
||||||
|
:chuck-mode :get (vm:if
|
||||||
|
[(say :neut "CHUCK MODE ENABLED!" "* W H I N N Y *")]
|
||||||
|
[(say :neut "CHUCK MODE DISABLED." "BEEP BOOP.")]))
|
||||||
|
|
||||||
(vm:word :cheat-key ; ascii --
|
(vm:word :cheat-key ; ascii --
|
||||||
(vm:if-and [[:dup (string.byte "A") :>=] [:dup (string.byte "Z") :<=]]
|
(vm:if-and [[:dup (string.byte "A") :>=] [:dup (string.byte "Z") :<=]]
|
||||||
[:NTSPISPOPD]
|
[:dup :NTSPISPOPD :dup :NTXYZZY :NTCHUCK]
|
||||||
[:drop]))
|
[:drop]))
|
||||||
|
|
|
@ -137,8 +137,9 @@
|
||||||
[0x00ff (itile :gord-w)]
|
[0x00ff (itile :gord-w)]
|
||||||
[:else (itile :gord-e)])]))
|
[:else (itile :gord-e)])]))
|
||||||
|
|
||||||
|
(vm:var :chuck-mode vm.false)
|
||||||
(vm:word :two-frame :tick-count :get 0x1f :& 0x10 :<)
|
(vm:word :two-frame :tick-count :get 0x1f :& 0x10 :<)
|
||||||
(vm:word :neut-tile :two-frame (vm:if [(itile :neut1)] [(itile :neut2)]))
|
(vm:word :neut-tile :chuck-mode :get (vm:if [(itile :t-chuck)] [:two-frame (vm:if [(itile :neut1)] [(itile :neut2)])]))
|
||||||
(vm:word :libb-tile :two-frame (vm:if [(itile :libb1)] [(itile :libb2)]))
|
(vm:word :libb-tile :two-frame (vm:if [(itile :libb1)] [(itile :libb2)]))
|
||||||
|
|
||||||
(vm:word :flag-at? ; yx flag -- f
|
(vm:word :flag-at? ; yx flag -- f
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue