manasimu 0.0.4 → 0.0.7
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 +4 -4
- data/db/card_type_aggregate +0 -0
- data/ext/ford_fulkerson.so +0 -0
- data/lib/manasimu/card.rb +19 -12
- data/lib/manasimu/data.rb +7 -41
- metadata +3 -3
- data/db/AllPrintings.sqlite +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: aa769c22b5954b3410dec04b773abab6ec9130953b07946ec229528cd38dd7a9
|
|
4
|
+
data.tar.gz: 0c96dcee60c36629f885e3dbcb0c236c4a699c6bab064a323f7b56968041733f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 00b241f58208db388327de9e23686f41871a3f446dd99d1100589ddc777debc78c9fd551d0edc9ad220c40060fb7f1620e9986445f461a4df50b4afe32f8f171
|
|
7
|
+
data.tar.gz: e620e1ec3ed3f2b2d5c963aa1a4fd8712c4016ca028e7e0efc13efb1abd4af1de0a88d4300145040a433656cc12e9867b5963fecf54a7008208e88c655f8a25e
|
|
Binary file
|
data/ext/ford_fulkerson.so
CHANGED
|
Binary file
|
data/lib/manasimu/card.rb
CHANGED
|
@@ -75,7 +75,16 @@ class Card
|
|
|
75
75
|
end
|
|
76
76
|
|
|
77
77
|
class CardType
|
|
78
|
-
attr_accessor :contents
|
|
78
|
+
attr_accessor :contents, :played, :drawed, :name
|
|
79
|
+
|
|
80
|
+
def self.create(card_type, name)
|
|
81
|
+
ret = card_type.dup
|
|
82
|
+
ret.contents = card_type.contents
|
|
83
|
+
ret.played = nil
|
|
84
|
+
ret.drawed = nil
|
|
85
|
+
ret.name = name
|
|
86
|
+
ret
|
|
87
|
+
end
|
|
79
88
|
|
|
80
89
|
def initialize(contents)
|
|
81
90
|
return if not contents
|
|
@@ -246,22 +255,19 @@ end
|
|
|
246
255
|
|
|
247
256
|
class CardTypeAggregate
|
|
248
257
|
|
|
249
|
-
def find(
|
|
258
|
+
def find(set_code, number)
|
|
250
259
|
@memo ||= []
|
|
251
|
-
|
|
252
|
-
singleton = @memo.find do |c|
|
|
260
|
+
@memo.find do |c|
|
|
253
261
|
a = c.contents[0]
|
|
254
|
-
|
|
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
|
|
262
|
+
a and a.set_code == set_code and a.number == number
|
|
262
263
|
end
|
|
263
264
|
end
|
|
264
265
|
|
|
266
|
+
def add(card_type)
|
|
267
|
+
@memo ||= []
|
|
268
|
+
@memo << card_type
|
|
269
|
+
end
|
|
270
|
+
|
|
265
271
|
def each
|
|
266
272
|
return if not @memo
|
|
267
273
|
@memo.each do |item|
|
|
@@ -293,6 +299,7 @@ class Content
|
|
|
293
299
|
def to_s
|
|
294
300
|
"[#{@name}] [#{@types}] [#{@color_identity}] [#{@mana_cost}]"
|
|
295
301
|
end
|
|
302
|
+
|
|
296
303
|
end
|
|
297
304
|
|
|
298
305
|
class FordFulkersonSingleton
|
data/lib/manasimu/data.rb
CHANGED
|
@@ -61,50 +61,16 @@ class Deck
|
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
def self.get_card_details(deck_items)
|
|
64
|
-
path = File.expand_path( '../../../db/
|
|
65
|
-
|
|
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 =
|
|
68
|
+
card_types = []
|
|
85
69
|
deck_items.each do |deck_item|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
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
|
-
)
|
|
106
|
-
card = Card.new(card_type)
|
|
107
|
-
|
|
70
|
+
card_type = @@card_types.find(deck_item[:set], deck_item[:setnum])
|
|
71
|
+
clone = CardType.create(card_type, deck_item[:name])
|
|
72
|
+
card_types << clone
|
|
73
|
+
card = Card.new(clone)
|
|
108
74
|
deck_item[:amount].to_i.times do
|
|
109
75
|
card_clone = card.dup
|
|
110
76
|
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.
|
|
4
|
+
version: 0.0.7
|
|
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-
|
|
11
|
+
date: 2022-05-08 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/
|
|
19
|
+
- db/card_type_aggregate
|
|
20
20
|
- ext/ford_fulkerson.so
|
|
21
21
|
- lib/manasimu.rb
|
|
22
22
|
- lib/manasimu/card.rb
|
data/db/AllPrintings.sqlite
DELETED
|
Binary file
|