diff --git a/game/level5.fnl b/game/level5.fnl index 920f4f7..ef769ae 100644 --- a/game/level5.fnl +++ b/game/level5.fnl @@ -19,12 +19,17 @@ (vm:var :is-garbagerexx vm.false) (vm:var :garbagerexx-yx 0x0710) -; shit, rexx doesn't live in an object - I can't tag by word :/ +(vm:var :garbagerexx-introduced vm.false) (vm:word :garbagerexx ; ev -- :is-rexx? :swap :rexx :is-rexx? := :not (vm:when :is-rexx? (vm:if [ :garbagerexx-yx :get :get-responder :get := (vm:when - vm.true :is-garbagerexx :set) + vm.true :is-garbagerexx :set + :garbagerexx-introduced :get :not (vm:when + (say :rexx "BO@*SS5S...,? ") + (say :rexx "I DON'T F3EL SO" "GOO00)OD...>?&**;") + vm.true :garbagerexx-introduced :set + )) ] [ :is-garbagerexx :get (vm:when :get-responder :get :garbagerexx-yx :set @@ -40,11 +45,19 @@ (vm:word :move-garbagerexx ; yx -- f (vm:if-and [[:is-rexx?] [:is-garbagerexx :get]] [:dup 0xff :& 0x0d := (vm:if [ - (say :rexx "PARITY ERROR!") :drop vm.true :ret + (say :rexx "PARITY#ERPOR!*(!@$[") :drop vm.true :ret ] [ (vm:if-and [[:dup :not-picking-up?] [:dup :can-drop-rubble?]] [:rexx-yx :get (itile :broken-table) :update-itile]) ])]) :move-noop) +(vm:var :healthyrexx-introduced vm.false) +(vm:word :healthyrexx ; ev -- + (vm:if-and [[:is-neut?] [:dup ev.touch :=] [:healthyrexx-introduced :get :not]] + [(say :neut "REXX UNIT" "PERFORM FULL DIAGNOSTIC SCAN") + (say :rexx "I'M IN TIP-TOP SHAPE, BOSS!") + (say :neut "ACTIVATING RELIEF SUBROUTINE") + vm.true :healthyrexx-introduced :set]) :rexx) + level diff --git a/game/map5.json b/game/map5.json index 5f66857..e8be582 100644 --- a/game/map5.json +++ b/game/map5.json @@ -1 +1 @@ -{"neut":{"y":6,"x":20},"map":"21616161228161616161616161616161616162612102E0C0C0C0C0E0C04361C0C0C0C0C0A3C0C0612161C0C0C0C0C0C0C0C022C0C0C08282C0828261416103C0C0C0C0C0C0C081C0C0C0C0C0C0C0C2C1210203C0C0C0C0C0C04361C0C0C08282838282622161616161816161616161618161616161616161216163C0C0C0C0E0C0C06143C0C0C0C0C0C063612102C0C0C0C0C0C0C0C061C0C0C0C0C0C0C0C0814161C0C0C0C0E2C0E2836101C0C0C0C0C0C0C0C1216143C0C0C082A2A2A281C0C0C043034382E26121610261610261C16102616161026161610261612121212121214121212121212121214121212121","tickword":"doortimer-tick","jaye":{"y":5,"x":19},"gord-following":true,"moveword":"move-garbagerexx","objects":[{"x":17,"func":"garbagerexx","y":11,"name":"","linkword":""},{"x":17,"func":"garbagerexx","y":8,"name":"","linkword":""},{"x":20,"func":"do-timedswitch","y":9,"name":"timedswitch","linkword":"","link":13},{"x":20,"func":"switch","y":4,"name":"","linkword":"","link":16},{"x":12,"func":"term","y":4,"name":"","linkword":"","link":9},{"x":10,"func":"garbagerexx","y":4,"name":"","linkword":""},{"x":8,"func":"switch","y":2,"name":"","linkword":"","link":17},{"x":8,"func":"term","y":6,"name":"","linkword":"","link":10},{"x":8,"func":"term","y":11,"name":"","linkword":"","link":5},{"x":3,"func":"term","y":11,"name":"","linkword":"","link":8},{"x":5,"func":"scan","y":12,"name":"","linkword":"","link":12},{"x":6,"func":"door","y":12,"name":"","linkword":""},{"x":6,"func":"door","y":7,"name":"","linkword":""},{"x":11,"func":"door","y":9,"name":"","linkword":""},{"x":11,"func":"scan","y":10,"name":"","linkword":"","link":14},{"x":13,"func":"door","y":7,"name":"","linkword":""},{"x":11,"func":"door","y":3,"name":"","linkword":""}]} \ No newline at end of file +{"neut":{"y":6,"x":20},"map":"21616161228161616161616161616161616162612102E0C0C0C0C0E0C04361C0C0C0C0C0A3C0C0612161C0C0C0C0C0C0C0C022C0C0C08282C0828261416103C0C0C0C0C0C0C081C0C0C0C0C0C0C0C2C1210203C0C0C0C0C0C04361C0C0C08282838282622161616161816161616161618161616161616161216163C0C0C0C0E0C0C06143C0C0C0C0C0C063612102C0C0C0C0C0C0C0C061C0C0C0C0C0C0C0C0814161C0C0C0C0E2C0E2836101C0C0C0C0C0C0C0C1216143C0C0C082A2A2A281C0C0C043034382E26121610261610261C16102616161026161610261612121212121214121212121212121214121212121","tickword":"doortimer-tick","jaye":{"y":5,"x":19},"gord-following":true,"moveword":"move-garbagerexx","objects":[{"x":17,"func":"garbagerexx","y":11,"name":"","linkword":""},{"x":17,"func":"garbagerexx","y":8,"name":"","linkword":""},{"x":20,"func":"do-timedswitch","y":9,"name":"timedswitch","linkword":"","link":13},{"x":20,"func":"switch","y":4,"name":"","linkword":"","link":16},{"x":12,"func":"term","y":4,"name":"","linkword":"","link":9},{"x":10,"func":"healthyrexx","y":4,"name":"","linkword":""},{"x":8,"func":"switch","y":2,"name":"","linkword":"","link":17},{"x":8,"func":"term","y":6,"name":"","linkword":"","link":10},{"x":8,"func":"term","y":11,"name":"","linkword":"","link":5},{"x":3,"func":"term","y":11,"name":"","linkword":"","link":8},{"x":5,"func":"scan","y":12,"name":"","linkword":"","link":12},{"x":6,"func":"door","y":12,"name":"","linkword":""},{"x":6,"func":"door","y":7,"name":"","linkword":""},{"x":11,"func":"door","y":9,"name":"","linkword":""},{"x":11,"func":"scan","y":10,"name":"","linkword":"","link":14},{"x":13,"func":"door","y":7,"name":"","linkword":""},{"x":11,"func":"door","y":3,"name":"","linkword":""}]} \ No newline at end of file