3 new cards. Updated readme.

master
ubeefx 2011-04-01 21:38:45 +00:00
parent 8a1c326e7a
commit c529e24e54
9 changed files with 98 additions and 14 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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,

View File

@ -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();

View File

@ -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;
}
}