manasimu 0.0.4 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- 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
|