Erwan
- add Mercadian Masques, Mirrodin, Odyssey -> let's do some cleanup! - Attempt at solving a bug with AI+psychic venom (manaburn), not tested - Added Abrasax's monocolor AI decks - Momir better randomizer - Removed 64 Abilities limitation, I hope...
This commit is contained in:
74
projects/mtg/bin/Res/ai/baka/deck17.txt
Normal file
74
projects/mtg/bin/Res/ai/baka/deck17.txt
Normal file
@@ -0,0 +1,74 @@
|
||||
#Plain blue deck
|
||||
#4 x Control Magic, {2}{U}{U}, Enchant creature
|
||||
1194
|
||||
1194
|
||||
1194
|
||||
1194
|
||||
#2x Mahamoti Djinn
|
||||
129633
|
||||
129633
|
||||
#2x Persuasion, {3}{U}{U}, Enchant creature, control magic
|
||||
129900
|
||||
129900
|
||||
#4x Cloud Sprite,{U}, Creature Faerie,1/1,flying cloud
|
||||
132069
|
||||
132069
|
||||
132069
|
||||
132069
|
||||
#2x Sentinels of glen Elendra,{3}{U}, Creature Faerie Soldier,2/3,flash flying
|
||||
139426
|
||||
139426
|
||||
#4x Scien of Oona, Creature Faerie Soldier,1/1,flash flying,lord(faerie|myinplay)1/1
|
||||
139741
|
||||
139741
|
||||
139741
|
||||
139741
|
||||
#4x Oona's Gatewarden, {BU},Creature Faerie Soldier,2/1,flying defender wihter
|
||||
141975
|
||||
141975
|
||||
141975
|
||||
141975
|
||||
#4x Briaberry Cohort,{1}{U} Creature Faerie Soldier,1/1, flying +1/+1 aslongas(*[blue]|myinplay)
|
||||
146043
|
||||
146043
|
||||
146043
|
||||
146043
|
||||
#4x Glen Elendra Liege,{1}{UB}{UB}{UB}, Creature Faerie Knight, flying 2/3 lord(creature[black;blue]|myinplay) 1/1
|
||||
146743
|
||||
146743
|
||||
146743
|
||||
146743
|
||||
#4x Wasp Lancer, {UB}{UB}{UB}, Creature Faerie Soldier,3/2,flying
|
||||
153967
|
||||
153967
|
||||
153967
|
||||
153967
|
||||
#4x Plumeveil,{UW}{UW}{UW}, Creature Elemental,4/4,flash flying defender
|
||||
153980
|
||||
153980
|
||||
153980
|
||||
153980
|
||||
#2x Faerie Swarm, {3}{U}, Creature Faerie,*/*,flying,foreach(*[blue]|myinplay)1/1
|
||||
158685
|
||||
158685
|
||||
#20 x Island (10E)
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
129606
|
||||
73
projects/mtg/bin/Res/ai/baka/deck18.txt
Normal file
73
projects/mtg/bin/Res/ai/baka/deck18.txt
Normal file
@@ -0,0 +1,73 @@
|
||||
#Plain white deck
|
||||
#4x Crusade,{W}{W}, Enchantment, all white creatures +1/+1
|
||||
1341
|
||||
1341
|
||||
1341
|
||||
1341
|
||||
#4x Sacred Nectar, {1}{W}, Sorcery, you gain 4 life
|
||||
4393
|
||||
4393
|
||||
4393
|
||||
4393
|
||||
#4x Glorious Anthem, {1}{W}{W}, Enchantment, Creatures you control get +1/+1
|
||||
129572
|
||||
129572
|
||||
129572
|
||||
129572
|
||||
#4x Paladin en-Vec, {1}{W}{W}, Creature - Human Knight,2/2, first strike protection from red and black
|
||||
129668
|
||||
129668
|
||||
129668
|
||||
129668
|
||||
#4x Knight of Meadowgrain,{W}{W}, Creature-Kithin Knight,2/2,first strike,lifelink
|
||||
139715
|
||||
139715
|
||||
139715
|
||||
139715
|
||||
#4x Wizened Cenn,{W}{W}, Creature - Kithin Cleric,2/2, other kithin get +1/+1
|
||||
139716
|
||||
139716
|
||||
139716
|
||||
139716
|
||||
#4x Zealous Guardian,{WU}, Creature - Kithin Soldier,1/1,flash
|
||||
142028
|
||||
142028
|
||||
142028
|
||||
142028
|
||||
#4x Ballynock Cohort,{2}{W},Creature - Kithin Soldier,2/2,First strike, get +1/+1 aslongas you control another white creature
|
||||
142045
|
||||
142045
|
||||
142045
|
||||
142045
|
||||
#2x Armored Ascension,{3}{W},Enchant creature, +1/+1 for each plains and flying
|
||||
146041
|
||||
146041
|
||||
#2x Oversoul of Dusk,{WG}{WG}{WG}{WG}{WG},5/5, Creature - Spirit avatar, protection from blue,red and black
|
||||
146735
|
||||
146735
|
||||
#4x Thistledown Liege,{1}{WU}{WU}{WU}, 1/3, creature - Kithin Knight, give +1/+1 to blue and white creature you control
|
||||
147409
|
||||
147409
|
||||
147409
|
||||
147409
|
||||
#20x Plains (10E)
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
129683
|
||||
73
projects/mtg/bin/Res/ai/baka/deck19.txt
Normal file
73
projects/mtg/bin/Res/ai/baka/deck19.txt
Normal file
@@ -0,0 +1,73 @@
|
||||
#Plain Green Elf deck
|
||||
#4x Elvish Archers,{1}{G},2/1,Creature Elf,first strike
|
||||
1242
|
||||
1242
|
||||
1242
|
||||
1242
|
||||
#4x Elvish Champion,{1}{G}{G},2/2,Creature Elf,Other elf gets +1/+1 and forestwalk
|
||||
129534
|
||||
129534
|
||||
129534
|
||||
129534
|
||||
#4x Blanchwood Armor,{2}{G}, Enchant Creature, give +1/+1 foreach forest you control
|
||||
135267
|
||||
135267
|
||||
135267
|
||||
135267
|
||||
#2x Wildslayer Elves, {3}{G},3/3, Creature Elf Warrior, Wither
|
||||
135436
|
||||
135436
|
||||
#4x Inperious Perfect,{2}{G}, 2/2 Creature Elf Warrior, gives +1/+1 other elf you control +token 1/1 elf for {T}{G}
|
||||
139683
|
||||
139683
|
||||
139683
|
||||
139683
|
||||
#2x Dauntless Dourbark,{3}{G},*/*,Creature Treefolk warrior, power/toughness = nb of forest you control
|
||||
141851
|
||||
141851
|
||||
#4x Safehold Elite, {1}{WG},2/2, Creature Elf Scout, Persist
|
||||
146077
|
||||
146077
|
||||
146077
|
||||
146077
|
||||
#4x Boartusk Liege, {1}{RG}{RG}{RG},3/4, Creature Goblin Knight, tramples & Gives +1/+1 to red&green creatures you control
|
||||
147428
|
||||
147428
|
||||
147428
|
||||
147428
|
||||
#4x Twinblade Slasher,{G},1/1,Creature Elf Warrior, wither {1}{G}:+2/+2 only once per turn
|
||||
153436
|
||||
153436
|
||||
153436
|
||||
153436
|
||||
#4X Wilt-Leaf Cavaliers,{WG}{WG}{WG}, 3/4, Creature Elf Knight, Vigilance
|
||||
153962
|
||||
153962
|
||||
153962
|
||||
153962
|
||||
#4x Cylian Elf,{1}{G},2/2,Creature Elf Scout
|
||||
174935
|
||||
174935
|
||||
174935
|
||||
174935
|
||||
#20x Forest
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
129560
|
||||
74
projects/mtg/bin/Res/ai/baka/deck20.txt
Normal file
74
projects/mtg/bin/Res/ai/baka/deck20.txt
Normal file
@@ -0,0 +1,74 @@
|
||||
#Plain Black deck
|
||||
#4x Bad Moon,{1}{B}, Enchantment, all black creature gets +1/+1
|
||||
1144
|
||||
1144
|
||||
1144
|
||||
1144
|
||||
#4x Black knight,{B}{B}, Creature Knight,2/2, first strike protection from white
|
||||
1145
|
||||
1145
|
||||
1145
|
||||
1145
|
||||
#4x Erg Raiders,{1}{B},2/3, does 2 damage to controller if you do not attack with
|
||||
1159
|
||||
1159
|
||||
1159
|
||||
1159
|
||||
#2x Ascendant Evincar,{4}{B}{B},3/3, Legendary Creature Vampire,Flying all black creature get +1/+1 other -1/-1
|
||||
106525
|
||||
106525
|
||||
#4x Hypnotic Specter,{1}{B}{B},2/2, Creature Specter, Flying opponent discard a card if damaged by HS
|
||||
129600
|
||||
129600
|
||||
129600
|
||||
129600
|
||||
#4x Unholy Strengh, {B}, Enchant creature, gives +2/+1
|
||||
129780
|
||||
129780
|
||||
129780
|
||||
129780
|
||||
#2x terror, {1}{B}, bury target non black, non artifact creature
|
||||
135199
|
||||
135199
|
||||
#2xEyeblight's Ending,{2}{B},destroy target non-elf creature
|
||||
139449
|
||||
139449
|
||||
#4x Oona's Gatewarden, {UB},2/1, flying defender wither
|
||||
141975
|
||||
141975
|
||||
141975
|
||||
141975
|
||||
#4x Glen Elendra Liege,{1}{UB}{UB}{UB}, Creature Faerie Knight, flying 2/3 lord(creature[black;blue]|myinplay) 1/1
|
||||
146743
|
||||
146743
|
||||
146743
|
||||
146743
|
||||
#2x Wasp Lancer, {UB}{UB}{UB}, Creature Faerie Soldier,3/2,flying
|
||||
153967
|
||||
153967
|
||||
#4x Nyxathid,{1}{B}{B}, Creature Elemental, pow/thg = 7-nb cards opponent
|
||||
186616
|
||||
186616
|
||||
186616
|
||||
186616
|
||||
#20x Swamp (10E)
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
129754
|
||||
74
projects/mtg/bin/Res/ai/baka/deck21.txt
Normal file
74
projects/mtg/bin/Res/ai/baka/deck21.txt
Normal file
@@ -0,0 +1,74 @@
|
||||
#Plain red deck
|
||||
#2 x Bloodmark Mentor
|
||||
142062
|
||||
142062
|
||||
#4x Scuzzback Scrapper
|
||||
142052
|
||||
142052
|
||||
142052
|
||||
142052
|
||||
#4x Goblin king (10E)
|
||||
129578
|
||||
129578
|
||||
129578
|
||||
129578
|
||||
#4x Volcanic hammer
|
||||
4366
|
||||
4366
|
||||
4366
|
||||
4366
|
||||
#4x Boggart Ram-Gang
|
||||
153970
|
||||
153970
|
||||
153970
|
||||
153970
|
||||
#4x Lightning Bolt
|
||||
1303
|
||||
1303
|
||||
1303
|
||||
1303
|
||||
#4x orcish oriflame
|
||||
1310
|
||||
1310
|
||||
1310
|
||||
1310
|
||||
#4x Raging goblin
|
||||
129688
|
||||
129688
|
||||
129688
|
||||
129688
|
||||
#4xBoartusk Liege
|
||||
147428
|
||||
147428
|
||||
147428
|
||||
147428
|
||||
#2x Siege Gang Commander
|
||||
130539
|
||||
130539
|
||||
#4x Spark elemental
|
||||
129577
|
||||
129577
|
||||
129577
|
||||
129577
|
||||
#20x Mountain
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
129650
|
||||
|
||||
972
projects/mtg/bin/Res/sets/MRD/_cards.dat
Normal file
972
projects/mtg/bin/Res/sets/MRD/_cards.dat
Normal file
@@ -0,0 +1,972 @@
|
||||
[card]
|
||||
id=49045
|
||||
name=Alpha Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=2
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text=Remove target artifact or enchantment from the game.
|
||||
target=artifact,enchantment
|
||||
auto=moveTo(removedFromGame)
|
||||
id=48383
|
||||
name=Altar's Light
|
||||
color=White
|
||||
rarity=U
|
||||
mana={2}{W}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Sacrifice an artifact: Atog gets +2/+2 until end of turn.
|
||||
id=46106
|
||||
alias=1280
|
||||
name=Atog
|
||||
color=red
|
||||
rarity=U
|
||||
mana={1}{R}
|
||||
type=Creature
|
||||
subtype=Atog
|
||||
power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text={W}, {T}: Tap target artifact.
|
||||
auto={W},{T}:tap target(artifact)
|
||||
id=45963
|
||||
name=Auriok Transfixer
|
||||
color=White
|
||||
rarity=C
|
||||
mana={W}
|
||||
type=Creature
|
||||
subtype=Human Scout
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text={U}, Sacrifice Æther Spellbomb: Return target creature to its owner's hand. {1}, Sacrifice Æther Spellbomb: Draw a card.
|
||||
auto={U}{S}:moveTo(ownerhand) target(creature)
|
||||
auto={1}{S}:draw:1
|
||||
id=48113
|
||||
name=Æther Spellbomb
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={1}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {2}, {T}: Tap target noncreature artifact.
|
||||
auto={T}: Add {1}
|
||||
auto={2}{T}:Tap target(artifact[-creature])
|
||||
id=48916
|
||||
name=Blinkmoth Well
|
||||
rarity=U
|
||||
type=Land
|
||||
[/card]
|
||||
[card]
|
||||
text=Sacrifice Bottle Gnomes: You gain 3 life.
|
||||
auto={s}:life:3
|
||||
id=46017
|
||||
name=Bottle Gnomes
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Gnome
|
||||
power=1
|
||||
toughness=3
|
||||
subtype=Gnome
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{U}: Cobalt Golem gains flying until end of turn.
|
||||
id=48053
|
||||
auto={1}{U}:flying
|
||||
name=Cobalt Golem
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={4}
|
||||
type=Artifact Creature
|
||||
subtype=Golem
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {G} to your mana pool.
|
||||
id=46056
|
||||
auto={T}:Add {G}
|
||||
name=Copper Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text=Copperhoof Vorrac gets +1/+1 for each untapped permanent your opponents control.
|
||||
id=48603
|
||||
name=Copperhoof Vorrac
|
||||
mana={3}{G}{G}
|
||||
auto=foreach(*[-tapped]|opponentinplay) 1/1
|
||||
type=Creature
|
||||
subtype=Boar Beast
|
||||
power=2
|
||||
toughness=2
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
text=Destroy target artifact, enchantment, or land.
|
||||
id=49108
|
||||
target=artifact,enchantment,land
|
||||
auto=destroy
|
||||
name=Creeping Mold
|
||||
color=Green
|
||||
rarity=U
|
||||
mana={2}{G}{G}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
text=Destroy target artifact. Then add {G}{G}{G} to your mana pool.
|
||||
id=49060
|
||||
target=artifact
|
||||
auto=destroy
|
||||
auto=:Add {G}{G}{G}
|
||||
name=Deconstruct
|
||||
color=Green
|
||||
rarity=C
|
||||
mana={2}{G}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
text=Enchant artifact creature. You control enchanted artifact creature.
|
||||
target=creature[artifact]
|
||||
alias=1194
|
||||
id=48571
|
||||
name=Domineer
|
||||
color=Blue
|
||||
rarity=U
|
||||
mana={1}{U}{U}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
text=Fear
|
||||
id=48570
|
||||
name=Dross Prowler
|
||||
color=Black
|
||||
rarity=C
|
||||
mana={2}{B}
|
||||
type=Creature
|
||||
subtype=Zombie
|
||||
power=2
|
||||
toughness=1
|
||||
abilities=Fear
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{G}, Sacrifice Elf Replica: Destroy target enchantment.
|
||||
id=46057
|
||||
auto={1}{G}{S}:destroy target(enchantment)
|
||||
name=Elf Replica
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Elf
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text=Trample
|
||||
id=46115
|
||||
name=Fangren Hunter
|
||||
color=Green
|
||||
rarity=C
|
||||
mana={3}{G}{G}
|
||||
type=Creature
|
||||
subtype=Beast
|
||||
power=4
|
||||
toughness=4
|
||||
abilities=trample
|
||||
[/card]
|
||||
[card]
|
||||
text=Target creature gets +4/+0 until end of turn.
|
||||
id=48377
|
||||
target=creature
|
||||
auto=:4/0
|
||||
name=Fists of the Anvil
|
||||
color=Red
|
||||
rarity=C
|
||||
mana={1}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text={G}
|
||||
id=48421
|
||||
auto={T}:Add {G}
|
||||
name=Forest
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Forest
|
||||
[/card]
|
||||
[card]
|
||||
text={G}
|
||||
id=48422
|
||||
auto={T}:Add {G}
|
||||
name=Forest
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Forest
|
||||
[/card]
|
||||
[card]
|
||||
text={G}
|
||||
id=48423
|
||||
auto={T}:Add {G}
|
||||
name=Forest
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Forest
|
||||
[/card]
|
||||
[card]
|
||||
text={G}
|
||||
id=48424
|
||||
auto={T}:Add {G}
|
||||
name=Forest
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Forest
|
||||
[/card]
|
||||
[card]
|
||||
text=Flash {3}{T}: Untap target artifact.
|
||||
auto={3}{T}:Untap target(artifact)
|
||||
id=48399
|
||||
name=Galvanic Key
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add three mana of any one color to your mana pool.
|
||||
id=48189
|
||||
auto={T}:add {B}{B}{B}
|
||||
auto={T}:add {G}{G}{G}
|
||||
auto={T}:add {R}{R}{R}
|
||||
auto={T}:add {U}{U}{U}
|
||||
auto={T}:add {W}{W}{W}
|
||||
name=Gilded Lotus
|
||||
color=Artifact
|
||||
rarity=R
|
||||
mana={5}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={3}{R}, Sacrifice Goblin Replica: Destroy target artifact.
|
||||
id=46049
|
||||
auto={3}{R}{S}:destroy target(artifact)
|
||||
name=Goblin Replica
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Goblin
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text=First strike, haste
|
||||
id=48592
|
||||
name=Goblin Striker
|
||||
color=Red
|
||||
mana={1}{R}
|
||||
rarity=C
|
||||
type=Creature
|
||||
subtype=Goblin Berserker
|
||||
power=1
|
||||
toughness=1
|
||||
abilities=First strike, haste
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {W} to your mana pool.
|
||||
id=46024
|
||||
auto={T}:add {W}
|
||||
name=Gold Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text={3}, {T} or {R}, {T}: Granite Shard deals 1 damage to target creature or player.
|
||||
auto={3}{T}:Damage:1 target(creature,player)
|
||||
auto={R}{T}:Damage:1 target(creature,player)
|
||||
id=46051
|
||||
name=Granite Shard
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={3}, {T} or {G}, {T}:Target creature gains trample until end of turn.
|
||||
auto={3}{T}:trample target(creature)
|
||||
auto={G}{T}:trample target(creature)
|
||||
id=46059
|
||||
name=Heartwood Shard
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{R}: Hematite Golem gets +2/+0 until end of turn.
|
||||
id=48055
|
||||
auto={1}{R}:2/0
|
||||
name=Hematite Golem
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={4}
|
||||
type=Artifact Creature
|
||||
subtype=Golem
|
||||
power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
text={1}, {T}: Tap target artifact, creature, or land.
|
||||
id=46728
|
||||
auto={1}{T}:Tap target(artifact,creature,land)
|
||||
name=Icy Manipulator
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {R} to your mana pool.
|
||||
id=46048
|
||||
auto={T}:Add {R}
|
||||
name=Iron Myr
|
||||
color=Artifact
|
||||
mana={2}
|
||||
rarity=C
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text={U}
|
||||
id=48410
|
||||
auto={T}:Add {U}
|
||||
name=Island
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Island
|
||||
[/card]
|
||||
[card]
|
||||
text={U}
|
||||
id=48411
|
||||
auto={T}:Add {U}
|
||||
name=Island
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Island
|
||||
[/card]
|
||||
[card]
|
||||
text={U}
|
||||
id=48412
|
||||
auto={T}:Add {U}
|
||||
name=Island
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Island
|
||||
[/card]
|
||||
[card]
|
||||
text={U}
|
||||
id=48413
|
||||
auto={T}:Add {U}
|
||||
name=Island
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Island
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {B} to your mana pool.
|
||||
id=46040
|
||||
auto={T}:Add {B}
|
||||
name=Leaden Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text=Flying
|
||||
id=45960
|
||||
name=Leonin Skyhunter
|
||||
color=White
|
||||
rarity=U
|
||||
mana={W}{W}
|
||||
type=Creature
|
||||
subtype=Cat Knight
|
||||
power=2
|
||||
toughness=2
|
||||
abilities=Flying
|
||||
[/card]
|
||||
[card]
|
||||
text=
|
||||
id=48438
|
||||
name=Lumengrid Warden
|
||||
color=Blue
|
||||
rarity=C
|
||||
mana={1}{U}
|
||||
type=Creature
|
||||
subtype=Human Wizard
|
||||
power=1
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{G}: Malachite Golem gains trample until end of turn.
|
||||
id=48056
|
||||
auto={1}{G}:trample
|
||||
name=Malachite Golem
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={6}
|
||||
type=Artifact Creature
|
||||
subtype=Golem
|
||||
power=5
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
text=All creatures have haste.
|
||||
auto=lord(creature) haste
|
||||
id=48191
|
||||
name=Mass Hysteria
|
||||
color=Red
|
||||
rarity=R
|
||||
mana={R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
text={R}
|
||||
id=48417
|
||||
auto={T}:Add {R}
|
||||
name=Mountain
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Mountain
|
||||
[/card]
|
||||
[card]
|
||||
text={R}
|
||||
id=48418
|
||||
auto={T}:Add {R}
|
||||
name=Mountain
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Mountain
|
||||
[/card]
|
||||
[card]
|
||||
text={R}
|
||||
id=48419
|
||||
auto={T}:Add {R}
|
||||
name=Mountain
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Mountain
|
||||
[/card]
|
||||
[card]
|
||||
text={R}
|
||||
id=48420
|
||||
auto={T}:Add {R}
|
||||
name=Mountain
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Mountain
|
||||
[/card]
|
||||
[card]
|
||||
text=Neurok Spy is unblockable as long as defending player controls an artifact.
|
||||
id=45974
|
||||
name=Neurok Spy
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Human Rogue
|
||||
auto=aslongas(artifact|opponentinplay) unblockable
|
||||
power=2
|
||||
toughness=2
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
text=Nim Lasher gets +1/+0 for each artifact you control.
|
||||
id=12394
|
||||
name=Nim Lasher
|
||||
mana={2}{B}
|
||||
type=Creature
|
||||
subtype=Zombie
|
||||
auto=foreach(artifact|myinplay) 1/0
|
||||
power=1
|
||||
toughness=1
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
text={2}{B}, Sacrifice Nim Replica: Target creature gets -1/-1 until end of turn.
|
||||
id=46041
|
||||
auto={2}{B}{S}:-1/-1 target(creature)
|
||||
name=Nim Replica
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Zombie
|
||||
power=3
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text=Nim Shambler gets +1/+0 for each artifact you control. Sacrifice a creature: Regenerate Nim Shambler.
|
||||
id=48126
|
||||
name=Nim Shambler
|
||||
mana={2}{B}{B}
|
||||
type=Creature
|
||||
subtype=Zombie
|
||||
auto=foreach(artifact|myinplay) 1/0
|
||||
auto={s(creature|myinplay)}:regenerate
|
||||
power=2
|
||||
toughness=1
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
text=Flying. Nim Shrieker gets +1/+0 for each artifact you control.
|
||||
id=48584
|
||||
abilities=Flying
|
||||
name=Nim Shrieker
|
||||
auto=foreach(artifact|myinplay) 1/0
|
||||
mana={3}{B}
|
||||
type=Creature
|
||||
subtype=Zombie
|
||||
power=0
|
||||
toughness=1
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
text={2}, {T}: Put a 0/1 Pest artifact creature token into play.
|
||||
id=50104
|
||||
auto={2}{T}:token(Pest,artifact token creature pest, 0/1, artifact)
|
||||
name=Nuisance Engine
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
id=48605
|
||||
name=Omega Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text=Flying
|
||||
id=46016
|
||||
name=Ornithopter
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={0}
|
||||
type=Artifact Creature
|
||||
subtype=Thopter
|
||||
power=0
|
||||
toughness=2
|
||||
abilities=Flying
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{B}: Regenerate Pewter Golem.
|
||||
id=48054
|
||||
auto={1}{B}:regenerate
|
||||
name=Pewter Golem
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={5}
|
||||
type=Artifact Creature
|
||||
subtype=Golem
|
||||
power=4
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text={W}
|
||||
id=48406
|
||||
auto={T}:Add {W}
|
||||
name=Plains
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Plains
|
||||
[/card]
|
||||
[card]
|
||||
text={W}
|
||||
id=48407
|
||||
auto={T}:Add {W}
|
||||
name=Plains
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Plains
|
||||
[/card]
|
||||
[card]
|
||||
text={W}
|
||||
id=48408
|
||||
auto={T}:Add {W}
|
||||
name=Plains
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Plains
|
||||
[/card]
|
||||
[card]
|
||||
text={W}
|
||||
id=48409
|
||||
auto={T}:Add {W}
|
||||
name=Plains
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Plains
|
||||
[/card]
|
||||
[card]
|
||||
text=Target creature gets +3/+3 and gains trample until end of turn.
|
||||
id=48595
|
||||
target=creature
|
||||
auto=:trample
|
||||
auto=:3/3
|
||||
name=Predator's Strike
|
||||
color=Green
|
||||
rarity=C
|
||||
mana={1}{G}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text={R}, Sacrifice Pyrite Spellbomb: Pyrite Spellbomb deals 2 damage to target creature or player. {1}, Sacrifice Pyrite Spellbomb: Draw a card.
|
||||
auto={R}{S}:Damage:2 target(creature,player)
|
||||
auto={1}{S}:draw:1
|
||||
id=48110
|
||||
name=Pyrite Spellbomb
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={1}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text=Put two 1/1 white Soldier creature tokens into play.
|
||||
auto=token(Soldier,creature token soldier, 1/1,white)*2
|
||||
id=48103
|
||||
name=Raise the Alarm
|
||||
color=White
|
||||
rarity=C
|
||||
mana={1}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Return target permanent to its owner's hand.
|
||||
id=49061
|
||||
alias=1229
|
||||
target=*
|
||||
name=Regress
|
||||
color=Blue
|
||||
rarity=C
|
||||
mana={2}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Add {R}{R}{R}{R}{R} to your mana pool.
|
||||
id=34945
|
||||
auto=Add {R}{R}{R}{R}{R}
|
||||
name=Seething Song
|
||||
color=Red
|
||||
rarity=C
|
||||
mana={2}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Destroy target artifact.
|
||||
id=45999
|
||||
target=artifact
|
||||
auto=destroy
|
||||
name=Shatter
|
||||
color=Red
|
||||
rarity=C
|
||||
mana={1}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {U} to your mana pool.
|
||||
id=46032
|
||||
auto={T}:Add {U}
|
||||
name=Silver Myr
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={2}
|
||||
type=Artifact Creature
|
||||
subtype=Myr
|
||||
power=1
|
||||
toughness=1
|
||||
[/card]
|
||||
[card]
|
||||
text={3}, {T} or {B}, {T}: Return target artifact creature card from your graveyard to your hand.
|
||||
auto={3}{T}:moveTo(myhand) target(creature[artifact]|mygraveyard)
|
||||
auto={B}{T}:moveTo(myhand) target(creature[artifact]|mygraveyard)
|
||||
id=49774
|
||||
name=Skeleton Shard
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text=Flying, first strike
|
||||
id=48431
|
||||
name=Skyhunter Patrol
|
||||
color=White
|
||||
rarity=C
|
||||
mana={2}{W}{W}
|
||||
type=Creature
|
||||
subtype=Cat Knight
|
||||
power=2
|
||||
toughness=3
|
||||
abilities=Flying, first strike
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{W}, Sacrifice Soldier Replica: Soldier Replica deals 3 damage to target attacking or blocking creature.
|
||||
id=46025
|
||||
auto={1}{W}{S}:Damage:3 target(creature[attacking;blocking])
|
||||
name=Soldier Replica
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Soldier
|
||||
power=1
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
text={W}, Sacrifice Sunbeam Spellbomb: You gain 5 life. {1}, Sacrifice Sunbeam Spellbomb: Draw a card.
|
||||
auto={W}{S}:life:5
|
||||
auto={1}{S}:draw:1
|
||||
id=48214
|
||||
name=Sunbeam Spellbomb
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={1}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={B}
|
||||
id=48414
|
||||
auto={T}:Add {B}
|
||||
name=Swamp
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Swamp
|
||||
[/card]
|
||||
[card]
|
||||
text={B}
|
||||
id=48415
|
||||
auto={T}:Add {B}
|
||||
name=Swamp
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Swamp
|
||||
[/card]
|
||||
[card]
|
||||
text={B}
|
||||
id=48416
|
||||
auto={T}:Add {B}
|
||||
name=Swamp
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Swamp
|
||||
[/card]
|
||||
[card]
|
||||
text={B}
|
||||
id=48425
|
||||
auto={T}:Add {B}
|
||||
name=Swamp
|
||||
type=Basic Land
|
||||
rarity=L
|
||||
subtype=Swamp
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {T}: Add {U} or {B} to your mana pool. Talisman of Dominance deals 1 damage to you.
|
||||
id=39598
|
||||
name=Talisman of Dominance
|
||||
auto={T}:Add {1}
|
||||
auto={T}:Add {U} && Damage 1 controller
|
||||
auto={T}:Add {B} && Damage 1 controller
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {T}: Add {R} or {G} to your mana pool. Talisman of Impulse deals 1 damage to you.
|
||||
id=39600
|
||||
name=Talisman of Impulse
|
||||
auto={T}:Add {1}
|
||||
auto={T}:Add {R} && Damage 1 controller
|
||||
auto={T}:Add {G} && Damage 1 controller
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {T}: Add {B} or {R} to your mana pool. Talisman of Indulgence deals 1 damage to you.
|
||||
id=39599
|
||||
name=Talisman of Indulgence
|
||||
auto={T}:Add {1}
|
||||
auto={T}:Add {B} && Damage 1 controller
|
||||
auto={T}:Add {R} && Damage 1 controller
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {T}: Add {W} or {U} to your mana pool. Talisman of Progress deals 1 damage to you.
|
||||
id=39597
|
||||
name=Talisman of Progress
|
||||
auto={T}:Add {1}
|
||||
auto={T}:Add {W} && Damage 1 controller
|
||||
auto={T}:Add {U} && Damage 1 controller
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={T}: Add {1} to your mana pool. {T}: Add {G} or {W} to your mana pool. Talisman of Unity deals 1 damage to you.
|
||||
id=39601
|
||||
name=Talisman of Unity
|
||||
auto={T}:Add {1}
|
||||
auto={T}:Add {G} && Damage 1 controller
|
||||
auto={T}:Add {W} && Damage 1 controller
|
||||
color=Artifact
|
||||
rarity=U
|
||||
mana={2}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={1}, {T}: You gain 1 life.
|
||||
id=48913
|
||||
name=Tanglebloom
|
||||
auto={1}{T}:life:1
|
||||
mana={1}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{G}: Regenerate Tel-Jilad Exile.
|
||||
id=49436
|
||||
name=Tel-Jilad Exile
|
||||
color=Green
|
||||
mana={3}{G}
|
||||
rarity=C
|
||||
type=Creature
|
||||
subtype=Troll Warrior
|
||||
power=2
|
||||
toughness=3
|
||||
auto={1}{G}:regenerate
|
||||
[/card]
|
||||
[card]
|
||||
text=Destroy all enchantments.
|
||||
id=46075
|
||||
auto=Destroy all(enchantment)
|
||||
name=Tempest of Light
|
||||
color=White
|
||||
rarity=U
|
||||
mana={2}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text=Destroy target nonartifact, nonblack creature. It can't be regenerated.
|
||||
id=45988
|
||||
target=creature[-artifact;-black]
|
||||
auto=bury
|
||||
name=Terror
|
||||
color=Black
|
||||
rarity=C
|
||||
mana={1}{B}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
text={1}{W}: Titanium Golem gains first strike until end of turn.
|
||||
id=48052
|
||||
auto={1}{W}:first strike
|
||||
name=Titanium Golem
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={5}
|
||||
type=Artifact Creature
|
||||
subtype=Golem
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
text={8}, {T}: Target creature gets +6/+6 until end of turn.
|
||||
id=48155
|
||||
auto={8}{T}:6/6 target(creature)
|
||||
name=Tower of Champions
|
||||
color=Artifact
|
||||
rarity=R
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={8}, {T}: You gain 10 life.
|
||||
id=48914
|
||||
auto={8}{T}:life:10
|
||||
name=Tower of Eons
|
||||
color=Artifact
|
||||
rarity=R
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text={8}, {T}: Draw four cards.
|
||||
id=35464
|
||||
name=Tower of Fortunes
|
||||
auto={8}{T}:Draw:4
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
text=Haste
|
||||
id=5585
|
||||
abilities=haste
|
||||
name=Vulshok Berserker
|
||||
color=Red
|
||||
rarity=C
|
||||
mana={3}{R}
|
||||
type=Creature
|
||||
subtype=Human Berserker
|
||||
power=3
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
text=Vigilance
|
||||
id=46026
|
||||
name=Yotian Soldier
|
||||
color=Artifact
|
||||
rarity=C
|
||||
mana={3}
|
||||
type=Artifact Creature
|
||||
subtype=Soldier
|
||||
power=1
|
||||
toughness=4
|
||||
abilities=Vigilance
|
||||
[/card]
|
||||
2835
projects/mtg/bin/Res/sets/MRD/todo.dat
Normal file
2835
projects/mtg/bin/Res/sets/MRD/todo.dat
Normal file
File diff suppressed because it is too large
Load Diff
1174
projects/mtg/bin/Res/sets/MRQ/_cards.dat
Normal file
1174
projects/mtg/bin/Res/sets/MRQ/_cards.dat
Normal file
File diff suppressed because it is too large
Load Diff
3277
projects/mtg/bin/Res/sets/MRQ/todo.dat
Normal file
3277
projects/mtg/bin/Res/sets/MRQ/todo.dat
Normal file
File diff suppressed because it is too large
Load Diff
1170
projects/mtg/bin/Res/sets/ODY/_cards.dat
Normal file
1170
projects/mtg/bin/Res/sets/ODY/_cards.dat
Normal file
File diff suppressed because it is too large
Load Diff
3245
projects/mtg/bin/Res/sets/ODY/todo.dat
Normal file
3245
projects/mtg/bin/Res/sets/ODY/todo.dat
Normal file
File diff suppressed because it is too large
Load Diff
18
projects/mtg/bin/Res/test/momir/keldon_warlord.txt
Normal file
18
projects/mtg/bin/Res/test/momir/keldon_warlord.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
#Testing That Keldon Warlord's power and toughness change as expected
|
||||
MOMIR
|
||||
[INIT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
inplay:grizzly bears,llanowar elves
|
||||
hand:plains
|
||||
manapool:{4}
|
||||
[PLAYER2]
|
||||
[DO]
|
||||
plains -momir- keldon warlord
|
||||
[ASSERT]
|
||||
FIRSTMAIN
|
||||
[PLAYER1]
|
||||
graveyard:plains
|
||||
inplay:grizzly bears,llanowar elves,keldon warlord
|
||||
[PLAYER2]
|
||||
[END]
|
||||
@@ -14,10 +14,17 @@
|
||||
class GameObserver;
|
||||
class Player;
|
||||
|
||||
class GuiLayer: public JGuiController{
|
||||
class GuiLayer{
|
||||
protected:
|
||||
GameObserver * game;
|
||||
int mId;
|
||||
u32 mActionButton;
|
||||
public:
|
||||
int mCount;
|
||||
int mCurr;
|
||||
vector<JGuiObject *>mObjects;
|
||||
void Add(JGuiObject * object);
|
||||
void Remove(JGuiObject * object);
|
||||
int modal;
|
||||
bool hasFocus;
|
||||
virtual void resetObjects();
|
||||
@@ -31,7 +38,7 @@ class GuiLayer: public JGuiController{
|
||||
virtual int unstopableRenderInProgress(){return 0;};
|
||||
int getIndexOf(JGuiObject * object);
|
||||
JGuiObject * getByIndex (int index);
|
||||
virtual void Render(){JGuiController::Render();};
|
||||
virtual void Render();
|
||||
int empty(){
|
||||
if (mCount) return 0;
|
||||
return 1;
|
||||
|
||||
@@ -125,7 +125,10 @@ class MTGLegendRule:public ListMaintainerAbility{
|
||||
class MTGMomirRule:public MTGAbility{
|
||||
private:
|
||||
int genRandomCreatureId(int convertedCost);
|
||||
static vector<int> pool[20];
|
||||
static int initialized;
|
||||
public:
|
||||
|
||||
int alreadyplayed;
|
||||
MTGAllCards * collection;
|
||||
MTGCardInstance * genCreature(int id);
|
||||
|
||||
@@ -253,7 +253,8 @@ int AIPlayer::interruptIfICan(){
|
||||
GameObserver * g = GameObserver::GetInstance();
|
||||
|
||||
if (g->mLayers->stackLayer()->askIfWishesToInterrupt == this){
|
||||
g->mLayers->stackLayer()->setIsInterrupting(this);
|
||||
if (!clickstream.empty()) g->mLayers->stackLayer()->cancelInterruptOffer();
|
||||
else g->mLayers->stackLayer()->setIsInterrupting(this);
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
|
||||
@@ -445,6 +445,33 @@ void ActionStack::unpackDamageStacks(){
|
||||
}
|
||||
|
||||
void ActionStack::repackDamageStacks(){
|
||||
std::vector<JGuiObject *>::iterator iter = mObjects.begin() ;
|
||||
|
||||
while( iter != mObjects.end() ){
|
||||
Interruptible * action = ((Interruptible *) *iter);
|
||||
int found = 0;
|
||||
if (action->type == ACTION_DAMAGE){
|
||||
Damage * damage = (Damage *) action;
|
||||
for (int j = 0; j < mCount; j++){
|
||||
Interruptible * action2 = ((Interruptible *)mObjects[j]);
|
||||
if (action2->type == ACTION_DAMAGES){
|
||||
DamageStack * ds = (DamageStack *) action2;
|
||||
for (int k = 0; k< ds->mCount; k++){
|
||||
Damage * dsdamage = ((Damage *)ds->mObjects[k]);
|
||||
if (dsdamage==damage){
|
||||
//Remove(damage);
|
||||
iter = mObjects.erase( iter ) ;
|
||||
found = 1;
|
||||
mCount--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!found) ++iter;
|
||||
}
|
||||
|
||||
/*
|
||||
for (int i = mCount-1; i >=0; i--){
|
||||
Interruptible * action = ((Interruptible *)mObjects[i]);
|
||||
if (action->type == ACTION_DAMAGE){
|
||||
@@ -465,6 +492,7 @@ void ActionStack::repackDamageStacks(){
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
void ActionStack::Update(float dt){
|
||||
@@ -657,14 +685,18 @@ int ActionStack::CombatDamages(int strike){
|
||||
|
||||
//Cleans history of last turn
|
||||
int ActionStack::garbageCollect(){
|
||||
for (int i=mCount-1;i>=0; i--){
|
||||
Interruptible * current = ((Interruptible *)mObjects[i]);
|
||||
if (current->state != NOT_RESOLVED){
|
||||
mObjects[i] = mObjects[mCount-1];
|
||||
mCount--;
|
||||
SAFE_DELETE(current);
|
||||
}
|
||||
}
|
||||
std::vector<JGuiObject *>::iterator iter = mObjects.begin() ;
|
||||
|
||||
while( iter != mObjects.end() ){
|
||||
Interruptible * current = ((Interruptible *) *iter);
|
||||
if (current->state != NOT_RESOLVED){
|
||||
iter = mObjects.erase( iter ) ;
|
||||
mCount--;
|
||||
SAFE_DELETE(current);
|
||||
}else {
|
||||
++iter ;
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -2,20 +2,48 @@
|
||||
#include "../include/GuiLayers.h"
|
||||
#include "../include/Player.h"
|
||||
|
||||
GuiLayer::GuiLayer(int id, GameObserver* _game):JGuiController(id, NULL){
|
||||
GuiLayer::GuiLayer(int id, GameObserver* _game){
|
||||
mId = id;
|
||||
game = _game;
|
||||
modal = 0;
|
||||
hasFocus = false;
|
||||
mCount = 0;
|
||||
mCurr = 0;
|
||||
mActionButton = PSP_CTRL_CIRCLE;
|
||||
}
|
||||
|
||||
GuiLayer::~GuiLayer(){
|
||||
//TODO
|
||||
resetObjects();
|
||||
}
|
||||
|
||||
void GuiLayer::Add(JGuiObject *object){
|
||||
mObjects.push_back(object);
|
||||
mCount++;
|
||||
}
|
||||
|
||||
void GuiLayer::Remove(JGuiObject *object){
|
||||
for (int i=0;i<mCount;i++){
|
||||
if (mObjects[i]==object){
|
||||
delete mObjects[i];
|
||||
mObjects.erase(mObjects.begin()+i);
|
||||
mCount--;
|
||||
if (mCurr == mCount)
|
||||
mCurr = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int GuiLayer::getMaxId(){
|
||||
return mCount;
|
||||
}
|
||||
|
||||
void GuiLayer::Render(){
|
||||
for (int i=0;i<mCount;i++)
|
||||
if (mObjects[i]!=NULL)
|
||||
mObjects[i]->Render();
|
||||
}
|
||||
|
||||
void GuiLayer::Update(float dt){
|
||||
for (int i=0;i<mCount;i++)
|
||||
if (mObjects[i]!=NULL)
|
||||
@@ -27,7 +55,7 @@ void GuiLayer::resetObjects(){
|
||||
for (int i=0;i<mCount;i++)
|
||||
if (mObjects[i])
|
||||
delete mObjects[i];
|
||||
|
||||
mObjects.clear();
|
||||
mCount = 0;
|
||||
mCurr = 0;
|
||||
}
|
||||
|
||||
@@ -154,8 +154,23 @@ int MTGBlockRule::testDestroy(){
|
||||
// * Momir
|
||||
//
|
||||
|
||||
int MTGMomirRule::initialized = 0;
|
||||
vector<int> MTGMomirRule::pool[20];
|
||||
|
||||
MTGMomirRule::MTGMomirRule(int _id, MTGAllCards * _collection):MTGAbility(_id, NULL){
|
||||
collection = _collection;
|
||||
if (!initialized){
|
||||
int total_cards = collection->totalCards();
|
||||
for (int i = 0; i < total_cards; i++){
|
||||
MTGCard * card = collection->collection[i];
|
||||
if (card->isACreature()){
|
||||
int convertedCost = card->getManaCost()->getConvertedCost();
|
||||
if (convertedCost>20) continue;
|
||||
pool[convertedCost].push_back(card->getMTGId());
|
||||
}
|
||||
}
|
||||
initialized =1;
|
||||
}
|
||||
alreadyplayed = 0;
|
||||
aType=MTGAbility::MOMIR;
|
||||
}
|
||||
@@ -207,20 +222,11 @@ MTGCardInstance * MTGMomirRule::genCreature( int id){
|
||||
}
|
||||
|
||||
int MTGMomirRule::genRandomCreatureId(int convertedCost){
|
||||
Player * p = game->currentlyActing();
|
||||
int total_cards = collection->totalCards();
|
||||
if (convertedCost > 20) return 0;
|
||||
int total_cards = pool[convertedCost].size();
|
||||
if (!total_cards) return 0;
|
||||
int start = (rand() % total_cards);
|
||||
int id2 = start;
|
||||
while (id2 < total_cards){
|
||||
MTGCard * card = collection->collection[id2];
|
||||
if (card->isACreature() && card->getManaCost()->getConvertedCost() == convertedCost){
|
||||
return card->getMTGId();
|
||||
}
|
||||
id2++;
|
||||
if (id2 == start) return 0;
|
||||
if (id2 == total_cards) id2 = 0;
|
||||
}
|
||||
return 0;
|
||||
return pool[convertedCost][start];
|
||||
}
|
||||
|
||||
//The Momir rule is never destroyed
|
||||
|
||||
@@ -19,12 +19,12 @@ import os
|
||||
import os.path
|
||||
from mtgCommon import *
|
||||
|
||||
setinfo=sets['IN']
|
||||
setinfo=sets['OD']
|
||||
stripReminderText = False
|
||||
conffile = open(setinfo['dir'] + ".conf", 'w')
|
||||
|
||||
FETCH_IMAGES = False
|
||||
# FETCH_IMAGES = True
|
||||
#FETCH_IMAGES = False
|
||||
FETCH_IMAGES = True
|
||||
|
||||
url = "http://ww2.wizards.com/gatherer/Index.aspx?setfilter=%s\\&output=Spoiler" % setinfo['gathname']
|
||||
gatherer = urllib.urlopen(url)
|
||||
|
||||
@@ -250,6 +250,7 @@ sets ={'BE':{'name':'Beta',
|
||||
'MM':{'name':'Mercadian Masques',
|
||||
'dir':'MM',
|
||||
'abbrev':'MM',
|
||||
'gathdirs':['MM/en-us'],
|
||||
'gathabbrev': 'MM',
|
||||
'gathname':'MercadianMasques',
|
||||
},
|
||||
@@ -286,6 +287,7 @@ sets ={'BE':{'name':'Beta',
|
||||
},
|
||||
'OD':{'name':'Odyssey',
|
||||
'dir':'OD',
|
||||
'gathdirs':['OD/en-us'],
|
||||
'abbrev':'OD',
|
||||
'gathabbrev': 'OD',
|
||||
'gathname':'Odyssey',
|
||||
|
||||
Reference in New Issue
Block a user