Sha256: c30347bda7a60aa0882715da897653f4e7f73bb6aea15fa2d9a1ae8192cf8605

Contents?: true

Size: 515 Bytes

Versions: 7

Compression:

Stored size: 515 Bytes

Contents

# A module for entities that are both openable and lockable.
#
module Lockable
  include Openable

  attr_accessor :lock_key

  def locked=(bool)
    @locked = bool
    if @locked == true
      @open = false
    end
    @locked
  end

  def open=(bool)
    @open = bool
    @locked = false if @open == true
    @open
  end

  def locked?
    @locked ||= false
  end

  def unlocked?
    !locked?
  end

  def lock_key?
    !@lock_key.nil?
  end
  alias has_lock_key? lock_key?
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
gamefic-standard-3.2.4 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.2.3 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.2.2 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.2.1 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.2.0 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.1.0 lib/gamefic-standard/modules/lockable.rb
gamefic-standard-3.0.0 lib/gamefic-standard/modules/lockable.rb