Class: RPiet::DirectionPointer

Inherits:
Object
  • Object
show all
Defined in:
lib/rpiet/direction_pointer.rb

Constant Summary collapse

ASCII_ARROWS =
['>', 'v', '<', '^']

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDirectionPointer

Returns a new instance of DirectionPointer.



16
17
18
# File 'lib/rpiet/direction_pointer.rb', line 16

def initialize
  @direction = RPiet::Direction::RIGHT
end

Instance Attribute Details

#directionObject (readonly)

Returns the value of attribute direction.



14
15
16
# File 'lib/rpiet/direction_pointer.rb', line 14

def direction
  @direction
end

Instance Method Details

#asciiObject



30
31
32
# File 'lib/rpiet/direction_pointer.rb', line 30

def ascii
  ASCII_ARROWS[@direction.value]
end

#inspectObject Also known as: to_s



34
35
36
# File 'lib/rpiet/direction_pointer.rb', line 34

def inspect
  @direction.inspect
end

#next_possible(x, y) ⇒ Object



24
25
26
27
# File 'lib/rpiet/direction_pointer.rb', line 24

def next_possible(x, y)
  dx, dy = @direction.deltas
  [x + dx, y + dy]
end

#rotate!(amount = 1) ⇒ Object



20
21
22
# File 'lib/rpiet/direction_pointer.rb', line 20

def rotate!(amount = 1)
  @direction = @direction.incr amount
end