Merge branch 'master' into minmax
This commit is contained in:
20
projects/mtg/MacOS/Info.plist
Normal file
20
projects/mtg/MacOS/Info.plist
Normal file
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>Created by Qt/QMake</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>wagic.launcher</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>wagic.wagic</string>
|
||||
<key>NOTE</key>
|
||||
<string>This file was generated by Qt/QMake.</string>
|
||||
</dict>
|
||||
</plist>
|
||||
BIN
projects/mtg/MacOS/wagic.icns
Normal file
BIN
projects/mtg/MacOS/wagic.icns
Normal file
Binary file not shown.
5
projects/mtg/MacOS/wagic.launcher
Executable file
5
projects/mtg/MacOS/wagic.launcher
Executable file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd ${0%/*/*}/Resources
|
||||
#cd ../Resources
|
||||
exec ../MacOS/wagic -platformpluginpath ../PlugIns >> ../logs/out.log 2> ../logs/err.log
|
||||
846
projects/mtg/bin/Res/sets/BNG/_cards.dat
Normal file
846
projects/mtg/bin/Res/sets/BNG/_cards.dat
Normal file
@@ -0,0 +1,846 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
name=Born of the Gods
|
||||
year=2014
|
||||
block=Theros
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Acolyte's Reward
|
||||
id=378373
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aerie Worshippers
|
||||
id=378402
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Akroan Conscriptor
|
||||
id=378459
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Akroan Phalanx
|
||||
id=378374
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Akroan Skyguard
|
||||
id=378375
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Arbiter of the Ideal
|
||||
id=378403
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archetype of Aggression
|
||||
id=378460
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archetype of Courage
|
||||
id=378376
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archetype of Endurance
|
||||
id=378488
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archetype of Finality
|
||||
id=378430
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archetype of Imagination
|
||||
id=378404
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ashiok's Adept
|
||||
id=378431
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aspect of Hydra
|
||||
id=378489
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Asphyxiate
|
||||
id=378432
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Astral Cornucopia
|
||||
id=378529
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bile Blight
|
||||
id=378433
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Black Oak of Odunos
|
||||
id=378434
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bolt of Keranos
|
||||
id=378461
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Brimaz, King of Oreskos
|
||||
id=378377
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Champion of Stray Souls
|
||||
id=378435
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Charging Badger
|
||||
id=378490
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Chorus of the Tides
|
||||
id=378405
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Chromanticore
|
||||
id=378516
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Claim of Erebos
|
||||
id=378436
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Courser of Kruphix
|
||||
id=378491
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Crypsis
|
||||
id=378406
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Culling Mark
|
||||
id=378492
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cyclops of One-Eyed Pass
|
||||
id=378462
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dawn to Dusk
|
||||
id=378378
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Deepwater Hypnotist
|
||||
id=378407
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Divination
|
||||
id=378408
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Drown in Sorrow
|
||||
id=378437
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eater of Hope
|
||||
id=378438
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eidolon of Countless Battles
|
||||
id=378379
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Elite Skirmisher
|
||||
id=378380
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ephara, God of the Polis
|
||||
id=378517
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ephara's Enlightenment
|
||||
id=378518
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ephara's Radiance
|
||||
id=378381
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Epiphany Storm
|
||||
id=378463
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eternity Snare
|
||||
id=378409
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Evanescent Intellect
|
||||
id=378410
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Everflame Eidolon
|
||||
id=378464
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Excoriate
|
||||
id=378382
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eye Gouge
|
||||
id=378439
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fall of the Hammer
|
||||
id=378465
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fanatic of Xenagos
|
||||
id=378519
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fate Unraveler
|
||||
id=378440
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fated Conflagration
|
||||
id=378466
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fated Infatuation
|
||||
id=378411
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fated Intervention
|
||||
id=378493
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fated Retribution
|
||||
id=378383
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fated Return
|
||||
id=378441
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fearsome Temper
|
||||
id=378467
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Felhide Brawler
|
||||
id=378442
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Felhide Spiritbinder
|
||||
id=378468
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flame-Wreathed Phoenix
|
||||
id=378469
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flitterstep Eidolon
|
||||
id=378412
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Floodtide Serpent
|
||||
id=378413
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forgestoker Dragon
|
||||
id=378470
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forlorn Pseudamma
|
||||
id=378443
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forsaken Drifters
|
||||
id=378444
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ghostblade Eidolon
|
||||
id=378384
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gild
|
||||
id=378445
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gold
|
||||
id=-378445
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Glimpse the Sun God
|
||||
id=378385
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=God-Favored General
|
||||
id=378386
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gorgon's Head
|
||||
id=378530
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Graverobber Spider
|
||||
id=378494
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Great Hart
|
||||
id=378387
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Griffin Dreamfinder
|
||||
id=378388
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Grisly Transformation
|
||||
id=378446
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Herald of Torment
|
||||
id=378447
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hero of Iroas
|
||||
id=378389
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hero of Leina Tower
|
||||
id=378495
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Heroes' Podium
|
||||
id=378531
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hold at Bay
|
||||
id=378390
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hunter's Prowess
|
||||
id=378496
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Impetuous Sunchaser
|
||||
id=378471
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Karametra, God of Harvests
|
||||
id=378520
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Karametra's Favor
|
||||
id=378497
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kiora, the Crashing Wave
|
||||
id=378521
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kiora's Prevention
|
||||
id=37852101
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kiora's Kraken
|
||||
id=-378521
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kiora's Follower
|
||||
id=378522
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kragma Butcher
|
||||
id=378472
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kraken of the Straits
|
||||
id=378414
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lightning Volley
|
||||
id=378473
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Loyal Pegasus
|
||||
id=378391
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Marshmist Titan
|
||||
id=378448
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Meletis Astronomer
|
||||
id=378415
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mindreaver
|
||||
id=378416
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mischief and Mayhem
|
||||
id=378498
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mogis, God of Slaughter
|
||||
id=378523
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mortal's Ardor
|
||||
id=378392
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mortal's Resolve
|
||||
id=378499
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Necrobite
|
||||
id=378449
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nessian Demolok
|
||||
id=378500
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nessian Wilds Ravager
|
||||
id=378501
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Noble Quarry
|
||||
id=378502
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nullify
|
||||
id=378417
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyxborn Eidolon
|
||||
id=378450
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyxborn Rollicker
|
||||
id=378474
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyxborn Shieldmate
|
||||
id=378393
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyxborn Triton
|
||||
id=378418
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyxborn Wolf
|
||||
id=378503
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Odunos River Trawler
|
||||
id=378451
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oracle of Bones
|
||||
id=378475
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oracle's Insight
|
||||
id=378419
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oreskos Sun Guide
|
||||
id=378394
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ornitharch
|
||||
id=378395
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pain Seer
|
||||
id=378452
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Peregrination
|
||||
id=378504
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Perplexing Chimera
|
||||
id=378420
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pharagax Giant
|
||||
id=378476
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Phenax, God of Deception
|
||||
id=378524
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pheres-Band Raiders
|
||||
id=378505
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pheres-Band Tromper
|
||||
id=378506
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pillar of War
|
||||
id=378532
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pinnacle of Rage
|
||||
id=378477
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plea for Guidance
|
||||
id=378396
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ragemonger
|
||||
id=378525
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Raised by Wolves
|
||||
id=378507
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reap what is Sown
|
||||
id=378526
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reckless Reveler
|
||||
id=378478
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Retraction Helix
|
||||
id=378421
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Revoke Existence
|
||||
id=378397
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rise to the Challenge
|
||||
id=378479
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sanguimancy
|
||||
id=378453
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Satyr Firedancer
|
||||
id=378480
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Satyr Nyx-Smith
|
||||
id=378481
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Satyr Wayfinder
|
||||
id=378508
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scourge of Skola Vale
|
||||
id=378509
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scouring Sands
|
||||
id=378482
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Searing Blood
|
||||
id=378483
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Servant of Tymaret
|
||||
id=378454
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Setessan Oathsworn
|
||||
id=378510
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Setessan Starbreaker
|
||||
id=378511
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shrike Harpy
|
||||
id=378455
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Silent Sentinel
|
||||
id=378398
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Siren of the Fanged Coast
|
||||
id=378422
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Siren of the Silent Song
|
||||
id=378527
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Siren Song Lyre
|
||||
id=378533
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Skyreaping
|
||||
id=378512
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Snake of the Golden Grove
|
||||
id=378513
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sphinx's Disciple
|
||||
id=378423
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spirit of the Labyrinth
|
||||
id=378399
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spiteful Returned
|
||||
id=378456
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Springleaf Drum
|
||||
id=378534
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Stormcaller of Keranos
|
||||
id=378484
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Stratus Walk
|
||||
id=378424
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sudden Storm
|
||||
id=378425
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sunbond
|
||||
id=378400
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swordwise Centaur
|
||||
id=378514
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temple of Enlightenment
|
||||
id=378535
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temple of Malice
|
||||
id=378536
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temple of Plenty
|
||||
id=378537
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thassa's Rebuff
|
||||
id=378426
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thunder Brute
|
||||
id=378485
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thunderous Might
|
||||
id=378486
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tromokratis
|
||||
id=378427
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Unravel the AEther
|
||||
id=378515
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Vanguard of Brimaz
|
||||
id=378401
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Vortex Elemental
|
||||
id=378428
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Warchanter of Mogis
|
||||
id=378457
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Weight of the Underworld
|
||||
id=378458
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whelming Wave
|
||||
id=378429
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whims of the Fates
|
||||
id=378487
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Xenagos, God of Revels
|
||||
id=378528
|
||||
rarity=M
|
||||
[/card]
|
||||
1324
projects/mtg/bin/Res/sets/DTK/_cards.dat
Normal file
1324
projects/mtg/bin/Res/sets/DTK/_cards.dat
Normal file
File diff suppressed because it is too large
Load Diff
21
projects/mtg/bin/Res/sets/DTK/booster.txt
Normal file
21
projects/mtg/bin/Res/sets/DTK/booster.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
<PACK name="Dragons of Tarkir" type="Booster" pool="all set:DTK;" price="700">
|
||||
<slot copies="1">
|
||||
<random_card>rarity:mythic;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
</slot>
|
||||
<slot copies="3">
|
||||
<random_card>rarity:uncommon;</random_card>
|
||||
</slot>
|
||||
<slot copies="1">
|
||||
<random_card>rarity:special;</random_card>
|
||||
</slot>
|
||||
<slot copies="10">
|
||||
<random_card>rarity:common;</random_card>
|
||||
</slot>
|
||||
</PACK>
|
||||
934
projects/mtg/bin/Res/sets/FRF/_cards.dat
Normal file
934
projects/mtg/bin/Res/sets/FRF/_cards.dat
Normal file
@@ -0,0 +1,934 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
year=2015
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Abzan Advantage
|
||||
id=391781
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Abzan Beastmaster
|
||||
id=391782
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Abzan Kin-Guard
|
||||
id=391783
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Abzan Runemark
|
||||
id=391784
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Abzan Skycaptain
|
||||
id=391785
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ainok Guide
|
||||
id=391786
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Alesha, Who Smiles at Death
|
||||
id=391787
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Alesha's Vanguard
|
||||
id=391788
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ambush Krotiq
|
||||
id=391789
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ancestral Vengeance
|
||||
id=391790
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Arashin Cleric
|
||||
id=391791
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Arashin War Beast
|
||||
id=391792
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Arcbond
|
||||
id=391793
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archers of Qarsi
|
||||
id=391794
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Archfiend of Depravity
|
||||
id=391795
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Atarka, World Render
|
||||
id=391796
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aven Skirmisher
|
||||
id=391797
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aven Surveyor
|
||||
id=391798
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bathe in Dragonfire
|
||||
id=391799
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Battle Brawler
|
||||
id=391800
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Battlefront Krushok
|
||||
id=391801
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bloodfell Caves
|
||||
id=391802
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bloodfire Enforcers
|
||||
id=391803
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Blossoming Sands
|
||||
id=391804
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Break Through the Line
|
||||
id=391805
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Brutal Hordechief
|
||||
id=391806
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cached Defenses
|
||||
id=391807
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Channel Harm
|
||||
id=391808
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Citadel Siege
|
||||
id=391809
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cloudform
|
||||
id=391810
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Collateral Damage
|
||||
id=391811
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Crucible of the Spirit Dragon
|
||||
id=391812
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Crux of Fate
|
||||
id=391813
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cunning Strike
|
||||
id=391814
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Daghatar the Adamant
|
||||
id=391815
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dark Deal
|
||||
id=391816
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Defiant Ogre
|
||||
id=391817
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Destructor Dragon
|
||||
id=391818
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Diplomacy of the Wastes
|
||||
id=391819
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dismal Backwater
|
||||
id=391820
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Douse in Gloom
|
||||
id=391821
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dragon Bell Monk
|
||||
id=391822
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dragonrage
|
||||
id=391823
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dragonscale General
|
||||
id=391824
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dromoka, the Eternal
|
||||
id=391825
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Elite Scaleguard
|
||||
id=391826
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Enhanced Awareness
|
||||
id=391827
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ethereal Ambush
|
||||
id=391828
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fascination
|
||||
id=391829
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fearsome Awakening
|
||||
id=391830
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Feral Krushok
|
||||
id=391831
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fierce Invocation
|
||||
id=391832
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flamerush Rider
|
||||
id=391833
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flamewake Phoenix
|
||||
id=391834
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=391836
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Formless Nurturing
|
||||
id=391837
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Friendly Fire
|
||||
id=391838
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Frontier Mastodon
|
||||
id=391839
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Frontier Siege
|
||||
id=391840
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Frost Walker
|
||||
id=391841
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fruit of the First Tree
|
||||
id=391842
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ghastly Conscription
|
||||
id=391843
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Boom Keg
|
||||
id=391844
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goblin Heelcutter
|
||||
id=391845
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gore Swine
|
||||
id=391846
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Grave Strength
|
||||
id=391847
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Great-Horn Krushok
|
||||
id=391848
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Grim Contest
|
||||
id=391849
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gurmag Angler
|
||||
id=391850
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Harsh Sustenance
|
||||
id=391851
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hero's Blade
|
||||
id=391852
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hewed Stone Retainers
|
||||
id=391853
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Honor's Reward
|
||||
id=391854
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hooded Assassin
|
||||
id=391855
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Humble Defector
|
||||
id=391856
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hungering Yeti
|
||||
id=391857
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hunt the Weak
|
||||
id=391858
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Island
|
||||
id=391859
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jeskai Barricade
|
||||
id=391861
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jeskai Infiltrator
|
||||
id=391862
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jeskai Runemark
|
||||
id=391863
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jeskai Sage
|
||||
id=391864
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Jungle Hollow
|
||||
id=391865
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kolaghan, the Storm's Fury
|
||||
id=391866
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lightform
|
||||
id=391867
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lightning Shrieker
|
||||
id=391868
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lotus Path Djinn
|
||||
id=391869
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lotus-Eye Mystics
|
||||
id=391870
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Map the Wastes
|
||||
id=391871
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Marang River Prowler
|
||||
id=391872
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Runemark
|
||||
id=391873
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Scout
|
||||
id=391874
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Shadowspear
|
||||
id=391875
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Strike Leader
|
||||
id=391876
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mardu Woe-Reaper
|
||||
id=391877
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mastery of the Unseen
|
||||
id=391878
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Merciless Executioner
|
||||
id=391879
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mindscour Dragon
|
||||
id=391880
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mistfire Adept
|
||||
id=391881
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mob Rule
|
||||
id=391882
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Monastery Mentor
|
||||
id=391883
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Monk Token
|
||||
id=-391883
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Monastery Siege
|
||||
id=391884
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=391885
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Neutralizing Blast
|
||||
id=391887
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Noxious Dragon
|
||||
id=391888
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ojutai, Soul of Winter
|
||||
id=391889
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Orc Sureshot
|
||||
id=391890
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Outpost Siege
|
||||
id=391891
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Palace Siege
|
||||
id=391892
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pilgrim of the Fires
|
||||
id=391893
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=391895
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pressure Point
|
||||
id=391896
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pyrotechnics
|
||||
id=391897
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Qarsi High Priest
|
||||
id=391898
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rageform
|
||||
id=391899
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rakshasa's Disdain
|
||||
id=391900
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rally the Ancestors
|
||||
id=391901
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reach of Shadows
|
||||
id=391902
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reality Shift
|
||||
id=391903
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Refocus
|
||||
id=391904
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Renowned Weaponsmith
|
||||
id=391905
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Return to the Earth
|
||||
id=391906
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rite of Undoing
|
||||
id=391907
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rugged Highlands
|
||||
id=391908
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ruthless Instincts
|
||||
id=391909
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sage-Eye Avengers
|
||||
id=391911
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sage's Reverie
|
||||
id=391910
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sandblast
|
||||
id=391912
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sandsteppe Mastodon
|
||||
id=391913
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sandsteppe Outcast
|
||||
id=391914
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scoured Barrens
|
||||
id=391915
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scroll of the Masters
|
||||
id=391916
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shaman of the Great Hunt
|
||||
id=391917
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shamanic Revelation
|
||||
id=391918
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shifting Loyalties
|
||||
id=391919
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shockmaw Dragon
|
||||
id=391920
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shu Yun, the Silent Tempest
|
||||
id=391921
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sibsig Host
|
||||
id=391922
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sibsig Muckdraggers
|
||||
id=391923
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Silumgar, the Drifting Death
|
||||
id=391924
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Smoldering Efreet
|
||||
id=391925
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soul Summons
|
||||
id=391926
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulfire Grand Master
|
||||
id=391927
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Soulflayer
|
||||
id=391928
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sudden Reclamation
|
||||
id=391929
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sultai Emissary
|
||||
id=391930
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sultai Runemark
|
||||
id=391931
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sultai Skullkeeper
|
||||
id=391932
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Supplant Form
|
||||
id=391933
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=391934
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swiftwater Cliffs
|
||||
id=391936
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tasigur, the Golden Fang
|
||||
id=391937
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tasigur's Cruelty
|
||||
id=391938
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temporal Trespass
|
||||
id=391939
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temur Battle Rage
|
||||
id=391940
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temur Runemark
|
||||
id=391941
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temur Sabertooth
|
||||
id=391942
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temur War Shaman
|
||||
id=391943
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thornwood Falls
|
||||
id=391944
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Torrent Elemental
|
||||
id=391945
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tranquil Cove
|
||||
id=391946
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Typhoid Rats
|
||||
id=391947
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ugin, the Spirit Dragon
|
||||
id=391948
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ugin's Construct
|
||||
id=391949
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Valorous Stance
|
||||
id=391950
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Vaultbreaker
|
||||
id=391951
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wandering Champion
|
||||
id=391952
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=War Flare
|
||||
id=391953
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Warden of the First Tree
|
||||
id=391954
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wardscale Dragon
|
||||
id=391955
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whisk Away
|
||||
id=391956
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whisperer of the Wilds
|
||||
id=391957
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whisperwood Elemental
|
||||
id=391958
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wild Slash
|
||||
id=391959
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wildcall
|
||||
id=391960
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Will of the Naga
|
||||
id=391961
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Winds of Qal Sisma
|
||||
id=391962
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wind-Scarred Crag
|
||||
id=391963
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Write into Being
|
||||
id=391964
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Yasova Dragonclaw
|
||||
id=391965
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forest
|
||||
id=391835
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Island
|
||||
id=391860
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mountain
|
||||
id=391886
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Plains
|
||||
id=391894
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swamp
|
||||
id=391935
|
||||
rarity=C
|
||||
[/card]
|
||||
21
projects/mtg/bin/Res/sets/FRF/booster.txt
Normal file
21
projects/mtg/bin/Res/sets/FRF/booster.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
<PACK name="Fate Reforged" type="Booster" pool="all set:FRF;" price="700">
|
||||
<slot copies="1">
|
||||
<random_card>rarity:mythic;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
</slot>
|
||||
<slot copies="3">
|
||||
<random_card>rarity:uncommon;</random_card>
|
||||
</slot>
|
||||
<slot copies="1">
|
||||
<random_card>rarity:special;</random_card>
|
||||
</slot>
|
||||
<slot copies="10">
|
||||
<random_card>rarity:common;</random_card>
|
||||
</slot>
|
||||
</PACK>
|
||||
830
projects/mtg/bin/Res/sets/JOU/_cards.dat
Normal file
830
projects/mtg/bin/Res/sets/JOU/_cards.dat
Normal file
@@ -0,0 +1,830 @@
|
||||
[meta]
|
||||
author=Wagic Team
|
||||
year=2014
|
||||
block=Theros
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Aegis of the Gods
|
||||
id=380364
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aerial Formation
|
||||
id=380365
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Agent of Erebos
|
||||
id=380366
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ajani, Mentor of Heroes
|
||||
id=380367
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ajani's Presence
|
||||
id=380368
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Akroan Line Breaker
|
||||
id=380369
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Akroan Mastiff
|
||||
id=380370
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Armament of Nyx
|
||||
id=380371
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Armory of Iroas
|
||||
id=380372
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Aspect of Gorgon
|
||||
id=380373
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Athreos, God of Passage
|
||||
id=380374
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Banishing Light
|
||||
id=380375
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bassara Tower Archer
|
||||
id=380376
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Battlefield Thaumaturge
|
||||
id=380377
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bearer of the Heavens
|
||||
id=380378
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bladetusk Boar
|
||||
id=380379
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Blinding Flare
|
||||
id=380380
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bloodcrazed Hoplite
|
||||
id=380381
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Brain Maggot
|
||||
id=380382
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cast into Darkness
|
||||
id=380383
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Chariot of Victory
|
||||
id=380384
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cloaked Siren
|
||||
id=380385
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Colossal Heroics
|
||||
id=380386
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Consign to Dust
|
||||
id=380387
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Countermand
|
||||
id=380388
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cruel Feeding
|
||||
id=380389
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Crystalline Nautilus
|
||||
id=380390
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Cyclops of Eternal Fury
|
||||
id=380391
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dakra Mystic
|
||||
id=380392
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Daring Thief
|
||||
id=380393
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dawnbringer Charioteers
|
||||
id=380394
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Deicide
|
||||
id=380395
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Desecration Plague
|
||||
id=380396
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Deserter's Quarters
|
||||
id=380397
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Desperate Stand
|
||||
id=380398
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dictate of Erebos
|
||||
id=380399
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dictate of Heliod
|
||||
id=380400
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dictate of Karametra
|
||||
id=380401
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dictate of Kruphix
|
||||
id=380402
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dictate of the Twin Gods
|
||||
id=380403
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Disciple of Deceit
|
||||
id=380404
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Doomwake Giant
|
||||
id=380405
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dreadbringer Lampads
|
||||
id=380406
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eagle of the Watch
|
||||
id=380407
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eidolon of Blossoms
|
||||
id=380408
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eidolon of Rhetoric
|
||||
id=380409
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Eidolon of the Great Revel
|
||||
id=380410
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Extinguish All Hope
|
||||
id=380411
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Feast of Dreams
|
||||
id=380412
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Felhide Petrifier
|
||||
id=380413
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flamespeaker's Will
|
||||
id=380414
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Fleetfeather Cockatrice
|
||||
id=380415
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Flurry of Horns
|
||||
id=380416
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Font of Fertility
|
||||
id=380417
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Font of Fortunes
|
||||
id=380418
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Font of Ire
|
||||
id=380419
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Font of Return
|
||||
id=380420
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Font of Vigor
|
||||
id=380421
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Forgeborn Oreads
|
||||
id=380422
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gluttonous Cyclops
|
||||
id=380423
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gnarled Scarhide
|
||||
id=380424
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Godhunter Octopus
|
||||
id=380425
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Godsend
|
||||
id=380426
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Golden Hind
|
||||
id=380427
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Goldenhide Ox
|
||||
id=380428
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Gold-Forged Sentinel
|
||||
id=380429
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Grim Guardian
|
||||
id=380430
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hall of Triumph
|
||||
id=380431
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Harness by Force
|
||||
id=380432
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Harvestguard Alseids
|
||||
id=380433
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Heroes' Bane
|
||||
id=380434
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hour of Need
|
||||
id=380435
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hubris
|
||||
id=380436
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Humbler of Mortals
|
||||
id=380437
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hydra Broodmaster
|
||||
id=380438
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Hypnotic Siren
|
||||
id=380439
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Interpret the Signs
|
||||
id=380440
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Iroas, God of Victory
|
||||
id=380441
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Keranos, God of Storms
|
||||
id=380442
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=King Macar, the Gold-Cursed
|
||||
id=380443
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kiora's Dismissal
|
||||
id=380444
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Knowledge and Power
|
||||
id=380445
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kruphix, God of Horizons
|
||||
id=380446
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kruphix's Insight
|
||||
id=380447
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lagonna-Band Trailblazer
|
||||
id=380448
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Launch the Fleet
|
||||
id=380449
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Leonin Iconoclast
|
||||
id=380450
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lightning Diadem
|
||||
id=380451
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Magma Spray
|
||||
id=380452
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mana Confluence
|
||||
id=380453
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Market Festival
|
||||
id=380454
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Master of the Feast
|
||||
id=380455
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mogis's Warhound
|
||||
id=380456
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Mortal Obstinacy
|
||||
id=380457
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nature's Panoply
|
||||
id=380458
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nessian Game Warden
|
||||
id=380459
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nightmarish End
|
||||
id=380460
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyx Infusion
|
||||
id=380461
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyx Weaver
|
||||
id=380462
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Nyx-Fleece Ram
|
||||
id=380463
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oakheart Dryads
|
||||
id=380464
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oppressive Rays
|
||||
id=380465
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oreskos Swiftclaw
|
||||
id=380466
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pensive Minotaur
|
||||
id=380467
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Phalanx Formation
|
||||
id=380468
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pharika, God of Affliction
|
||||
id=380469
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pharika's Chosen
|
||||
id=380470
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pheres-Band Thunderhoof
|
||||
id=380471
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pheres-Band Warchief
|
||||
id=380472
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pin to the Earth
|
||||
id=380473
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Polymorphous Rush
|
||||
id=380474
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Prophetic Flamespeaker
|
||||
id=380475
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Pull from the Deep
|
||||
id=380476
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Quarry Colossus
|
||||
id=380477
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ravenous Leucrocota
|
||||
id=380478
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Renowned Weaver
|
||||
id=380479
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reprisal
|
||||
id=380480
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Returned Reveler
|
||||
id=380481
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Revel of the Fallen God
|
||||
id=380482
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Reviving Melody
|
||||
id=380483
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Riddle of Lightning
|
||||
id=380484
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Riptide Chimera
|
||||
id=380485
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rise of Eagles
|
||||
id=380486
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ritual of the Returned
|
||||
id=380487
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rollick of Abandon
|
||||
id=380488
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rotted Hulk
|
||||
id=380489
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Rouse the Mob
|
||||
id=380490
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sage of Hours
|
||||
id=380491
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Satyr Grovedancer
|
||||
id=380492
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Satyr Hoplite
|
||||
id=380493
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scourge of Fleets
|
||||
id=380494
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Setessan Tactics
|
||||
id=380495
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sightless Brawler
|
||||
id=380496
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sigiled Skink
|
||||
id=380497
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Sigiled Starfish
|
||||
id=380498
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Silence the Believers
|
||||
id=380499
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Skybind
|
||||
id=380500
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Skyspear Cavalry
|
||||
id=380501
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Solidarity of Heroes
|
||||
id=380502
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spawn of Thraxes
|
||||
id=380503
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spirespine
|
||||
id=380504
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spite of Mogis
|
||||
id=380505
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Spiteful Blow
|
||||
id=380506
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Squelching Leeches
|
||||
id=380507
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Starfall
|
||||
id=380508
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Stonewise Fortifier
|
||||
id=380509
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Stormchaser Chimera
|
||||
id=380510
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Strength from the Fallen
|
||||
id=380511
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Supply-Line Cranes
|
||||
id=380512
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swarmborn Giant
|
||||
id=380513
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temple of Epiphany
|
||||
id=380514
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Temple of Malady
|
||||
id=380515
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tethmos High Priest
|
||||
id=380516
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thassa's Devourer
|
||||
id=380517
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thassa's Ire
|
||||
id=380518
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Thoughtrender Lamia
|
||||
id=380519
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tormented Thoughts
|
||||
id=380520
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Triton Cavalry
|
||||
id=380521
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Triton Shorestalker
|
||||
id=380522
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Twinflame
|
||||
id=380523
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Underworld Coinsmith
|
||||
id=380524
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=War-Wing Siren
|
||||
id=380525
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whitewater Naiads
|
||||
id=380526
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wildfire Cerberus
|
||||
id=380527
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Worst Fears
|
||||
id=380528
|
||||
rarity=M
|
||||
[/card]
|
||||
21
projects/mtg/bin/Res/sets/JOU/booster.txt
Normal file
21
projects/mtg/bin/Res/sets/JOU/booster.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
<PACK name="Journey Into Nyx" type="Booster" pool="all set:JOU;" price="700">
|
||||
<slot copies="1">
|
||||
<random_card>rarity:mythic;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
</slot>
|
||||
<slot copies="3">
|
||||
<random_card>rarity:uncommon;</random_card>
|
||||
</slot>
|
||||
<slot copies="1">
|
||||
<random_card>rarity:special;</random_card>
|
||||
</slot>
|
||||
<slot copies="10">
|
||||
<random_card>rarity:common;</random_card>
|
||||
</slot>
|
||||
</PACK>
|
||||
1354
projects/mtg/bin/Res/sets/KTK/_cards.dat
Normal file
1354
projects/mtg/bin/Res/sets/KTK/_cards.dat
Normal file
File diff suppressed because it is too large
Load Diff
21
projects/mtg/bin/Res/sets/KTK/booster.txt
Normal file
21
projects/mtg/bin/Res/sets/KTK/booster.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
<PACK name="Khans of Tarkir" type="Booster" pool="all set:KTK;" price="700">
|
||||
<slot copies="1">
|
||||
<random_card>rarity:mythic;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
<random_card>rarity:rare;</random_card>
|
||||
</slot>
|
||||
<slot copies="3">
|
||||
<random_card>rarity:uncommon;</random_card>
|
||||
</slot>
|
||||
<slot copies="1">
|
||||
<random_card>rarity:special;</random_card>
|
||||
</slot>
|
||||
<slot copies="10">
|
||||
<random_card>rarity:common;</random_card>
|
||||
</slot>
|
||||
</PACK>
|
||||
@@ -1513,8 +1513,3 @@ primitive=Zephyr Net
|
||||
id=142357
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Avatar Token
|
||||
id=-140233
|
||||
rarity=T
|
||||
[/card]
|
||||
|
||||
@@ -11,7 +11,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Accorder's Shield
|
||||
id=370581
|
||||
rarity=C
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Accursed Spirit
|
||||
@@ -31,7 +31,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Air Servant
|
||||
id=370688
|
||||
rarity=C
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Ajani, Caller of the Pride
|
||||
@@ -121,7 +121,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Blur Sliver
|
||||
id=370593
|
||||
rarity=U
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Bogbrew Witch
|
||||
@@ -156,7 +156,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Bubbling Cauldron
|
||||
id=370661
|
||||
rarity=R
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Burning Earth
|
||||
@@ -261,7 +261,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Darksteel Forge
|
||||
id=370734
|
||||
rarity=R
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Darksteel Ingot
|
||||
@@ -326,7 +326,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Doom Blade
|
||||
id=370609
|
||||
rarity=C
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Door of Destinies
|
||||
@@ -339,6 +339,11 @@ id=370660
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dragon Egg Dragon
|
||||
id=-370660
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Dragon Hatchling
|
||||
id=370717
|
||||
rarity=C
|
||||
@@ -431,7 +436,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Fortify
|
||||
id=370712
|
||||
rarity=U
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Frost Breath
|
||||
@@ -581,7 +586,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Kalonian Hydra
|
||||
id=370766
|
||||
rarity=R
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Kalonian Tusker
|
||||
@@ -591,7 +596,7 @@ rarity=U
|
||||
[card]
|
||||
primitive=Lava Axe
|
||||
id=370595
|
||||
rarity=
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Lay of the Land
|
||||
@@ -619,8 +624,8 @@ id=370740
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Zombie Token
|
||||
id=-339967
|
||||
primitive=Liliana's Reaver Zombie
|
||||
id=-370740
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
@@ -736,7 +741,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Nightwing Shade
|
||||
id=370705
|
||||
rarity=U
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Oath of the Ancient Wood
|
||||
@@ -831,7 +836,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Quag Sickness
|
||||
id=370714
|
||||
rarity=U
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Quicken
|
||||
@@ -846,7 +851,7 @@ rarity=C
|
||||
[card]
|
||||
primitive=Ratchet Bomb
|
||||
id=370623
|
||||
rarity=C
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Regathan Firecat
|
||||
@@ -896,7 +901,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Scourge of Valkas
|
||||
id=370584
|
||||
rarity=R
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Scroll Thief
|
||||
@@ -951,7 +956,7 @@ rarity=M
|
||||
[card]
|
||||
primitive=Shimmering Grotto
|
||||
id=370631
|
||||
rarity=C
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Shivan Dragon
|
||||
@@ -1031,6 +1036,7 @@ rarity=U
|
||||
[card]
|
||||
primitive=Staff of the Mind Magus
|
||||
id=370676
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Staff of the Wild Magus
|
||||
@@ -1105,7 +1111,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Thunder Strike
|
||||
id=370607
|
||||
rarity=U
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tidebinder Mage
|
||||
@@ -1115,7 +1121,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Time Ebb
|
||||
id=370641
|
||||
rarity=R
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tome Scour
|
||||
@@ -1215,7 +1221,7 @@ rarity=R
|
||||
[card]
|
||||
primitive=Windreader Sphinx
|
||||
id=370810
|
||||
rarity=U
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Windstorm
|
||||
@@ -1243,8 +1249,8 @@ id=370619
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Zombie Token
|
||||
id=-339968
|
||||
primitive=Xathrid Necromancer Zombie
|
||||
id=-370619
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
|
||||
@@ -86,17 +86,6 @@ mana={5}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Gravecrawler
|
||||
abilities=cantblock
|
||||
autograveyard=aslongas(zombie|myBattlefield) {B}:name(cast from graveyard) activate name(cast from graveyard) castcard(normal) assorcery
|
||||
text=Gravecrawler can't block. -- You may cast Gravecrawler from your graveyard as long as you control a Zombie.
|
||||
mana={B}
|
||||
type=Creature
|
||||
subtype=Zombie
|
||||
power=2
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Ivy Seer
|
||||
auto={2}{G}{T}:foreach(*[green]|myhand) 1/1 target(creature)
|
||||
text={2}{G}, {T}: Reveal any number of green cards in your hand. Target creature gets +X/+X until end of turn, where X is the number of cards revealed this way.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -4149,15 +4149,6 @@ mana={U}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Draining Whelk
|
||||
text=Flash (You may cast this spell any time you could cast an instant.) -- Flying -- When Draining Whelk enters the battlefield, counter target spell. Put X +1/+1 counters on Draining Whelk, where X is that spell's converted mana cost.
|
||||
mana={4}{U}{U}
|
||||
type=Creature
|
||||
subtype=Illusion
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Drake Umbra
|
||||
mana={4}{U}
|
||||
type=Enchantment
|
||||
@@ -7045,16 +7036,6 @@ mana={2}{G}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Heartlash Cinder
|
||||
abilities=haste
|
||||
text=Haste -- Chroma - When Heartlash Cinder enters the battlefield, it gets +X/+0 until end of turn, where X is the number of red mana symbols in the mana costs of permanents you control.
|
||||
mana={1}{R}
|
||||
type=Creature
|
||||
subtype=Elemental Warrior
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
name=Heartstone
|
||||
text=Activated abilities of creatures cost {1} less to activate. This effect can't reduce the amount of mana an ability costs to activate to less than one mana.
|
||||
mana={3}
|
||||
@@ -7686,12 +7667,6 @@ type=Instant
|
||||
text=As an additional cost to cast Induce Despair, reveal a creature card from your hand. Target creature gets -X/-X until end of turn, where X is the revealed card's converted mana cost.
|
||||
[/card]
|
||||
[card]
|
||||
name=Induce Paranoia
|
||||
text=Counter target spell. If {B} was spent to cast Induce Paranoia, that spell's controller puts the top X cards of his or her library into his or her graveyard, where X is the spell's converted mana cost.
|
||||
mana={2}{U}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Inescapable Brute
|
||||
text=Wither (This deals damage to creatures in the form of -1/-1 counters.) -- Inescapable Brute must be blocked if able.
|
||||
mana={5}{R}
|
||||
@@ -11490,15 +11465,6 @@ mana={X}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Outrage Shaman
|
||||
text=Chroma - When Outrage Shaman enters the battlefield, it deals damage to target creature equal to the number of red mana symbols in the mana costs of permanents you control.
|
||||
mana={3}{R}{R}
|
||||
type=Creature
|
||||
subtype=Goblin Shaman
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Outrider en-Kor
|
||||
text=Flanking (Whenever a creature without flanking blocks this creature, the blocking creature gets -1/-1 until end of turn.) -- {0}: The next 1 damage that would be dealt to Outrider en-Kor this turn is dealt to target creature you control instead.
|
||||
mana={2}{W}
|
||||
@@ -12350,15 +12316,6 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Primalcrux
|
||||
text=Trample -- Chroma - Primalcrux's power and toughness are each equal to the number of green mana symbols in the mana costs of permanents you control.
|
||||
mana={G}{G}{G}{G}{G}{G}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=*
|
||||
toughness=*
|
||||
[/card]
|
||||
[card]
|
||||
name=Primitive Etchings
|
||||
text=Reveal the first card you draw each turn. Whenever you reveal a creature card this way, draw a card.
|
||||
mana={2}{G}{G}
|
||||
@@ -12905,13 +12862,6 @@ mana={R}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Ral Zarek
|
||||
text=+1: Tap target permanent, then untap another target permanent. -- -2: Ral Zarek deals 3 damage to target creature or player. -- -7: Flip five coins. Take an extra turn after this one for each coin that comes up heads.
|
||||
mana={2}{U}{R}
|
||||
type=Planeswalker
|
||||
subtype=Ral
|
||||
[/card]
|
||||
[card]
|
||||
name=Raiding Party
|
||||
text=Raiding Party can't be the target of white spells or abilities from white sources. -- Sacrifice an Orc: Each player may tap any number of untapped white creatures he or she controls. For each creature tapped this way, that player chooses up to two Plains. Then destroy all Plains that weren't chosen this way by any player.
|
||||
mana={2}{R}
|
||||
@@ -14541,12 +14491,6 @@ mana={W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Serum Powder
|
||||
text={T}: Add {1} to your mana pool. -- Any time you could mulligan and Serum Powder is in your hand, you may exile all the cards from your hand, then draw that many cards. (You can do this in addition to taking mulligans.)
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Serum Visions
|
||||
text=Draw a card. -- Scry 2. (To scry 2, look at the top two cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.)
|
||||
mana={U}
|
||||
@@ -15830,15 +15774,6 @@ text={T}: Add {1} to your mana pool. -- {4}, {T}: Put a 0/1 white Goat creature
|
||||
type=Land
|
||||
[/card]
|
||||
[card]
|
||||
name=Springjack Shepherd
|
||||
text=Chroma - When Springjack Shepherd enters the battlefield, put a 0/1 white Goat creature token onto the battlefield for each white mana symbol in the mana costs of permanents you control.
|
||||
mana={3}{W}
|
||||
type=Creature
|
||||
subtype=Kithkin Wizard
|
||||
power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Sprout Swarm
|
||||
text=Convoke (Each creature you tap while casting this spell reduces its total cost by {1} or by one mana of that creature's color.) -- Buyback {3} (You may pay an additional {3} as you cast this spell. If you do, put this card into your hand as it resolves.) -- Put a 1/1 green Saproling creature token onto the battlefield.
|
||||
mana={1}{G}
|
||||
@@ -17631,15 +17566,6 @@ toughness=2
|
||||
text=Auras attached to permanents you control have totem armor. (If an enchanted permanent you control would be destroyed, instead remove all damage from it and destroy an Aura attached to it.)
|
||||
[/card]
|
||||
[card]
|
||||
name=Umbra Stalker
|
||||
text=Chroma - Umbra Stalker's power and toughness are each equal to the number of black mana symbols in the mana costs of cards in your graveyard.
|
||||
mana={4}{B}{B}{B}
|
||||
type=Creature
|
||||
subtype=Elemental
|
||||
power=*
|
||||
toughness=*
|
||||
[/card]
|
||||
[card]
|
||||
name=Unblinking Bleb
|
||||
text=Morph {2}{U} (You may cast this face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) -- Whenever Unblinking Bleb or another permanent is turned face up, you may scry 2. (To scry 2, look at the top two cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.)
|
||||
mana={3}{U}
|
||||
|
||||
@@ -204,6 +204,7 @@ brass_man.txt
|
||||
brass_man_i161.txt
|
||||
briarhorn.txt
|
||||
bringer_of_the_red_dawn.txt
|
||||
buyback.txt
|
||||
cage_of_hands.txt
|
||||
Call_to_Heel_1.txt
|
||||
Call_to_Heel_2.txt
|
||||
@@ -344,6 +345,7 @@ foratog.txt
|
||||
force_of_nature.txt
|
||||
force_of_nature2.txt
|
||||
force_of_nature3.txt
|
||||
formidable.txt
|
||||
fountain_of_youth.txt
|
||||
Frogmite.txt
|
||||
fungus_sliver.txt
|
||||
@@ -660,6 +662,8 @@ tidal_warrior_i649.txt
|
||||
tidal_warrior_i652.txt
|
||||
Timely_Reinforcements.txt
|
||||
titanic_ultimatum.txt
|
||||
tokenizer.txt
|
||||
tokenizer2.txt
|
||||
torture.txt
|
||||
tranquil_domain.txt
|
||||
turn_to_slag.txt
|
||||
|
||||
30
projects/mtg/bin/Res/test/buyback.txt
Normal file
30
projects/mtg/bin/Res/test/buyback.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
# Cast card once with buyback and second time without.
|
||||
# The card must be in the graveyard, not in the hand
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
|
||||
[PLAYER1]
|
||||
hand:Capsize
|
||||
manapool:{5}{U}{U}{U}{U}
|
||||
|
||||
[PLAYER2]
|
||||
inplay:Swamp,Island
|
||||
|
||||
[DO]
|
||||
Capsize
|
||||
# pay buyback
|
||||
choice 1
|
||||
Swamp
|
||||
Capsize
|
||||
Island
|
||||
|
||||
[ASSERT]
|
||||
FIRSTMAIN
|
||||
|
||||
[PLAYER1]
|
||||
graveyard:Capsize
|
||||
|
||||
[PLAYER2]
|
||||
hand:Swamp,Island
|
||||
|
||||
[END]
|
||||
33
projects/mtg/bin/Res/test/formidable.txt
Normal file
33
projects/mtg/bin/Res/test/formidable.txt
Normal file
@@ -0,0 +1,33 @@
|
||||
#Testing Atarka Beastbreaker,Stampeding Elk Herd -- Formidable
|
||||
#Atarka Beastbreaker will become 6/6, and then attacks along with Stampeding Elk Herd, trample effect will trigger
|
||||
#then p2 will block with Steel Wall, p2 must have 13 life...
|
||||
[INIT]
|
||||
COMBATATTACKERS
|
||||
[PLAYER1]
|
||||
inplay:Atarka Beastbreaker,Krosan Tusker,Stampeding Elk Herd
|
||||
manapool:{4}{G}
|
||||
[PLAYER2]
|
||||
inplay:Steel Wall
|
||||
life:20
|
||||
[DO]
|
||||
Atarka Beastbreaker
|
||||
choice 1
|
||||
Atarka Beastbreaker
|
||||
Stampeding Elk Herd
|
||||
next
|
||||
Steel Wall
|
||||
#blockers
|
||||
next
|
||||
#combatdamage 2
|
||||
next
|
||||
next
|
||||
#endofcombat 2
|
||||
[ASSERT]
|
||||
COMBATEND
|
||||
[PLAYER1]
|
||||
inplay:Atarka Beastbreaker,Krosan Tusker,Stampeding Elk Herd
|
||||
manapool:{0}
|
||||
[PLAYER2]
|
||||
graveyard:Steel Wall
|
||||
life:13
|
||||
[END]
|
||||
24
projects/mtg/bin/Res/test/griselbrand.txt
Normal file
24
projects/mtg/bin/Res/test/griselbrand.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
#Testing Griselbrand with the new specific life cost {L:7}
|
||||
#Player has 8 life and you cannot use the ability the second time if you cannot pay life.
|
||||
#Must change griselbrand code to {L:7}:draw:7 instead of {L}{L}{L}{L}{L}{L}{L}:draw:7
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
inplay:Griselbrand
|
||||
life:8
|
||||
library:forest,forest,forest,forest,forest,forest,forest,plains,mountain,mountain,mountain,mountain,mountain,mountain,island
|
||||
[PLAYER2]
|
||||
life:20
|
||||
[DO]
|
||||
Griselbrand
|
||||
Griselbrand
|
||||
[ASSERT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
inplay:Griselbrand
|
||||
life:1
|
||||
hand:mountain,mountain,mountain,mountain,mountain,mountain,island
|
||||
library:forest,forest,forest,forest,forest,forest,forest,plains
|
||||
[PLAYER2]
|
||||
life:20
|
||||
[END]
|
||||
38
projects/mtg/bin/Res/test/guild_keyword.txt
Normal file
38
projects/mtg/bin/Res/test/guild_keyword.txt
Normal file
@@ -0,0 +1,38 @@
|
||||
#Testing guild keyword gruul for Xenagos, God of Revels. You must have Born of the gods set (BNG)
|
||||
#[card]
|
||||
#name=Xenagos, God of Revels
|
||||
#abilities=indestructible
|
||||
#auto=@each my combatbegins:name(haste and +x/+x) target(other creature|mybattlefield) transforms((,newability[haste],newability[power/power])) ueot
|
||||
#auto=this(variable{gruul}>6) transforms((Creature))
|
||||
#text=Indestructible -- As long as your devotion to red and green is less than seven, Xenagos isn't a creature. -- At the beginning of combat on your turn, another target creature you control gains haste and gets +X/+X until end of turn, where X is that creature's power.
|
||||
#mana={3}{R}{G}
|
||||
#type=Legendary Enchantment
|
||||
#subtype=God
|
||||
#power=6
|
||||
#toughness=5
|
||||
#[/card]
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
inplay:378528
|
||||
hand:19869
|
||||
life:20
|
||||
manapool:{G}{G}{G}{G}{G}
|
||||
[PLAYER2]
|
||||
life:20
|
||||
[DO]
|
||||
19869
|
||||
next
|
||||
choice 0
|
||||
19869
|
||||
next
|
||||
19869
|
||||
eot
|
||||
[ASSERT]
|
||||
UNTAP
|
||||
[PLAYER1]
|
||||
inplay:378528,19869
|
||||
life:20
|
||||
[PLAYER2]
|
||||
life:12
|
||||
[END]
|
||||
29
projects/mtg/bin/Res/test/tokenizer.txt
Normal file
29
projects/mtg/bin/Res/test/tokenizer.txt
Normal file
@@ -0,0 +1,29 @@
|
||||
# Testing Tokenizer - Parallel Lives (ISD) 249662
|
||||
# Dragon Fodder (ALA) 174936
|
||||
# text=Put two 1/1 red Goblin creature tokens into play.
|
||||
# Tokens must be 2.. since there are no tokenizer.
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
hand:174936
|
||||
manapool:{R}{1}
|
||||
inplay:249662
|
||||
[PLAYER2]
|
||||
hand:Demystify
|
||||
manapool:{W}
|
||||
[DO]
|
||||
174936
|
||||
no
|
||||
yes
|
||||
Demystify
|
||||
249662
|
||||
endinterruption
|
||||
[ASSERT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
graveyard:249662,174936
|
||||
inplay:-174936,-174936
|
||||
[PLAYER2]
|
||||
graveyard:Demystify
|
||||
life:20
|
||||
[END]
|
||||
27
projects/mtg/bin/Res/test/tokenizer2.txt
Normal file
27
projects/mtg/bin/Res/test/tokenizer2.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
# Testing Tokenizer - Parallel Lives (ISD) 249662
|
||||
# Dragon Fodder (ALA) 174936
|
||||
# text=Put two 1/1 red Goblin creature tokens into play.
|
||||
# Tokens must be 8.. since there are two tokenizer... original value
|
||||
# is 2 with first tokenizer it will become 4, with the second tokenizer
|
||||
# the value will be 8...
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
hand:174936
|
||||
manapool:{R}{1}
|
||||
inplay:249662,249662
|
||||
[PLAYER2]
|
||||
inplay:plains
|
||||
hand:Demystify
|
||||
[DO]
|
||||
174936
|
||||
[ASSERT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
graveyard:174936
|
||||
inplay:249662,249662,-174936,-174936,-174936,-174936,-174936,-174936,-174936,-174936
|
||||
[PLAYER2]
|
||||
hand:Demystify
|
||||
inplay:plains
|
||||
life:20
|
||||
[END]
|
||||
@@ -172,6 +172,206 @@ private:
|
||||
{
|
||||
intValue = target->getManaCost()->getConvertedCost();
|
||||
}
|
||||
else if (s == "azorius")//devotion blue white
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 2);
|
||||
intValue += zone->countDevotion(dtc, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "boros")//devotion red white
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 3);
|
||||
intValue += zone->countDevotion(dtc, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "dimir")//devotion blue black
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 2);
|
||||
intValue += zone->countDevotion(dtc, 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "golgari")//devotion to green black
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 1);
|
||||
intValue += zone->countDevotion(dtc, 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "gruul")//devotion to green red
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 1);
|
||||
intValue += zone->countDevotion(dtc, 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "izzet")//devotion to red blue
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 2);
|
||||
intValue += zone->countDevotion(dtc, 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "orzhov")//devotion to white black
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 4);
|
||||
intValue += zone->countDevotion(dtc, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "rakdos")//devotion to red black
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 3);
|
||||
intValue += zone->countDevotion(dtc, 4);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "selesnya")//devotion to green white
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 1);
|
||||
intValue += zone->countDevotion(dtc, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s == "simic")//devotion to green blue
|
||||
{
|
||||
TargetChooserFactory dtf(card->getObserver());
|
||||
TargetChooser * dtc = dtf.createTargetChooser("*",NULL);
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
Player * dp = card->getObserver()->players[i];
|
||||
MTGGameZone * dzones[] = { dp->game->inPlay, dp->game->graveyard, dp->game->hand, dp->game->library };
|
||||
for (int k = 0; k < 4; k++)
|
||||
{
|
||||
MTGGameZone * zone = dzones[k];
|
||||
if (dtc->targetsZone(zone, card)&&dp == card->controller())
|
||||
{
|
||||
intValue += zone->countDevotion(dtc, 1);
|
||||
intValue += zone->countDevotion(dtc, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
SAFE_DELETE(dtc);
|
||||
}
|
||||
else if (s.find("type:") != string::npos)
|
||||
{
|
||||
size_t begins = s.find("type:");
|
||||
@@ -435,6 +635,17 @@ private:
|
||||
{
|
||||
intValue = target->controller()->opponent()->game->hand->nb_cards;
|
||||
}
|
||||
else if (s == "powertotalinplay")//Count Total Power of Creatures you control... Formidable
|
||||
{
|
||||
intValue = 0;
|
||||
for (int j = card->controller()->game->inPlay->nb_cards - 1; j >= 0; --j)
|
||||
{
|
||||
if (card->controller()->game->inPlay->cards[j]->hasType(Subtypes::TYPE_CREATURE))
|
||||
{
|
||||
intValue += card->controller()->game->inPlay->cards[j]->power;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
intValue = atoi(s.c_str());
|
||||
@@ -2929,7 +3140,7 @@ public:
|
||||
SAFE_DELETE(NewPow);
|
||||
SAFE_DELETE(NewTou);
|
||||
}
|
||||
for (int i = 0; i < multiplier->getValue(); ++i)
|
||||
for (int i = 0; i < Tokenizer(); ++i)
|
||||
{
|
||||
//MTGCardInstance * myToken;
|
||||
if (tokenId)
|
||||
@@ -2988,6 +3199,23 @@ public:
|
||||
return 1;
|
||||
}
|
||||
|
||||
int Tokenizer()//tokenizer
|
||||
{
|
||||
int tokenize = 1;
|
||||
if (source->controller()->game->battlefield->hasAbility(Constants::TOKENIZER))
|
||||
{
|
||||
int nbcards = source->controller()->game->battlefield->nb_cards;
|
||||
for (int j = 0; j < nbcards; j++)
|
||||
{
|
||||
if (source->controller()->game->battlefield->cards[j]->has(Constants::TOKENIZER))
|
||||
tokenize *= 2;
|
||||
}
|
||||
return multiplier->getValue()*tokenize;
|
||||
}
|
||||
else
|
||||
return multiplier->getValue();
|
||||
}
|
||||
|
||||
void setTokenOwner()
|
||||
{
|
||||
switch(who)
|
||||
@@ -5329,6 +5557,17 @@ public:
|
||||
AAShuffle * clone() const;
|
||||
};
|
||||
|
||||
//Mulligan
|
||||
class AAMulligan: public ActivatedAbilityTP
|
||||
{
|
||||
public:
|
||||
AAMulligan(GameObserver* observer, int _id, MTGCardInstance * card, Targetable * _target, ManaCost * _cost = NULL, int who =
|
||||
TargetChooser::UNSET);
|
||||
int resolve();
|
||||
const string getMenuText();
|
||||
AAMulligan * clone() const;
|
||||
};
|
||||
|
||||
//Remove Mana From ManaPool
|
||||
class AARemoveMana: public ActivatedAbilityTP
|
||||
{
|
||||
|
||||
@@ -90,6 +90,19 @@ public:
|
||||
virtual LifeCost * clone() const;
|
||||
};
|
||||
|
||||
//Specific life cost
|
||||
class SpecificLifeCost : public ExtraCost
|
||||
{
|
||||
private:
|
||||
int slc;
|
||||
|
||||
public:
|
||||
SpecificLifeCost(TargetChooser *_tc = NULL, int slc = 0);
|
||||
virtual int canPay();
|
||||
virtual int doPay();
|
||||
virtual SpecificLifeCost * clone() const;
|
||||
};
|
||||
|
||||
//phyrexian mana
|
||||
class LifeorManaCost : public ExtraCost
|
||||
{
|
||||
|
||||
@@ -153,6 +153,7 @@ class GameObserver{
|
||||
bool undo();
|
||||
bool isLoading(){ return mLoading; };
|
||||
void Mulligan(Player* player = NULL);
|
||||
void serumMulligan(Player* player = NULL);
|
||||
Player* getPlayer(size_t index) { return players[index];};
|
||||
bool isStarted() { return (mLayers!=NULL);};
|
||||
RandomGenerator* getRandomGenerator() { return &randomGenerator; };
|
||||
|
||||
@@ -219,7 +219,8 @@ class Constants
|
||||
LURE = 101,
|
||||
NOLEGEND = 102,
|
||||
CANPLAYFROMGRAVEYARD = 103,
|
||||
NB_BASIC_ABILITIES = 104,
|
||||
TOKENIZER = 104,
|
||||
NB_BASIC_ABILITIES = 105,
|
||||
|
||||
|
||||
RARITY_S = 'S', //Special Rarity
|
||||
|
||||
@@ -98,6 +98,7 @@ class MTGGameZone {
|
||||
unsigned int countByType(const string &value);
|
||||
unsigned int countByCanTarget(TargetChooser * tc);
|
||||
unsigned int countTotalManaSymbols(TargetChooser * tc, int color);
|
||||
unsigned int countDevotion(TargetChooser * tc, int color); //devotion for gods
|
||||
MTGCardInstance * findByName(string name);
|
||||
|
||||
//returns true if one of the cards in the zone has the ability
|
||||
|
||||
@@ -99,6 +99,7 @@ public:
|
||||
string toString();
|
||||
int getCost(int color);
|
||||
int getManaSymbols(int color);
|
||||
int getManaSymbolsHybridMerged(int color);
|
||||
|
||||
//Returns NULL if i is greater than nbhybrids
|
||||
ManaCostHybrid * getHybridCost(unsigned int i);
|
||||
|
||||
@@ -19,6 +19,7 @@ public:
|
||||
string toString();
|
||||
int getConvertedCost();
|
||||
int getManaSymbols(int color);
|
||||
int getManaSymbolsHybridMerged(int color);
|
||||
|
||||
friend std::ostream& operator<<(std::ostream& out, ManaCostHybrid& m);
|
||||
friend std::ostream& operator<<(std::ostream& out, ManaCostHybrid* m);
|
||||
|
||||
@@ -68,6 +68,7 @@ public:
|
||||
MTGInPlay * inPlay();
|
||||
ManaPool * getManaPool();
|
||||
void takeMulligan();
|
||||
void serumMulligan();
|
||||
ManaCost * doesntEmpty;
|
||||
ManaCost * poolDoesntEmpty;
|
||||
void cleanupPhase();
|
||||
|
||||
@@ -234,7 +234,7 @@ public:
|
||||
WCFilterSet(string arg);
|
||||
bool isMatch(MTGCard *c)
|
||||
{
|
||||
return (setid == MTGSets::ALL_SETS || c->setId == setid);
|
||||
return (setid == MTGSets::ALL_SETS || c->setId == setid) && (c->getRarity() != Constants::RARITY_T); //removes viewing of card tokens. tokens will not display on spoiler and should not affect gameplay :)
|
||||
}
|
||||
;
|
||||
string getCode();
|
||||
|
||||
@@ -1359,6 +1359,13 @@ int AAFizzler::resolve()
|
||||
sCard = sTarget->source;
|
||||
if (!sCard || !sTarget || sCard->has(Constants::NOFIZZLE))
|
||||
return 0;
|
||||
if (source->alias == 111057 && sTarget)//Draining Whelk
|
||||
{
|
||||
for (int j = sTarget->cost->getConvertedCost(); j > 0; j--)
|
||||
{
|
||||
source->counters->addCounter(1,1);
|
||||
}
|
||||
}
|
||||
stack->Fizzle(sTarget, fizzleMode);
|
||||
return 1;
|
||||
}
|
||||
@@ -2482,35 +2489,49 @@ int AACloner::resolve()
|
||||
|
||||
Player * targetPlayer = who == 1 ? source->controller()->opponent() : source->controller();
|
||||
|
||||
MTGCardInstance * myClone = NEW MTGCardInstance(clone, targetPlayer->game);
|
||||
targetPlayer->game->temp->addCard(myClone);
|
||||
int tokenize = 1;//tokenizer support for cloning
|
||||
if (targetPlayer->game->battlefield->hasAbility(Constants::TOKENIZER))
|
||||
{
|
||||
int nbcards = targetPlayer->game->battlefield->nb_cards;
|
||||
for (int j = 0; j < nbcards; j++)
|
||||
{
|
||||
if (targetPlayer->game->battlefield->cards[j]->has(Constants::TOKENIZER))
|
||||
tokenize *= 2;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < tokenize; ++i)
|
||||
{
|
||||
MTGCardInstance * myClone = NEW MTGCardInstance(clone, targetPlayer->game);
|
||||
targetPlayer->game->temp->addCard(myClone);
|
||||
|
||||
Spell * spell = NEW Spell(game, myClone);
|
||||
spell->source->isToken = 1;
|
||||
spell->resolve();
|
||||
spell->source->fresh = 1;
|
||||
spell->source->model = spell->source;
|
||||
spell->source->model->data = spell->source;
|
||||
if(_target->isToken)
|
||||
{
|
||||
spell->source->power = _target->origpower;
|
||||
spell->source->toughness = _target->origtoughness;
|
||||
spell->source->life = _target->origtoughness;
|
||||
Spell * spell = NEW Spell(game, myClone);
|
||||
spell->source->isToken = 1;
|
||||
spell->resolve();
|
||||
spell->source->fresh = 1;
|
||||
spell->source->model = spell->source;
|
||||
spell->source->model->data = spell->source;
|
||||
if(_target->isToken)
|
||||
{
|
||||
spell->source->power = _target->origpower;
|
||||
spell->source->toughness = _target->origtoughness;
|
||||
spell->source->life = _target->origtoughness;
|
||||
}
|
||||
list<int>::iterator it;
|
||||
for (it = awith.begin(); it != awith.end(); it++)
|
||||
{
|
||||
spell->source->basicAbilities[*it] = 1;
|
||||
}
|
||||
for (it = colors.begin(); it != colors.end(); it++)
|
||||
{
|
||||
spell->source->setColor(*it);
|
||||
}
|
||||
for (it = typesToAdd.begin(); it != typesToAdd.end(); it++)
|
||||
{
|
||||
spell->source->addType(*it);
|
||||
}
|
||||
delete spell;
|
||||
}
|
||||
list<int>::iterator it;
|
||||
for (it = awith.begin(); it != awith.end(); it++)
|
||||
{
|
||||
spell->source->basicAbilities[*it] = 1;
|
||||
}
|
||||
for (it = colors.begin(); it != colors.end(); it++)
|
||||
{
|
||||
spell->source->setColor(*it);
|
||||
}
|
||||
for (it = typesToAdd.begin(); it != typesToAdd.end(); it++)
|
||||
{
|
||||
spell->source->addType(*it);
|
||||
}
|
||||
delete spell;
|
||||
return 1;
|
||||
|
||||
}
|
||||
@@ -2941,6 +2962,32 @@ AAShuffle * AAShuffle::clone() const
|
||||
return NEW AAShuffle(*this);
|
||||
}
|
||||
|
||||
// Mulligan
|
||||
AAMulligan::AAMulligan(GameObserver* observer, int _id, MTGCardInstance * card, Targetable * _target, ManaCost * _cost, int who) :
|
||||
ActivatedAbilityTP(observer, _id, card, _target, _cost, who)
|
||||
{
|
||||
}
|
||||
|
||||
int AAMulligan::resolve()
|
||||
{
|
||||
Player * player = getPlayerFromTarget(getTarget());
|
||||
if (player)
|
||||
{
|
||||
player->serumMulligan();
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
const string AAMulligan::getMenuText()
|
||||
{
|
||||
return "Mulligan";
|
||||
}
|
||||
|
||||
AAMulligan * AAMulligan::clone() const
|
||||
{
|
||||
return NEW AAMulligan(*this);
|
||||
}
|
||||
|
||||
// Remove Mana From ManaPool
|
||||
AARemoveMana::AARemoveMana(GameObserver* observer, int _id, MTGCardInstance * card, Targetable * _target, string manaDesc, int who) :
|
||||
ActivatedAbilityTP(observer, _id, card, _target, NULL, who)
|
||||
|
||||
@@ -151,6 +151,44 @@ int LifeCost::doPay()
|
||||
return 1;
|
||||
}
|
||||
|
||||
//Specific life cost
|
||||
SpecificLifeCost * SpecificLifeCost::clone() const
|
||||
{
|
||||
SpecificLifeCost * ec = NEW SpecificLifeCost(*this);
|
||||
if (tc)
|
||||
ec->tc = tc->clone();
|
||||
return ec;
|
||||
}
|
||||
|
||||
SpecificLifeCost::SpecificLifeCost(TargetChooser *_tc, int slc)
|
||||
: ExtraCost("Life", _tc), slc(slc)
|
||||
{
|
||||
}
|
||||
|
||||
int SpecificLifeCost::canPay()
|
||||
{
|
||||
MTGCardInstance * _target = (MTGCardInstance *) target;
|
||||
if(_target->controller()->life >= slc)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int SpecificLifeCost::doPay()
|
||||
{
|
||||
if (!target)
|
||||
return 0;
|
||||
|
||||
MTGCardInstance * _target = (MTGCardInstance *) target;
|
||||
|
||||
_target->controller()->loseLife(slc);
|
||||
target = NULL;
|
||||
if (tc)
|
||||
tc->initTargets();
|
||||
return 1;
|
||||
}
|
||||
|
||||
//life or Mana cost
|
||||
LifeorManaCost * LifeorManaCost::clone() const
|
||||
{
|
||||
|
||||
@@ -1909,6 +1909,13 @@ void GameObserver::Mulligan(Player* player)
|
||||
player->takeMulligan();
|
||||
}
|
||||
|
||||
void GameObserver::serumMulligan(Player* player)
|
||||
{
|
||||
if(!player) player = currentPlayer;
|
||||
logAction(player, "mulligan serum powder");
|
||||
player->serumMulligan();
|
||||
}
|
||||
|
||||
Player* GameObserver::createPlayer(const string& playerMode
|
||||
#ifdef TESTSUITE
|
||||
, TestSuiteGame* testgame
|
||||
|
||||
@@ -236,8 +236,8 @@ void GameStateOptions::Render()
|
||||
"Nakano, Niegen, Kaioshin, Psyringe, r1c47, Superhiro,",
|
||||
"Szei, Thanatos02, Whismer, Wololo",
|
||||
"",
|
||||
"Thanks also go to Dr.Watson, Orine, Raphael, Sakya, Tyranid",
|
||||
"for their help.",
|
||||
"Thanks also go to Dr.Watson, KF1, Orine, Raphael, Sakya,",
|
||||
"Tacoghandi, Tyranid for their help.",
|
||||
"",
|
||||
"Thanks to everyone who contributes code/content on the forums!",
|
||||
"",
|
||||
|
||||
@@ -2532,6 +2532,16 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG
|
||||
return a;
|
||||
}
|
||||
|
||||
//Serum Powder
|
||||
found = s.find("serumpowder");
|
||||
if (found != string::npos)
|
||||
{
|
||||
Targetable * t = spell? spell->getNextTarget() : NULL;
|
||||
MTGAbility * a = NEW AAMulligan(observer, id, card, t, NULL, who);
|
||||
a->oneShot = 1;
|
||||
return a;
|
||||
}
|
||||
|
||||
//Remove Mana from ManaPool
|
||||
vector<string> splitRemove = parseBetween(s, "removemana(", ")");
|
||||
if (splitRemove.size())
|
||||
@@ -4284,6 +4294,7 @@ void AbilityFactory::addAbilities(int _id, Spell * spell)
|
||||
}
|
||||
else if (card->alternateCostPaid[ManaCost::MANA_PAID_WITH_BUYBACK] > 0)
|
||||
{
|
||||
card->alternateCostPaid[ManaCost::MANA_PAID_WITH_BUYBACK] = 0;
|
||||
zones->putInZone(card, zones->stack, Endzones->hand);
|
||||
}
|
||||
else if (card->alternateCostPaid[ManaCost::MANA_PAID_WITH_FLASHBACK] > 0)
|
||||
|
||||
@@ -132,7 +132,8 @@ const char* Constants::MTGBasicAbilities[] = {
|
||||
"soulbond",
|
||||
"lure",
|
||||
"nolegend",
|
||||
"canplayfromgraveyard"
|
||||
"canplayfromgraveyard",
|
||||
"tokenizer"//parallel lives
|
||||
};
|
||||
|
||||
map<string,int> Constants::MTGBasicAbilitiesMap;
|
||||
|
||||
@@ -580,6 +580,24 @@ unsigned int MTGGameZone::countTotalManaSymbols(TargetChooser * tc, int color)
|
||||
return result;
|
||||
}
|
||||
|
||||
unsigned int MTGGameZone::countDevotion(TargetChooser * tc, int color)
|
||||
{
|
||||
if (!tc) {
|
||||
return 0;
|
||||
}
|
||||
// we don't care if cards have protection.
|
||||
bool withoutProtections = true;
|
||||
int result = 0;
|
||||
for (int i = 0; i < nb_cards; i++)
|
||||
{
|
||||
if (tc->canTarget(cards[i], withoutProtections))
|
||||
{
|
||||
result += cards[i]->getManaCost()->getManaSymbolsHybridMerged(color);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
MTGCardInstance * MTGGameZone::findByName(string name)
|
||||
{
|
||||
for (int i = 0; i < (nb_cards); i++)
|
||||
|
||||
@@ -159,10 +159,19 @@ ManaCost * ManaCost::parseManaCost(string s, ManaCost * _manaCost, MTGCardInstan
|
||||
{ //Mill to exile yourself as a cost (Library 2 Exile)
|
||||
manaCost->addExtraCost(NEW MillExileCost(tc));
|
||||
}
|
||||
else
|
||||
else if (value == "l")
|
||||
{ //Life cost
|
||||
manaCost->addExtraCost(NEW LifeCost(tc));
|
||||
}
|
||||
else
|
||||
{ //Specific Life cost
|
||||
vector<string>valSplit = parseBetween(value,"l:"," ",false);
|
||||
if (valSplit.size()) {
|
||||
WParsedInt* lifetopay = NEW WParsedInt(valSplit[1], NULL, c);
|
||||
manaCost->addExtraCost(NEW SpecificLifeCost(tc,lifetopay->getValue()));
|
||||
SAFE_DELETE(lifetopay);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'd': //DiscardRandom cost
|
||||
if (value == "d")
|
||||
@@ -609,6 +618,27 @@ int ManaCost::getManaSymbols(int color)
|
||||
return result;
|
||||
}
|
||||
|
||||
int ManaCost::getManaSymbolsHybridMerged(int color)
|
||||
{
|
||||
int result = cost[color];
|
||||
for (size_t i = 0; i < hybrids.size(); ++i)
|
||||
{
|
||||
result = hybrids[i].getManaSymbolsHybridMerged(color);//removed +
|
||||
}
|
||||
if (extraCosts && extraCosts->costs.size())
|
||||
{
|
||||
for (size_t i = 0; i < extraCosts->costs.size(); ++i)
|
||||
{
|
||||
LifeorManaCost * phyrexianMana = dynamic_cast<LifeorManaCost*>(extraCosts->costs[i]);
|
||||
if (phyrexianMana)
|
||||
{
|
||||
result += phyrexianMana->getManaCost()->getManaSymbolsHybridMerged(color);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
int ManaCost::parseManaSymbol(char symbol)
|
||||
{
|
||||
switch (symbol)
|
||||
|
||||
@@ -58,6 +58,14 @@ int ManaCostHybrid::getManaSymbols(int color)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ManaCostHybrid::getManaSymbolsHybridMerged(int color)
|
||||
{
|
||||
// we assume that color1 and color2 are different
|
||||
if (color1 == color) return value1;
|
||||
if (color2 == color) return value2;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ManaCostHybrid::hasColor(int color)
|
||||
{
|
||||
if (((color1 == color) && value1) || ((color2 == color) && value2))
|
||||
|
||||
@@ -217,6 +217,22 @@ void Player::takeMulligan()
|
||||
//Draw hand with 1 less card penalty //almhum
|
||||
}
|
||||
|
||||
void Player::serumMulligan()
|
||||
{
|
||||
MTGPlayerCards * currentPlayerZones = game;
|
||||
int cardsinhand = currentPlayerZones->hand->nb_cards;
|
||||
for (int i = 0; i < cardsinhand; i++) //Exile
|
||||
currentPlayerZones->putInZone(currentPlayerZones->hand->cards[0],
|
||||
currentPlayerZones->hand,
|
||||
currentPlayerZones->exile);
|
||||
|
||||
currentPlayerZones->library->shuffle(); //Shuffle
|
||||
|
||||
for (int i = 0; i < (cardsinhand); i++)
|
||||
game->drawFromLibrary();
|
||||
//Draw hand no penalty
|
||||
}
|
||||
|
||||
//Cleanup phase at the end of a turn
|
||||
void Player::cleanupPhase()
|
||||
{
|
||||
|
||||
@@ -12,6 +12,10 @@ CONFIG(console, graphics|console){
|
||||
CONFIG += console
|
||||
CONFIG -= app_bundle
|
||||
DEFINES += TESTSUITE
|
||||
|
||||
QMAKE_CXXFLAGS += -g -fprofile-arcs -ftest-coverage
|
||||
QMAKE_LDFLAGS += -g -fprofile-arcs -ftest-coverage
|
||||
LIBS += -lgcov
|
||||
}
|
||||
else:CONFIG(graphics, graphics|console){
|
||||
folder_01.source = qml/QmlWagic
|
||||
@@ -19,13 +23,8 @@ else:CONFIG(graphics, graphics|console){
|
||||
DEPLOYMENTFOLDERS = folder_01
|
||||
QT += core gui opengl network multimedia
|
||||
QT -= declarative quick qml
|
||||
#maemo5:DEFINES += QT_WIDGET
|
||||
DEFINES += QT_WIDGET
|
||||
unix:!symbian:INCLUDEPATH += /usr/include/GL
|
||||
|
||||
# Please do not modify the following two lines. Required for deployment.
|
||||
# !maemo5:include(qml/qmlapplicationviewer/qmlapplicationviewer.pri)
|
||||
# !maemo5:qtcAddDeployment()
|
||||
}
|
||||
|
||||
#!android:!symbian:QT += phonon
|
||||
@@ -134,6 +133,28 @@ maemo5: {
|
||||
USERDIR = /sdcard/Wagic/Res
|
||||
DEFINES += RESDIR=\\\"$$RESDIR\\\"
|
||||
DEFINES += USERDIR=\\\"$$USERDIR\\\"
|
||||
} else:macx {
|
||||
# Copy the custom Info.plist to the app bundle
|
||||
QMAKE_INFO_PLIST = MacOS/Info.plist
|
||||
# Icon is mandatory for submission
|
||||
ICON = MacOS/wagic.icns
|
||||
|
||||
#Move resource file
|
||||
res.commands = cd $$_PRO_FILE_PWD_/bin/Res; python createResourceZip.py;
|
||||
res.depends = all
|
||||
QMAKE_EXTRA_TARGETS += res
|
||||
|
||||
# Create a dmg file
|
||||
dmg.commands = mkdir wagic.app/Contents/logs; mkdir wagic.app/Contents/Resources/Res; mv $$_PRO_FILE_PWD_/bin/Res/core*.zip wagic.app/Contents/Resources/Res; cp $$_PRO_FILE_PWD_/MacOS/wagic.launcher wagic.app/Contents/MacOS; $$dirname(QMAKE_QMAKE)/macdeployqt wagic.app -dmg
|
||||
dmg.depends = res
|
||||
QMAKE_EXTRA_TARGETS += dmg
|
||||
|
||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9
|
||||
QMAKE_MAC_SDK = macosx
|
||||
|
||||
# Only Intel binaries are accepted so force this
|
||||
CONFIG += x86
|
||||
|
||||
} else:unix {
|
||||
# Variables
|
||||
BINDIR = /usr/bin
|
||||
|
||||
Reference in New Issue
Block a user