Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
e2fe2573
Commit
e2fe2573
authored
Jan 28, 2015
by
Gavin Bises
Browse files
Parse cmc from json and store in cards.xml
parent
739ca6a0
Changes
4
Hide whitespace changes
Inline
Side-by-side
cockatrice/src/carddatabase.cpp
View file @
e2fe2573
...
...
@@ -365,6 +365,7 @@ CardInfo::CardInfo(CardDatabase *_db,
const
QString
&
_name
,
bool
_isToken
,
const
QString
&
_manacost
,
const
QString
&
_cmc
,
const
QString
&
_cardtype
,
const
QString
&
_powtough
,
const
QString
&
_text
,
...
...
@@ -381,6 +382,7 @@ CardInfo::CardInfo(CardDatabase *_db,
isToken
(
_isToken
),
sets
(
_sets
),
manacost
(
_manacost
),
cmc
(
_cmc
),
cardtype
(
_cardtype
),
powtough
(
_powtough
),
text
(
_text
),
...
...
@@ -571,6 +573,7 @@ static QXmlStreamWriter &operator<<(QXmlStreamWriter &xml, const CardInfo *info)
xml
.
writeTextElement
(
"color"
,
colors
[
i
]);
xml
.
writeTextElement
(
"manacost"
,
info
->
getManaCost
());
xml
.
writeTextElement
(
"cmc"
,
info
->
getCmc
());
xml
.
writeTextElement
(
"type"
,
info
->
getCardType
());
if
(
!
info
->
getPowTough
().
isEmpty
())
xml
.
writeTextElement
(
"pt"
,
info
->
getPowTough
());
...
...
@@ -731,7 +734,7 @@ void CardDatabase::loadCardsFromXml(QXmlStreamReader &xml, bool tokens)
if
(
xml
.
readNext
()
==
QXmlStreamReader
::
EndElement
)
break
;
if
(
xml
.
name
()
==
"card"
)
{
QString
name
,
manacost
,
type
,
pt
,
text
;
QString
name
,
manacost
,
cmc
,
type
,
pt
,
text
;
QStringList
colors
;
QStringMap
customPicURLs
,
customPicURLsHq
;
MuidMap
muids
;
...
...
@@ -747,6 +750,8 @@ void CardDatabase::loadCardsFromXml(QXmlStreamReader &xml, bool tokens)
name
=
xml
.
readElementText
();
else
if
(
xml
.
name
()
==
"manacost"
)
manacost
=
xml
.
readElementText
();
else
if
(
xml
.
name
()
==
"cmc"
)
cmc
=
xml
.
readElementText
().
toInt
();
else
if
(
xml
.
name
()
==
"type"
)
type
=
xml
.
readElementText
();
else
if
(
xml
.
name
()
==
"pt"
)
...
...
@@ -779,7 +784,7 @@ void CardDatabase::loadCardsFromXml(QXmlStreamReader &xml, bool tokens)
}
if
(
isToken
==
tokens
)
{
addCard
(
new
CardInfo
(
this
,
name
,
isToken
,
manacost
,
type
,
pt
,
text
,
colors
,
loyalty
,
cipt
,
tableRow
,
sets
,
customPicURLs
,
customPicURLsHq
,
muids
));
addCard
(
new
CardInfo
(
this
,
name
,
isToken
,
manacost
,
cmc
,
type
,
pt
,
text
,
colors
,
loyalty
,
cipt
,
tableRow
,
sets
,
customPicURLs
,
customPicURLsHq
,
muids
));
}
}
}
...
...
cockatrice/src/carddatabase.h
View file @
e2fe2573
...
...
@@ -111,6 +111,7 @@ private:
bool
isToken
;
SetList
sets
;
QString
manacost
;
QString
cmc
;
QString
cardtype
;
QString
powtough
;
QString
text
;
...
...
@@ -126,6 +127,7 @@ public:
const
QString
&
_name
=
QString
(),
bool
_isToken
=
false
,
const
QString
&
_manacost
=
QString
(),
const
QString
&
_cmc
=
QString
(),
const
QString
&
_cardtype
=
QString
(),
const
QString
&
_powtough
=
QString
(),
const
QString
&
_text
=
QString
(),
...
...
@@ -142,12 +144,14 @@ public:
bool
getIsToken
()
const
{
return
isToken
;
}
const
SetList
&
getSets
()
const
{
return
sets
;
}
const
QString
&
getManaCost
()
const
{
return
manacost
;
}
const
QString
&
getCmc
()
const
{
return
cmc
;
}
const
QString
&
getCardType
()
const
{
return
cardtype
;
}
const
QString
&
getPowTough
()
const
{
return
powtough
;
}
const
QString
&
getText
()
const
{
return
text
;
}
const
int
&
getLoyalty
()
const
{
return
loyalty
;
}
bool
getCipt
()
const
{
return
cipt
;
}
void
setManaCost
(
const
QString
&
_manaCost
)
{
manacost
=
_manaCost
;
emit
cardInfoChanged
(
this
);
}
void
setCmc
(
const
QString
&
_cmc
)
{
cmc
=
_cmc
;
emit
cardInfoChanged
(
this
);
}
void
setCardType
(
const
QString
&
_cardType
)
{
cardtype
=
_cardType
;
emit
cardInfoChanged
(
this
);
}
void
setPowTough
(
const
QString
&
_powTough
)
{
powtough
=
_powTough
;
emit
cardInfoChanged
(
this
);
}
void
setText
(
const
QString
&
_text
)
{
text
=
_text
;
emit
cardInfoChanged
(
this
);
}
...
...
oracle/src/oracleimporter.cpp
View file @
e2fe2573
...
...
@@ -65,6 +65,7 @@ CardInfo *OracleImporter::addCard(const QString &setName,
bool
isToken
,
int
cardId
,
QString
&
cardCost
,
QString
&
cmc
,
const
QString
&
cardType
,
const
QString
&
cardPT
,
int
cardLoyalty
,
...
...
@@ -117,7 +118,7 @@ CardInfo *OracleImporter::addCard(const QString &setName,
bool
cipt
=
(
cardText
.
contains
(
cardName
+
" enters the battlefield tapped."
));
card
=
new
CardInfo
(
this
,
cardName
,
isToken
,
cardCost
,
cardType
,
cardPT
,
fullCardText
,
colors
,
cardLoyalty
,
cipt
);
card
=
new
CardInfo
(
this
,
cardName
,
isToken
,
cardCost
,
cmc
,
cardType
,
cardPT
,
fullCardText
,
colors
,
cardLoyalty
,
cipt
);
int
tableRow
=
1
;
QString
mainCardType
=
card
->
getMainCardType
();
if
((
mainCardType
==
"Land"
)
||
mArtifact
)
...
...
@@ -143,6 +144,7 @@ int OracleImporter::importTextSpoiler(CardSet *set, const QVariant &data)
QVariantMap
map
;
QString
cardName
;
QString
cardCost
;
QString
cmc
;
QString
cardType
;
QString
cardPT
;
QString
cardText
;
...
...
@@ -192,6 +194,7 @@ int OracleImporter::importTextSpoiler(CardSet *set, const QVariant &data)
// add second card's data
cardName
+=
card2
->
contains
(
"name"
)
?
QString
(
" // "
)
+
card2
->
value
(
"name"
).
toString
()
:
QString
(
""
);
cardCost
+=
card2
->
contains
(
"manaCost"
)
?
QString
(
" // "
)
+
card2
->
value
(
"manaCost"
).
toString
()
:
QString
(
""
);
cmc
+=
card2
->
contains
(
"cmc"
)
?
QString
(
" // "
)
+
card2
->
value
(
"cmc"
).
toString
()
:
QString
(
""
);
cardType
+=
card2
->
contains
(
"type"
)
?
QString
(
" // "
)
+
card2
->
value
(
"type"
).
toString
()
:
QString
(
""
);
cardPT
+=
card2
->
contains
(
"power"
)
||
card2
->
contains
(
"toughness"
)
?
QString
(
" // "
)
+
card2
->
value
(
"power"
).
toString
()
+
QString
(
'/'
)
+
card2
->
value
(
"toughness"
).
toString
()
:
QString
(
""
);
cardText
+=
card2
->
contains
(
"text"
)
?
QString
(
"
\n\n
---
\n\n
"
)
+
card2
->
value
(
"text"
).
toString
()
:
QString
(
""
);
...
...
@@ -204,6 +207,7 @@ int OracleImporter::importTextSpoiler(CardSet *set, const QVariant &data)
// normal cards handling
cardName
=
map
.
contains
(
"name"
)
?
map
.
value
(
"name"
).
toString
()
:
QString
(
""
);
cardCost
=
map
.
contains
(
"manaCost"
)
?
map
.
value
(
"manaCost"
).
toString
()
:
QString
(
""
);
cmc
=
map
.
contains
(
"cmc"
)
?
map
.
value
(
"cmc"
).
toString
()
:
QString
(
""
);
cardType
=
map
.
contains
(
"type"
)
?
map
.
value
(
"type"
).
toString
()
:
QString
(
""
);
cardPT
=
map
.
contains
(
"power"
)
||
map
.
contains
(
"toughness"
)
?
map
.
value
(
"power"
).
toString
()
+
QString
(
'/'
)
+
map
.
value
(
"toughness"
).
toString
()
:
QString
(
""
);
cardText
=
map
.
contains
(
"text"
)
?
map
.
value
(
"text"
).
toString
()
:
QString
(
""
);
...
...
@@ -218,7 +222,7 @@ int OracleImporter::importTextSpoiler(CardSet *set, const QVariant &data)
}
if
(
!
cardIsToken
)
{
CardInfo
*
card
=
addCard
(
set
->
getShortName
(),
cardName
,
cardIsToken
,
cardId
,
cardCost
,
cardType
,
cardPT
,
cardLoyalty
,
cardText
.
split
(
"
\n
"
));
CardInfo
*
card
=
addCard
(
set
->
getShortName
(),
cardName
,
cardIsToken
,
cardId
,
cardCost
,
cmc
,
cardType
,
cardPT
,
cardLoyalty
,
cardText
.
split
(
"
\n
"
));
if
(
!
set
->
contains
(
card
))
{
card
->
addToSet
(
set
);
...
...
oracle/src/oracleimporter.h
View file @
e2fe2573
...
...
@@ -32,7 +32,7 @@ private:
QVariantMap
setsMap
;
QString
dataDir
;
CardInfo
*
addCard
(
const
QString
&
setName
,
QString
cardName
,
bool
isToken
,
int
cardId
,
QString
&
cardCost
,
const
QString
&
cardType
,
const
QString
&
cardPT
,
int
cardLoyalty
,
const
QStringList
&
cardText
);
CardInfo
*
addCard
(
const
QString
&
setName
,
QString
cardName
,
bool
isToken
,
int
cardId
,
QString
&
cardCost
,
QString
&
cmc
,
const
QString
&
cardType
,
const
QString
&
cardPT
,
int
cardLoyalty
,
const
QStringList
&
cardText
);
signals:
void
setIndexChanged
(
int
cardsImported
,
int
setIndex
,
const
QString
&
setName
);
void
dataReadProgress
(
int
bytesRead
,
int
totalBytes
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment