Class: Pktool::Cli

Inherits:
Thor
  • Object
show all
Defined in:
lib/cli/cli.rb

Instance Method Summary collapse

Instance Method Details

#damageObject



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/cli/cli.rb', line 61

def damage
  puts "<underline>攻撃側の指定</underline>".termcolor
  attacker = Builder.new_pokemon

  puts "<underline>防御側の指定</underline>".termcolor
  defender = Builder.new_pokemon

  puts "<underline>技の指定</underline>".termcolor
  attack = Builder.attack(attacker, defender)

  puts ""
  puts "<underline>攻撃側</underline>".termcolor
  puts attacker.name + " " + attacker.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
  puts "<underline>防御側</underline>".termcolor
  puts defender.name + " " + defender.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
  puts
  puts attack.damage.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
  defeat = attack.defeat
  puts "<bold>確定数</bold>:<red>#{defeat[:num]}回</red> (#{'%.2f' % (defeat[:rate] * 100)}%) ".termcolor

end

#infoObject



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/cli/cli.rb', line 22

def info
  pokemon = Builder.default_pokemon
  puts "<underline>図鑑番号</underline>".termcolor
  puts pokemon.pokemon_id
  puts "<underline>種族値</underline>".termcolor
  puts pokemon.base_stat.map{|k,v| "<bold>#{k}</bold>:<red>#{v}</red> ".termcolor}.join
  puts "<underline>相性</underline>".termcolor
  puts "4.0: " + pokemon.types.select{|k,v| v == 4.00 }.map{|k,v| "<red>#{k}</red>".termcolor}.join
  puts "2.0: " + pokemon.types.select{|k,v| v == 2.00 }.map{|k,v| "<red>#{k}</red>".termcolor}.join
  puts "1.0: " + pokemon.types.select{|k,v| v == 1.00 }.map{|k,v| "#{k}".termcolor}.join
  puts "1/2: " + pokemon.types.select{|k,v| v == 0.50 }.map{|k,v| "<blue>#{k}</blue>".termcolor}.join
  puts "1/4: " + pokemon.types.select{|k,v| v == 0.25 }.map{|k,v| "<blue>#{k}</blue>".termcolor}.join
  puts ""
  power(pokemon)
end

#power(pokemon = Builder.default_pokemon) ⇒ Object



51
52
53
54
55
56
57
58
# File 'lib/cli/cli.rb', line 51

def power(pokemon = Builder.default_pokemon)
  pokemon.type_ranked_moves.each do |kind, moves|
    puts "<underline>#{kind}</underline>".termcolor
    moves.each do |move|
      puts "<bold>#{move.attack_type}</bold> 威力:#{'%3d' % move.power} 命中:#{'%3d' % move.accuracy} #{move.name}".termcolor
    end
  end
end

#statusObject



39
40
41
42
43
44
45
46
47
48
# File 'lib/cli/cli.rb', line 39

def status
  pokemon = Builder.new_pokemon
  puts "<underline>種族値</underline>".termcolor
  puts pokemon.base_stat.map{|k,v| "<bold>#{k}</bold>:<red>#{v}</red> ".termcolor}.join
  puts "<underline>能力値</underline>".termcolor
  puts pokemon.stats.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
  puts "<underline>相性</underline>".termcolor
  puts pokemon.types.select{|k,v| v > 1 }.map{|k,v| "<bold>#{k}</bold>:<red>#{v}</red> ".termcolor}.join
  puts pokemon.types.select{|k,v| v < 1 }.map{|k,v| "<bold>#{k}</bold>:<blue>#{v}</blue> ".termcolor}.join
end

#versionObject



84
85
86
# File 'lib/cli/cli.rb', line 84

def version
  puts VERSION
end