Class: Train

Inherits:
Object
  • Object
show all
Defined in:
lib/choo/train.rb

Constant Summary collapse

TRAIN =
"🚂 "
CARRIAGE =
"🚃 "
ANIMATION_RATE =
0.025

Instance Method Summary collapse

Constructor Details

#initialize(carriages_count) ⇒ Train

Returns a new instance of Train.



8
9
10
11
12
# File 'lib/choo/train.rb', line 8

def initialize(carriages_count)
  @train = TRAIN + (CARRIAGE * carriages_count)
  @train_length = 3 + (3 * carriages_count)
  @moves = 0
end

Instance Method Details

#hideObject



22
23
24
25
# File 'lib/choo/train.rb', line 22

def hide
  Terminal.restore_position_of_cursor
  @thread.kill
end

#showObject



14
15
16
17
18
19
20
# File 'lib/choo/train.rb', line 14

def show
  hide if @thread
  Terminal.save_position_of_cursor
  @thread = Thread.new do
    choo
  end
end