diff --git a/NeutTower.dsk b/NeutTower.dsk index dd9ef57..16038a0 100644 Binary files a/NeutTower.dsk and b/NeutTower.dsk differ diff --git a/game/boop.fnl b/game/boop.fnl index 8a96c44..eeffccc 100644 --- a/game/boop.fnl +++ b/game/boop.fnl @@ -66,10 +66,14 @@ result) (vm:word :snd-explode 0x40 :lit :randombytes :blipmem) -(vm:word :snd-dooropen (notes [:c1 :e1] 8)) -(vm:word :snd-doorclose (notes [:e1 :c1] 8)) +(vm:word :snd-dooropen (notes [:c1 :e1] 3)) +(vm:word :snd-doorclose (notes [:e1 :c1] 3)) (vm:word :snd-term-jingle (notes [:e3 :f3 :g3] 0x20)) (vm:word :snd-termon :snd-term-jingle (note :c4 0x20)) (vm:word :snd-termoff :snd-term-jingle (note :c3 0x20)) - +(vm:word :snd-rexx (notes [:c2 :g2 :e2 :c3] 0x08 0x08)) +(vm:word :snd-libb (notes [:d#1 :g#1 :f#1 :g1] 0x08 0x7f)) +(vm:word :snd-garbage (notes [:a5 :a3 :a2] 0x04 0xa0)) +(vm:word :snd-teleport (notes [:e4 :d#4 :d4 :g#4] 0x1a 0x50)) +; ((. (require :game.boop) :notes) ) {: note : notes} diff --git a/game/entity.fnl b/game/entity.fnl index e6eff2a..37e8822 100644 --- a/game/entity.fnl +++ b/game/entity.fnl @@ -131,7 +131,7 @@ (vm:ifchain [:is-jaye?] [:drop ev.act] [:is-neut?] [:responder-itile (itile :termon) := (vm:when :linked-entity :dup :entity-itile (itile :termon) := - (vm:if [:get :move-player-to] + (vm:if [:get :move-player-to :snd-teleport] [:drop (say :neut "DESTINATION TERMINAL" "IS DISCONNECTED") :disconnected-term-attempt :get :not (vm:when vm.true :disconnected-term-attempt :set @@ -153,6 +153,7 @@ [ev.untouch :libb-on-responder :not (vm:when ev.deact :handle-scan)] [ev.hack vm.true :hack-handled :set ev.act :handle-scan + :snd-libb controlstate.libb :controlstate :bset :move-to-responder controlstate.neut :controlstate :bset @@ -165,7 +166,7 @@ (vm:if-and [[:is-neut?] [:responder-itile (itile :t-rexx) :=]] [0xffff :move-player-to (itile :t-rexxstop) :set-respondertile - :get-responder :set-rexx] + :get-responder :set-rexx :snd-rexx] [(vm:if-and [[:is-rexx?] [:responder-itile (itile :t-rexxstop) :=]] [0xffff :move-player-to (itile :t-rexx) :set-respondertile diff --git a/game/level5.fnl b/game/level5.fnl index 9afd062..33981f3 100644 --- a/game/level5.fnl +++ b/game/level5.fnl @@ -1,10 +1,12 @@ (local {: deflevel : say : itile : controlstate : tilelist} (require :game.defs)) (local {: ev} (require :game.entity)) (local tile (require :game.tiles)) +(local {: notes} (require :game.boop)) (local {: walkable : neutable : debris : sittable} tile.flag-to-bit) (local level (deflevel "game/map5.json" :level5)) (local vm level.vm) +(vm:word :snd-dropgarbage (notes [:a1] 0x02 0xf0)) (vm.code:append :debristiles) (each [itile tiledef (ipairs tilelist)] (when tiledef.flags.debris @@ -54,7 +56,7 @@ (say :rexx "PARITYe#ERPORr(sbaitso" " tellmeabout" " your problems") :drop vm.true :ret ] [ (vm:if-and [[:dup :not-picking-up?] [:dup :can-drop-rubble?]] - [:rexx-yx :get :randomgarbage :update-itile]) + [:rexx-yx :get :randomgarbage :update-itile :snd-dropgarbage]) ])]) :move-noop) diff --git a/game/level6.fnl b/game/level6.fnl index 447b2ff..23e4bf8 100644 --- a/game/level6.fnl +++ b/game/level6.fnl @@ -24,6 +24,7 @@ [(say :pady "ANOTHER STRANGE PROGRAM!" "MY, I'M POPULAR TODAY!") (say :libb "OH PUKE. PLEASE SHUT UP.") (say-runon :pady "HOW RUD") + :snd-libb (say :libb "]/WINNUKE 182.556.21.74") (say :pady "PADYSEC CAUSED A GENERAL" "PROTECTION FAULT IN MODULE" "MORICON.DLL AT 000A:BE3F.") (say :libb "]/OPEN")]) diff --git a/game/player.fnl b/game/player.fnl index b66e394..9a7c770 100644 --- a/game/player.fnl +++ b/game/player.fnl @@ -81,7 +81,7 @@ (vm:word :move-rexx-trash ; yx -- f (vm:if-and [[:dup debris :flag-at?] [:is-rexx?]] - [(itile :t-floor) :update-itile] [:drop]) + [(itile :t-floor) :update-itile :snd-garbage] [:drop]) vm.false) (vm:word :move-gord-sit ; yx -- f (vm:if-and [[:dup sittable :flag-at?] [:is-jaye?] [:gord-following?]]