manasimu 0.0.3 → 0.0.6

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 918a76fd5f64f5d4bc3564e772e45463d2dc539f24aa1d7978ed29228d1b4dd1
4
- data.tar.gz: 44cb66701c3ce684dc4061b7b54928a805406fd7d893b51590d77e7e80d6067e
3
+ metadata.gz: 70c28d1658ed8cd6e6f45a92ea6cd50d9b771c5e3bc56d06103da417347facc9
4
+ data.tar.gz: 9d1bd594f3e33a517538bdd5fb03b67eb642f0d750d4d47755523edefe159384
5
5
  SHA512:
6
- metadata.gz: 87f5b1fbe1ddc9d03d1cfd008cae32ad14be78a71d3b412623ea68bdc240425d4e18624bbe97ab6586908b98c9fc1c960e9bee0b1d67ecddfa1ffa34027feecf
7
- data.tar.gz: e46560384086661864294494bfc720c25b9cf4ac5c3f7e9ad4f71164f66abe458ab1f5b8875f4047d0d3106d2307c74df7a6ede0c17b0076159e04c687d653d4
6
+ metadata.gz: '09f8f73fa3be2076e8b43879a84173260d7c37dcef702826632b084c396e1d99ddb06441caf0a03ef65629bc9febe7a5e853f1b3afec815971493633f74beca6'
7
+ data.tar.gz: e505904201ad78e4611518690b386a70692740bc6934caf0d7beab43bc44dd8020a7207b5950e8e440313da999406db3bf13a410d5bdb970909b1652d9d4f2e6
Binary file
Binary file
data/lib/manasimu/card.rb CHANGED
@@ -246,22 +246,19 @@ end
246
246
 
247
247
  class CardTypeAggregate
248
248
 
249
- def find(card_type)
249
+ def find(set_code, number)
250
250
  @memo ||= []
251
- return nil if not card_type
252
- singleton = @memo.find do |c|
251
+ @memo.find do |c|
253
252
  a = c.contents[0]
254
- b = card_type.contents[0]
255
- a and b and a.name == b.name
256
- end
257
- if singleton
258
- singleton
259
- else
260
- @memo << card_type
261
- card_type
253
+ a and a.set_code == set_code and a.number == number
262
254
  end
263
255
  end
264
256
 
257
+ def add(card_type)
258
+ @memo ||= []
259
+ @memo << card_type
260
+ end
261
+
265
262
  def each
266
263
  return if not @memo
267
264
  @memo.each do |item|
data/lib/manasimu/data.rb CHANGED
@@ -61,50 +61,15 @@ class Deck
61
61
  end
62
62
 
63
63
  def self.get_card_details(deck_items)
64
- path = File.expand_path( '../../../db/AllPrintings.sqlite', __FILE__ )
65
- db = SQLite3::Database.new(path)
66
- sql = <<DOC
67
- select distinct
68
- name
69
- ,number
70
- ,colorIdentity
71
- ,side
72
- ,setCode
73
- ,manaCost
74
- ,types
75
- ,text
76
- ,convertedManaCost
77
- from cards
78
- where
79
- number = ? and
80
- setCode = ?
81
- DOC
64
+ path = File.expand_path( '../../../db/card_type_aggregate', __FILE__ )
65
+ @@card_types ||= Marshal.load(File.open(path, 'r'))
82
66
  cards = []
83
67
  card_id = 0
84
- card_types = CardTypeAggregate.new
68
+ card_types = []
85
69
  deck_items.each do |deck_item|
86
- rows = db.execute(sql, deck_item[:setnum], deck_item[:set])
87
- if rows.empty?
88
- puts deck_item[:name]
89
- end
90
-
91
- card_type = card_types.find(
92
- CardType.new(rows.map { |row|
93
- {
94
- name: row[0],
95
- number: row[1],
96
- color_identity: row[2],
97
- side: row[3],
98
- set_code: row[4],
99
- mana_cost: row[5],
100
- types: row[6],
101
- text: row[7],
102
- converted_mana_cost: row[8]
103
- }
104
- })
105
- )
70
+ card_type = @@card_types.find(deck_item[:set], deck_item[:setnum])
71
+ card_types << card_type
106
72
  card = Card.new(card_type)
107
-
108
73
  deck_item[:amount].to_i.times do
109
74
  card_clone = card.dup
110
75
  card_clone.id = card_id
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: manasimu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - so1itaryrove
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-05 00:00:00.000000000 Z
11
+ date: 2022-05-06 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: mtg arrena mana curve simulator
14
14
  email: so1itaryrove@gmail.com
@@ -16,7 +16,7 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
- - db/AllPrintings.sqlite
19
+ - db/card_type_aggregate
20
20
  - ext/ford_fulkerson.so
21
21
  - lib/manasimu.rb
22
22
  - lib/manasimu/card.rb
Binary file