Class: Avm::MaysMagicalSchool::Builders::AssemblyStages::Terrain

Inherits:
Object
  • Object
show all
Defined in:
lib/avm/mays_magical_school/builders/assembly_stages/terrain.rb

Constant Summary collapse

BITS_PER_CODE =
6
BIT_RANGE =
(0..BITS_PER_CODE - 1).freeze
CODE_RANGE =
(0..(2**BITS_PER_CODE - 1)).freeze

Instance Method Summary collapse

Instance Method Details

#codeObject

Raises:

  • (::RangeError)


23
24
25
26
27
28
# File 'lib/avm/mays_magical_school/builders/assembly_stages/terrain.rb', line 23

def code
  r = terrain.asm_code
  return r if CODE_RANGE.include?(r)

  raise ::RangeError, "Element: #{r}, Range: #{CODE_RANGE}"
end

#to_bit_arrayObject



19
20
21
# File 'lib/avm/mays_magical_school/builders/assembly_stages/terrain.rb', line 19

def to_bit_array
  ::EacRubyUtils::Byte.new(code).to_bit_array(BIT_RANGE)
end