-- An object that the Stooge can push into a desired location.


deferred class PUZZLE_BOX
-- The name BOX has been coopted by a library class.

inherit

  MOBILE
  redefine
    customized_init
  end

feature{NONE} -- save/restore

  customized_init( r : like room ; pr : like record ) is
  do
    precursor( r, pr )
    visit( northwest )
  end

feature{NONE}

  display_locked is
  deferred
  end

  display_unlocked is
  deferred 
  end

feature

  blocks_glare : BOOLEAN is True
  blocks_shots : BOOLEAN is True

  locked : BOOLEAN

  lock is
  -- Somebody is locking onto me.
  do
    locked := True
    display_locked
  end

  unlock is
  -- I'm free! 
  do
    locked := False
    display_unlocked
  end

end 
