manasimu 0.0.29 → 0.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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