Files
kq4-decompile/rooms/kq4-089-castle-kitchen.md
2026-02-20 10:16:03 -08:00

5.3 KiB

Room 89: Castle Kitchen

Look Description

"You have discovered the castle's kitchen. Not a very pleasant kitchen, but a kitchen nonetheless. Against the back wall, two cabinets flank a cold stone fireplace. You see a long table under the one small window."

Interactions

Status Behavior Type Command Response
TODO Look look[<around>][/!*] / look/room,castle,kitchen "You have discovered the castle's kitchen. Not a very pleasant kitchen, but a kitchen nonetheless. Against the back wall, two cabinets flank a cold stone fireplace. You see a long table under the one small window." (Print 89 0)
TODO Look look[<in]/cabinet "[If near right cabinet with items: 'Here are all of your possessions!']" / "[If near right cabinet empty: 'The cabinet is empty.']" / "[If near left cabinet: 'The cabinet is full of dishes.']" (Print 89 1/2/3)
TODO Look look/cabinet "You see two cabinets; one on each side of the stone fireplace." (Print 89 4)
TODO Look look[<under]/table "There's nothing under the table." (Print 89 5)
TODO Look look/table "Nothing on the table interests you." (Print 89 6)
TODO Look look/fireplace "The fireplace is unlit and cold." (Print 89 7)
TODO Look look/caldron "An empty iron pot sits in it." (Print 89 8) / "The iron pot in the fireplace is empty." (Print 89 9)
TODO Look look/barrel "There is nothing of interest in the barrel." (Print 89 10)
TODO Look look/wall "There is nothing of importance on the walls." (Print 89 11)
TODO Look look/dirt / look[<down] "There is nothing of importance on the floor." (Print 89 12)
TODO Look look/window "[If in rect 220-282, 124-146: 'You see the mountain out the window.']" / "[If not in rect: 'You're not close enough.']" (Print 89 13 / 800 1)
TODO Look look/door "You see an open doorway before you." (Print 89 14)
TODO Action open/barrel "There is nothing in the barrel." (Print 89 15)
TODO Action open/window "The windows do not open." (Print 89 16)
TODO Action open/cabinet,door "[If near right cabinet closed: Opens cabinet, shows items if present or 'The cabinet is empty.']" / "[If near right cabinet open: 'It appears open already.']" / "[If near left cabinet closed: Opens cabinet, shows 'The cabinet is full of dishes.']" / "[If near left cabinet open: 'It appears open already.']" / "[If not near any: 'You're not close enough.']" (Print 89 17/18/3/18/800 1)
TODO Action close/cabinet,door "[If near right cabinet open: Closes cabinet]" / "[If near right cabinet closed: 'It already is closed.']" / "[If near left cabinet open: Closes cabinet]" / "[If near left cabinet closed: 'It already is closed.']" / "[If not near any: 'You're not close enough.']" (Print 89 19/800 1)
TODO Action break/window "That would not accomplish anything." (Print 89 20)
TODO Get get/caldron "You don't need it." (Print 89 21)
TODO Get get/dish "[If left cabinet open: 'You have no need of dishes.']" / "[If left cabinet closed: 'The cabinet is closed.']" (Print 89 22/23)
TODO Get get/all,possessions,inventory "[If no items in cabinet: 'The cabinet is empty.']" / "[If items but not near right cabinet: 'You're not close enough.']" / "[If items and near right cabinet: Collects all items from cabinet, awards 4 points, sets global182=1]" (Print 89 2/24/800 1)

Scripts

Status Behavior Type Name Trigger Behavior
TODO Interaction rightCabinet Opening right cabinet (cel=0) Stops updating after cabinet animation completes (state -1)
TODO Interaction leftCabinet Opening left cabinet (cel=0) Stops updating after cabinet animation completes (state -1)

Technical Notes

  • Room Number: 89
  • Picture: 89
  • Region: 604 (Castle area)
  • Exits: Room 91 (south edge detected with control $0040)
  • Music: Unknown

Objects

Object View Loop Description
newProp 606 0 Right cabinet (animated)
newProp_2 606 1 Left cabinet (animated)
newView 606 2 Right cabinet items view
newView_2 606 2 Left cabinet dishes view
Static feature 634 1 Stone fireplace/back wall element
(Conditional) 512 0 Lit element (when global100 is set)
(Conditional) 649 2 Additional element (when global100 is set)

State Variables

Variable Values Description
local7 0, 1 Whether cabinet contains items (checked via localproc_000c which scans inventory for items owned by room 89)
global182 0, 1 Whether player has collected items from cabinet (score awarded flag)
global175 Any Reset to 0 on room entry from room 91 or initial game
global100 0, 1 Controls conditional objects (possibly night/candle state)

Entry Points

  • From Room 91: Player enters at position (38, 151) with view 4, xStep 4, yStep 2
  • Initial game (room 0): Same entry as from Room 91

Inventory Items

  • Room 89 can contain inventory items (checked by localproc_000c which iterates through inventory to find items with owner? == 89)
  • When player gets all items: awards 4 points, sets global182 = 1