manasimu 0.0.29 → 0.0.30

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/manasimu/data.rb +30 -5
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f72b3b73b7814d529111d94adcf4a6257a73a0fd556328d312b15d891e17f5a3
4
- data.tar.gz: 9574fa9f53290ff7532c87319037ba98b793e6d9bdff4b20b9e99da20a0fbea3
3
+ metadata.gz: 724aff14f6e57773ecb896037bd4eb379d9fe13ac6870c3fd37b3609682071ab
4
+ data.tar.gz: 9db295c3c06234a8cd85e008e832d853f40fda0fc9341a0a5e6a8bdd98e0ed55
5
5
  SHA512:
6
- metadata.gz: aedd75381bbc4fd8e2256c9a83ac2a06ed951e28dfd06dae6c483c785098c76a0b247954be3ca19cda094a3608c7d950f0068d01380caf595492c5c436daa29b
7
- data.tar.gz: 9953c1faa928cd8edf0be11505596ef9dff13514eb26f86f45811171dc15005e33b201b81774743f28c50c52db043708304b9ab70d5f03a8c65b7f17214d4302
6
+ metadata.gz: f1b976dc510db9c4b20ce8620dceda72b8a0106d275300bb0f0d3b4413cfe862be995794155a0e02a8ac43c2a2815655342e475fe265b418f2dad6732c03f4b7
7
+ data.tar.gz: 9f7a49c6b350199271151ad8adc8c5d6472def15df5210c7889c123ff849fcd1c47d017b095ae1ac06883e15dbe79ce9bec1a39ee67538d82ce6d6bac287f32c
data/lib/manasimu/data.rb CHANGED
@@ -1,12 +1,33 @@
1
1
  class Deck
2
2
 
3
3
  def self.create(lines)
4
- items = Deck.input_to_card_hash(lines)
4
+ items, only_names = Deck.input_to_card_hash(lines)
5
+
6
+ # 名前だけの行を考慮する
7
+ names = only_names.map do |hash| hash[:name] end
8
+ types = find_card_types(names)
9
+
10
+ if types.length == names.length
11
+ only_names.each_with_index do |a, i|
12
+ name = types[i].name
13
+ if types[i].language == "ja"
14
+ name = types[i].names[0]
15
+ end
16
+ deck_item = {}
17
+ deck_item[:amount] = only_names[i][:amount]
18
+ deck_item[:name] = name
19
+ deck_item[:set] = types[i].set_code
20
+ deck_item[:setnum] = types[i].number
21
+ items << deck_item
22
+ end
23
+ end
24
+
5
25
  Deck.get_card_details(items)
6
26
  end
7
27
 
8
28
  def self.input_to_card_hash(lines)
9
29
  result = []
30
+ only_names = []
10
31
  looking_for_deck_line = false
11
32
  for line in lines do
12
33
  trimmed = line.chomp
@@ -53,11 +74,15 @@ class Deck
53
74
  deck_item = {}
54
75
  deck_item[:amount] = $1.strip
55
76
  deck_item[:name] = $2.strip
56
- deck_item[:set] = $3.strip
57
- deck_item[:setnum] = $4.strip
58
- result << deck_item
77
+ if $3
78
+ deck_item[:set] = $3.strip
79
+ deck_item[:setnum] = $4.strip
80
+ result << deck_item
81
+ else
82
+ only_names << deck_item
83
+ end
59
84
  end
60
- result
85
+ [result, only_names]
61
86
  end
62
87
 
63
88
  def self.card_types
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manasimu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.29
4
+ version: 0.0.30
5
5
  platform: ruby
6
6
  authors:
7
7
  - so1itaryrove