3 new cards. Updated readme.
parent
8a1c326e7a
commit
c529e24e54
|
@ -5,6 +5,7 @@ There must be a Java Runtime 6 (java.com) installed on your computer to play.
|
|||
Installing on Windows is quite simple, just put Magarena.exe on your desktop and execute.
|
||||
To obtain the Java jar, Magarena.exe can simply be renamed to Magarena.jar because it is also an archive.
|
||||
To execute the Java jar, use java -Xmx256m -jar Magarena.jar.
|
||||
If a Magarena folder is present where the program is executed, that folder is used as data folder.
|
||||
|
||||
Do not forget to execute "Download images" in the Arena menu the first time you run a new release.
|
||||
Otherwise you will see a lot of question marks. The application stops automatically when downloading is finished.
|
||||
|
@ -28,13 +29,22 @@ Recommended difficulty level for the best balance of AI speed and strength is th
|
|||
|
||||
Have fun!
|
||||
|
||||
Release 1.10 (April 1, 2011)
|
||||
============
|
||||
|
||||
- ubeefx cube (544 cards)
|
||||
- singularity cube (865 cards)
|
||||
|
||||
- redesigned card image loading (low quality images are no longer needed)
|
||||
- high quality random card at startup if enabled in settings
|
||||
|
||||
Release 1.9 (March 22, 2011)
|
||||
===========
|
||||
|
||||
- ubeefx cube (542 cards)
|
||||
- singularita cube (862 cards)
|
||||
|
||||
- when a folder Magarena is present in the same folder as where Magarena is started, that is used as the Magarena data folder
|
||||
- if a folder Magarena is present in the same folder as where Magarena is started, that is used as the Magarena data folder
|
||||
- added extra settings to themes (see customizing Wiki page)
|
||||
- added support for infect keyword and poison counters
|
||||
|
||||
|
|
|
@ -6117,3 +6117,28 @@ power=2
|
|||
toughness=2
|
||||
ability=protection from black,protection from green
|
||||
timing=equipment
|
||||
|
||||
>Suture Priest
|
||||
value=2
|
||||
rarity=2
|
||||
type=Creature
|
||||
subtype=Cleric
|
||||
color=w
|
||||
converted=2
|
||||
cost={1}{W}
|
||||
power=1
|
||||
toughness=1
|
||||
timing=fmain
|
||||
|
||||
>Elesh Norn, Grand Cenobite
|
||||
value=5
|
||||
rarity=3
|
||||
type=Legendary,Creature
|
||||
subtype=Praetor
|
||||
color=w
|
||||
converted=7
|
||||
cost={5}{W}{W}
|
||||
power=4
|
||||
toughness=7
|
||||
ability=vigilance
|
||||
timing=fmain
|
||||
|
|
|
@ -4102,3 +4102,15 @@ cost={2}{G}
|
|||
power=2
|
||||
toughness=3
|
||||
timing=main
|
||||
|
||||
>Phyrexian Digester
|
||||
value=2
|
||||
ability=infect
|
||||
rarity=1
|
||||
type=Artifact,Creature
|
||||
subtype=Construct
|
||||
converted=3
|
||||
cost={3}
|
||||
power=2
|
||||
toughness=1
|
||||
timing=main
|
||||
|
|
|
@ -950,4 +950,7 @@ Blightwidow.jpg;http://magiccards.info/scans/en/mbs/77.jpg
|
|||
Contagious Nim.jpg;http://magiccards.info/scans/en/som/58.jpg
|
||||
Cystbearer.jpg;http://magiccards.info/scans/en/som/117.jpg
|
||||
Go for the Throat.jpg;http://magiccards.info/scans/en/mbs/43.jpg
|
||||
Sword of Feast and Famine.jpg;http://magiccards.info/scans/en/mbs/138.jpg
|
||||
Sword of Feast and Famine.jpg;http://magiccards.info/scans/en/mbs/138.jpg
|
||||
Phyrexian Digester.jpg;http://magiccards.info/scans/en/mbs/120.jpg
|
||||
Suture Priest.jpg;http://forums.mtgsalvation.com/attachment.php?attachmentid=115363&d=1297746104
|
||||
Elesh Norn, Grand Cenobite.jpg;http://forums.mtgsalvation.com/attachment.php?attachmentid=116363&stc=1&d=1301374681
|
|
@ -859,4 +859,7 @@ Blightwidow
|
|||
Contagious Nim
|
||||
Cystbearer
|
||||
Go for the Throat
|
||||
Sword of Feast and Famine
|
||||
Sword of Feast and Famine
|
||||
Phyrexian Digester
|
||||
Suture Priest
|
||||
Elesh Norn, Grand Cenobite
|
|
@ -539,4 +539,6 @@ Plague Stinger
|
|||
Skithiryx, the Blight Dragon
|
||||
Phyrexian Juggernaut
|
||||
Go for the Throat
|
||||
Sword of Feast and Famine
|
||||
Sword of Feast and Famine
|
||||
Suture Priest
|
||||
Elesh Norn, Grand Cenobite
|
|
@ -2134,6 +2134,29 @@ public class TriggerDefinitions {
|
|||
}
|
||||
};
|
||||
|
||||
private static final MagicTrigger SUTURE_PRIEST=new MagicTrigger(MagicTriggerType.WhenOtherComesIntoPlay,"Suture Priest") {
|
||||
|
||||
@Override
|
||||
public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final Object data) {
|
||||
|
||||
final MagicPermanent otherPermanent=(MagicPermanent)data;
|
||||
if (otherPermanent!=permanent&&otherPermanent.isCreature()) {
|
||||
final MagicPlayer player=permanent.getController();
|
||||
final MagicPlayer controller=otherPermanent.getController();
|
||||
final boolean same=controller==player;
|
||||
return new MagicEvent(permanent,player,new Object[]{controller,same?1:-1},this,
|
||||
controller.getName()+(same?" gains 1 life.":" loses 1 life."));
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void executeEvent(final MagicGame game,final MagicEvent event,final Object data[],final Object[] choiceResults) {
|
||||
|
||||
game.doAction(new MagicChangeLifeAction((MagicPlayer)data[0],(Integer)data[1]));
|
||||
}
|
||||
};
|
||||
|
||||
private static final MagicTrigger RUMBLING_SLUM=new MagicTrigger(MagicTriggerType.AtUpkeep,"Rumbling Slum") {
|
||||
|
||||
@Override
|
||||
|
@ -3849,6 +3872,7 @@ public class TriggerDefinitions {
|
|||
SUNBLAST_ANGEL,
|
||||
STUFFY_DOLL,
|
||||
SURVEILLING_SPRITE,
|
||||
SUTURE_PRIEST,
|
||||
SZADEK_LORD_OF_SECRETS,
|
||||
TAUREAN_MAULER,
|
||||
TENEB_THE_HARVESTER,
|
||||
|
|
|
@ -27,6 +27,7 @@ public class MagicStaticLocalVariable implements MagicLocalVariable {
|
|||
private static int cumberStone;
|
||||
private static int deathbringerLiege;
|
||||
private static int eldraziMonument;
|
||||
private static int eleshNorn;
|
||||
private static int firesOfYavimaya;
|
||||
private static int glenElendraLiege;
|
||||
private static int gloriousAnthem;
|
||||
|
@ -61,6 +62,7 @@ public class MagicStaticLocalVariable implements MagicLocalVariable {
|
|||
public void getPowerToughness(final MagicGame game,final MagicPermanent permanent,final MagicPowerToughness pt) {
|
||||
|
||||
final MagicPlayer controller=permanent.getController();
|
||||
final MagicPlayer opponent=game.getOpponent(controller);
|
||||
|
||||
// Power and toughness change.
|
||||
if (getOtherCount(godheadOfAwe,permanent,game.getCount(godheadOfAwe))>0) {
|
||||
|
@ -82,7 +84,7 @@ public class MagicStaticLocalVariable implements MagicLocalVariable {
|
|||
pt.toughness+=count*2;
|
||||
}
|
||||
}
|
||||
pt.power-=game.getOpponent(controller).getCount(cumberStone);
|
||||
pt.power-=opponent.getCount(cumberStone);
|
||||
|
||||
// Power and toughness increase.
|
||||
int both=permanent.getCounters(MagicCounterType.PlusOne)-permanent.getCounters(MagicCounterType.MinusOne);
|
||||
|
@ -97,6 +99,9 @@ public class MagicStaticLocalVariable implements MagicLocalVariable {
|
|||
if (count>0&&permanent.hasSubType(MagicSubType.Goblin)) {
|
||||
both+=getOtherCount(goblinChieftain,permanent,count);
|
||||
}
|
||||
count=controller.getCount(eleshNorn);
|
||||
both+=getOtherCount(eleshNorn,permanent,count)*2;
|
||||
both-=opponent.getCount(eleshNorn)*2;
|
||||
|
||||
final int colorFlags=permanent.getColorFlags();
|
||||
if (MagicColor.Black.hasColor(colorFlags)) {
|
||||
|
@ -215,6 +220,7 @@ public class MagicStaticLocalVariable implements MagicLocalVariable {
|
|||
cumberStone=definitions.getCard("Cumber Stone").getIndex();
|
||||
deathbringerLiege=definitions.getCard("Deathbringer Liege").getIndex();
|
||||
eldraziMonument=definitions.getCard("Eldrazi Monument").getIndex();
|
||||
eleshNorn=definitions.getCard("Elesh Norn, Grand Cenobite").getIndex();
|
||||
firesOfYavimaya=definitions.getCard("Fires of Yavimaya").getIndex();
|
||||
glenElendraLiege=definitions.getCard("Glen Elendra Liege").getIndex();
|
||||
gloriousAnthem=definitions.getCard("Glorious Anthem").getIndex();
|
||||
|
|
|
@ -117,20 +117,19 @@ public class TestGameBuilder {
|
|||
addToLibrary(opponent,"Island",10);
|
||||
addToGraveyard(player,"Mogg Fanatic",2);
|
||||
addToGraveyard(opponent,"Island",2);
|
||||
addToHand(player,"Flensermite",1);
|
||||
addToHand(player,"Blightwidow",1);
|
||||
addToHand(player,"Contagious Nim",1);
|
||||
addToHand(player,"Cystbearer",1);
|
||||
addToHand(opponent,"Zephyr Sprite",3);
|
||||
addToHand(player,"Go for the Throat",1);
|
||||
addToHand(player,"Sword of Feast and Famine",1);
|
||||
addToHand(opponent,"Island",3);
|
||||
addToHand(player,"Cumber Stone",1);
|
||||
addToHand(player,"Phyrexian Digester",1);
|
||||
addToHand(player,"Suture Priest",1);
|
||||
addToHand(player,"Elesh Norn, Grand Cenobite",1);
|
||||
|
||||
createPermanent(game,player,"Watchwolf",false,1);
|
||||
createPermanent(game,player,"Bonesplitter",false,1);
|
||||
createPermanent(game,player,"Rupture Spire",false,6);
|
||||
createPermanent(game,player,"Rupture Spire",false,7);
|
||||
createPermanent(game,opponent,"Bloodrock Cyclops",false,1);
|
||||
createPermanent(game,opponent,"Memnite",false,1);
|
||||
|
||||
createPermanent(game,opponent,"Suture Priest",false,1);
|
||||
|
||||
return game;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue