Completed
Push — master ( af60b3...8d5590 )
by Borja
03:45
created

magister()   A

Complexity

Conditions 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 1
CRAP Score 1.125

Importance

Changes 0
Metric Value
cc 1
dl 0
loc 3
ccs 1
cts 2
cp 0.5
crap 1.125
rs 10
c 0
b 0
f 0
1 1
pjs = %w(
2
  caminante brujo vengador hoplita beastslord bersérker
3
  hechicero invocador conjurador paladín clérigo sacerdote
4
  derviche arquero druida ladrón asesino nigromante
5
  matador falangista ingeniero
6
  invicto cazadora chamán
7
  valquiria serafín daeva
8
)
9
10
# Generic clase creator
11 1
pjs.each do |pj|
12 27
  define_method(pj + 's') do
13
    load_yaml("skills/#{pj}")
14
  end
15 27
  define_method(pj) do |id|
16
    send(pj + 's')[id].merge(char: pj)
17
  end
18
end
19
20
# Maestro de Armas
21 1
def maestrodearmas
22
  load_yaml('skills/maestrodearma')
23
end
24
25 1
def magisters
26
  load_yaml('skills/magisters')
27
end
28
29 1
def magister(id)
30
  magisters.find { |m| m['id'] == id }.merge('char' => 'magister')
31
end
32
33 1
def maestrodearma(id)
34
  maestrodearmas.find { |m| m['id'] == id }.merge('char' => 'maestrodearmas')
35
end
36
37 1
def fama(personaje)
38
  load_yaml('salones')[personaje]
39
end
40
41 1
def habilidad_base(personaje)
42
  load_yaml('skills/base')[personaje].map { |hb| Hab.new(hb) }
43
end
44