diff --git a/Mage.Client/pom.xml b/Mage.Client/pom.xml
index fcb232ef040..f2de6ebcf85 100644
--- a/Mage.Client/pom.xml
+++ b/Mage.Client/pom.xml
@@ -1,201 +1,201 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- org.mage
- mage-client
- jar
- Mage Client
-
-
-
- org.mage
- mage
- ${project.version}
-
-
- org.mage
- mage-common
- ${project.version}
-
-
- org.mage
- mage-deck-constructed
- ${project.version}
-
-
- com.googlecode.jspf
- jspf-core
- 0.9.1
-
-
- log4j
- log4j
-
-
- org.slf4j
- slf4j-log4j12
-
-
- net.sf.trove4j
- trove4j
- 3.0.3
-
-
- com.mortennobel
- java-image-scaling
- 0.8.5
-
-
- com.google.collections
- google-collections
- 1.0
-
-
- org.swinglabs
- swingx
- 1.6.1
-
-
- org.jetlang
- jetlang
- 0.2.9
-
-
- com.jgoodies
- forms
- 1.2.1
-
-
- com.intellij
- forms_rt
- 7.0.3
-
-
- junit
- junit
- jar
- test
-
-
- ${project.groupId}
- mage-counter-plugin
- 0.1
- runtime
-
-
- org.jdesktop
- beansbinding
- 1.2.1
-
-
- org.swinglabs
- swing-layout
- 1.0.3
-
-
- org.jsoup
- jsoup
- 1.5.2
-
-
- truevfs-profile-base
- net.java.truevfs
- jar
- 0.10.8
-
-
- truevfs-access-swing
- net.java.truevfs
-
-
- truecommons-key-swing
- net.java.truecommons
-
-
-
-
- com.googlecode.soundlibs
- mp3spi
- 1.9.5-1
-
-
- javazoom
- jlayer
- 1.0.1
-
-
- org.mobicents.external.tritonus
- tritonus_share
- 0.3.6
-
-
- net.java.balloontip
- balloontip
- 1.2.4.1
-
-
-
-
-
-
- local-project-repo
- file://${project.basedir}/../repository
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
- org.apache.maven.plugins
- maven-install-plugin
- 2.5.2
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
- maven-jar-plugin
-
-
- ${manifest.file}
-
- true
- mage.client.MageFrame
-
-
-
-
-
- maven-assembly-plugin
-
- false
-
- src/main/assembly/distribution.xml
-
-
-
-
-
- mage-client
-
-
-
- src/main/resources/META-INF/MANIFEST.MF
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ org.mage
+ mage-client
+ jar
+ Mage Client
+
+
+
+ org.mage
+ mage
+ ${project.version}
+
+
+ org.mage
+ mage-common
+ ${project.version}
+
+
+ org.mage
+ mage-deck-constructed
+ ${project.version}
+
+
+ com.googlecode.jspf
+ jspf-core
+ 0.9.1
+
+
+ log4j
+ log4j
+
+
+ org.slf4j
+ slf4j-log4j12
+
+
+ net.sf.trove4j
+ trove4j
+ 3.0.3
+
+
+ com.mortennobel
+ java-image-scaling
+ 0.8.5
+
+
+ com.google.collections
+ google-collections
+ 1.0
+
+
+ org.swinglabs
+ swingx
+ 1.6.1
+
+
+ org.jetlang
+ jetlang
+ 0.2.9
+
+
+ com.jgoodies
+ forms
+ 1.2.1
+
+
+ com.intellij
+ forms_rt
+ 7.0.3
+
+
+ junit
+ junit
+ jar
+ test
+
+
+ ${project.groupId}
+ mage-counter-plugin
+ 0.1
+ runtime
+
+
+ org.jdesktop
+ beansbinding
+ 1.2.1
+
+
+ org.swinglabs
+ swing-layout
+ 1.0.3
+
+
+ org.jsoup
+ jsoup
+ 1.5.2
+
+
+ truevfs-profile-base
+ net.java.truevfs
+ jar
+ 0.10.8
+
+
+ truevfs-access-swing
+ net.java.truevfs
+
+
+ truecommons-key-swing
+ net.java.truecommons
+
+
+
+
+ com.googlecode.soundlibs
+ mp3spi
+ 1.9.5-1
+
+
+ javazoom
+ jlayer
+ 1.0.1
+
+
+ org.mobicents.external.tritonus
+ tritonus_share
+ 0.3.6
+
+
+ net.java.balloontip
+ balloontip
+ 1.2.4.1
+
+
+
+
+
+
+ local-project-repo
+ file://${project.basedir}/../repository
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ org.apache.maven.plugins
+ maven-install-plugin
+ 2.5.2
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+ maven-jar-plugin
+
+
+ ${manifest.file}
+
+ true
+ mage.client.MageFrame
+
+
+
+
+
+ maven-assembly-plugin
+
+ false
+
+ src/main/assembly/distribution.xml
+
+
+
+
+
+ mage-client
+
+
+
+ src/main/resources/META-INF/MANIFEST.MF
+
+
+
diff --git a/Mage.Common/pom.xml b/Mage.Common/pom.xml
index dbcc72aa721..ad208f35978 100644
--- a/Mage.Common/pom.xml
+++ b/Mage.Common/pom.xml
@@ -1,85 +1,85 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-common
- jar
- Mage Common Classes
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- com.googlecode.jspf
- jspf-core
- 0.9.1
-
-
- org.jboss.remoting
- jboss-remoting
- 2.5.4.SP5
-
-
- org.jboss
- jboss-common-core
- 2.2.22.GA
-
-
- jboss
- jboss-serialization
- 1.0.3.GA
-
-
- concurrent
- concurrent
- 1.3.4
-
-
- trove
- trove
- 1.0.2
-
-
-
-
-
-
- local-project-repo
- file://${project.basedir}/../repository
-
-
-
-
- src/main/java
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.8
- 1.8
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-common
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-common
+ jar
+ Mage Common Classes
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ com.googlecode.jspf
+ jspf-core
+ 0.9.1
+
+
+ org.jboss.remoting
+ jboss-remoting
+ 2.5.4.SP5
+
+
+ org.jboss
+ jboss-common-core
+ 2.2.22.GA
+
+
+ jboss
+ jboss-serialization
+ 1.0.3.GA
+
+
+ concurrent
+ concurrent
+ 1.3.4
+
+
+ trove
+ trove
+ 1.0.2
+
+
+
+
+
+
+ local-project-repo
+ file://${project.basedir}/../repository
+
+
+
+
+ src/main/java
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.8
+ 1.8
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-common
+
+
diff --git a/Mage.Common/src/main/java/mage/utils/MageVersion.java b/Mage.Common/src/main/java/mage/utils/MageVersion.java
index ff7f03709b0..394300a1be1 100644
--- a/Mage.Common/src/main/java/mage/utils/MageVersion.java
+++ b/Mage.Common/src/main/java/mage/utils/MageVersion.java
@@ -40,8 +40,8 @@ public class MageVersion implements Serializable, Comparable {
*/
public final static int MAGE_VERSION_MAJOR = 1;
public final static int MAGE_VERSION_MINOR = 4;
- public final static int MAGE_VERSION_PATCH = 23;
- public final static String MAGE_VERSION_MINOR_PATCH = "V6";
+ public final static int MAGE_VERSION_PATCH = 24;
+ public final static String MAGE_VERSION_MINOR_PATCH = "V0";
public final static String MAGE_VERSION_INFO = "";
private final int major;
diff --git a/Mage.Plugins/Mage.Counter.Plugin/pom.xml b/Mage.Plugins/Mage.Counter.Plugin/pom.xml
index ee30c83624d..d285273f7f6 100644
--- a/Mage.Plugins/Mage.Counter.Plugin/pom.xml
+++ b/Mage.Plugins/Mage.Counter.Plugin/pom.xml
@@ -1,46 +1,46 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-plugins
- 1.4.23
-
-
- mage-counter-plugin
- jar
- Mage Counter Plugin
- Implements game counter to display amount of games played
- 0.1
-
-
-
- ${project.groupId}
- mage-common
- ${mage-version}
-
-
- log4j
- log4j
- provided
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
-
- mage-counter-plugin
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-plugins
+ 1.4.24
+
+
+ mage-counter-plugin
+ jar
+ Mage Counter Plugin
+ Implements game counter to display amount of games played
+ 0.1
+
+
+
+ ${project.groupId}
+ mage-common
+ ${mage-version}
+
+
+ log4j
+ log4j
+ provided
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+
+ mage-counter-plugin
+
+
diff --git a/Mage.Plugins/pom.xml b/Mage.Plugins/pom.xml
index c9e95ef2a7e..8562bbb68b6 100644
--- a/Mage.Plugins/pom.xml
+++ b/Mage.Plugins/pom.xml
@@ -1,22 +1,22 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-plugins
- pom
- Mage Plugins
- Mage Plugins POM
-
-
- Mage.Counter.Plugin
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-plugins
+ pom
+ Mage Plugins
+ Mage Plugins POM
+
+
+ Mage.Counter.Plugin
+
+
+
diff --git a/Mage.Server.Console/pom.xml b/Mage.Server.Console/pom.xml
index 825e53abe0b..f5d0506f72a 100644
--- a/Mage.Server.Console/pom.xml
+++ b/Mage.Server.Console/pom.xml
@@ -1,77 +1,77 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- org.mage
- mage.server.console
- jar
- Mage Server Console
-
-
-
- org.mage
- mage-common
- ${project.version}
-
-
- org.swinglabs
- swingx
- 1.6.1
-
-
- junit
- junit
- test
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
- org.apache.maven.plugins
- maven-install-plugin
- 2.5.2
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
- maven-jar-plugin
-
-
- ${manifest.file}
-
- true
- mage.server.console.ConsoleFrame
-
-
-
-
-
- maven-assembly-plugin
-
- false
-
- src/main/assembly/distribution.xml
-
-
-
-
-
- mage-serverconsole
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ org.mage
+ mage.server.console
+ jar
+ Mage Server Console
+
+
+
+ org.mage
+ mage-common
+ ${project.version}
+
+
+ org.swinglabs
+ swingx
+ 1.6.1
+
+
+ junit
+ junit
+ test
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ org.apache.maven.plugins
+ maven-install-plugin
+ 2.5.2
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+ maven-jar-plugin
+
+
+ ${manifest.file}
+
+ true
+ mage.server.console.ConsoleFrame
+
+
+
+
+
+ maven-assembly-plugin
+
+ false
+
+ src/main/assembly/distribution.xml
+
+
+
+
+
+ mage-serverconsole
+
+
diff --git a/Mage.Server.Plugins/Mage.Deck.Constructed/pom.xml b/Mage.Server.Plugins/Mage.Deck.Constructed/pom.xml
index f07ae6dc47d..cf44137297a 100644
--- a/Mage.Server.Plugins/Mage.Deck.Constructed/pom.xml
+++ b/Mage.Server.Plugins/Mage.Deck.Constructed/pom.xml
@@ -1,54 +1,54 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-deck-constructed
- jar
- Mage Deck Constructed
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-sets
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-deck-constructed
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-deck-constructed
+ jar
+ Mage Deck Constructed
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-sets
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-deck-constructed
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Deck.Limited/pom.xml b/Mage.Server.Plugins/Mage.Deck.Limited/pom.xml
index 1125d536bde..2bf3742952a 100644
--- a/Mage.Server.Plugins/Mage.Deck.Limited/pom.xml
+++ b/Mage.Server.Plugins/Mage.Deck.Limited/pom.xml
@@ -1,49 +1,49 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-deck-limited
- jar
- Mage Deck Limited
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-deck-limited
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-deck-limited
+ jar
+ Mage Deck Limited
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-deck-limited
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/pom.xml b/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/pom.xml
index e6e40f6eb41..d654d973e66 100644
--- a/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-canadianhighlanderduel
- jar
- Mage Game Canadian Highlander Two Player
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-canadianhighlanderduel
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-canadianhighlanderduel
+ jar
+ Mage Game Canadian Highlander Two Player
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-canadianhighlanderduel
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.CommanderDuel/pom.xml b/Mage.Server.Plugins/Mage.Game.CommanderDuel/pom.xml
index a2b1e3e5817..12b6f88e8a8 100644
--- a/Mage.Server.Plugins/Mage.Game.CommanderDuel/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.CommanderDuel/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-commanderduel
- jar
- Mage Game Commander Two Player
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-commanderduel
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-commanderduel
+ jar
+ Mage Game Commander Two Player
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-commanderduel
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/pom.xml b/Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/pom.xml
index b375807fcbe..ab523a9fe1a 100644
--- a/Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.CommanderFreeForAll/pom.xml
@@ -1,49 +1,49 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-commanderfreeforall
- jar
- Mage Game Commander Free For All
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-freeforall
-
-
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-commanderfreeforall
+ jar
+ Mage Game Commander Free For All
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-freeforall
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.FreeForAll/pom.xml b/Mage.Server.Plugins/Mage.Game.FreeForAll/pom.xml
index d812155dc9e..6c33316cc92 100644
--- a/Mage.Server.Plugins/Mage.Game.FreeForAll/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.FreeForAll/pom.xml
@@ -1,49 +1,49 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-freeforall
- jar
- Mage Game Free For All
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-freeforall
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-freeforall
+ jar
+ Mage Game Free For All
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-freeforall
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.MomirDuel/pom.xml b/Mage.Server.Plugins/Mage.Game.MomirDuel/pom.xml
index 4d27e25c556..b17f01f4dc1 100644
--- a/Mage.Server.Plugins/Mage.Game.MomirDuel/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.MomirDuel/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-momirduel
- jar
- Mage Game Momir Basic Two Player
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-momirduel
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-momirduel
+ jar
+ Mage Game Momir Basic Two Player
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-momirduel
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/pom.xml b/Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/pom.xml
index 56bec2a4160..4df4d733b14 100644
--- a/Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.TinyLeadersDuel/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-tinyleadersduel
- jar
- Mage Game Tiny Leaders Two Player
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-tinyleadersduel
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-tinyleadersduel
+ jar
+ Mage Game Tiny Leaders Two Player
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-tinyleadersduel
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/pom.xml b/Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/pom.xml
index beb8636331b..0a80e4c370b 100644
--- a/Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/pom.xml
+++ b/Mage.Server.Plugins/Mage.Game.TwoPlayerDuel/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-game-twoplayerduel
- jar
- Mage Game Two Player
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-game-twoplayerduel
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-game-twoplayerduel
+ jar
+ Mage Game Two Player
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-game-twoplayerduel
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.AI.DraftBot/pom.xml b/Mage.Server.Plugins/Mage.Player.AI.DraftBot/pom.xml
index 3c85e47b5c4..684eacda572 100644
--- a/Mage.Server.Plugins/Mage.Player.AI.DraftBot/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.AI.DraftBot/pom.xml
@@ -1,55 +1,55 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-ai-draftbot
- jar
- Mage Player AI.DraftBot
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-ai-draft-bot
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-ai-draftbot
+ jar
+ Mage Player AI.DraftBot
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-ai-draft-bot
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.AI.MA/pom.xml b/Mage.Server.Plugins/Mage.Player.AI.MA/pom.xml
index e9d83120f5e..8a1739ee54c 100644
--- a/Mage.Server.Plugins/Mage.Player.AI.MA/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.AI.MA/pom.xml
@@ -1,55 +1,55 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-ai-ma
- jar
- Mage Player AI.MA
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-ai-ma
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-ai-ma
+ jar
+ Mage Player AI.MA
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-ai-ma
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.AI/pom.xml b/Mage.Server.Plugins/Mage.Player.AI/pom.xml
index 8674a99ec47..11d0f5e1a9c 100644
--- a/Mage.Server.Plugins/Mage.Player.AI/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.AI/pom.xml
@@ -1,59 +1,59 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-ai
- jar
- Mage Player AI
-
-
-
- log4j
- log4j
- jar
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-sets
- ${project.version}
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-ai
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-ai
+ jar
+ Mage Player AI
+
+
+
+ log4j
+ log4j
+ jar
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-sets
+ ${project.version}
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-ai
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.AIMCTS/pom.xml b/Mage.Server.Plugins/Mage.Player.AIMCTS/pom.xml
index 5e3e0c0bee3..0018d9200f5 100644
--- a/Mage.Server.Plugins/Mage.Player.AIMCTS/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.AIMCTS/pom.xml
@@ -1,60 +1,60 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-ai-mcts
- jar
- Mage Player AI MCTS
-
-
-
- log4j
- log4j
- jar
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-aimcts
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-ai-mcts
+ jar
+ Mage Player AI MCTS
+
+
+
+ log4j
+ log4j
+ jar
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-aimcts
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.AIMinimax/pom.xml b/Mage.Server.Plugins/Mage.Player.AIMinimax/pom.xml
index 53d79731bce..f846f475ff7 100644
--- a/Mage.Server.Plugins/Mage.Player.AIMinimax/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.AIMinimax/pom.xml
@@ -1,60 +1,60 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-aiminimax
- jar
- Mage Player AI Minimax
-
-
-
- log4j
- log4j
- jar
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-aiminimax
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-aiminimax
+ jar
+ Mage Player AI Minimax
+
+
+
+ log4j
+ log4j
+ jar
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-aiminimax
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.Human/pom.xml b/Mage.Server.Plugins/Mage.Player.Human/pom.xml
index 1188707f5e1..e2ee8c6cb06 100644
--- a/Mage.Server.Plugins/Mage.Player.Human/pom.xml
+++ b/Mage.Server.Plugins/Mage.Player.Human/pom.xml
@@ -1,60 +1,60 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-player-human
- jar
- Mage Player Human
-
-
-
- org.mage
- mage
- ${project.version}
-
-
- org.mage
- mage-common
- ${project.version}
-
-
- log4j
- log4j
- provided
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-player-human
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-player-human
+ jar
+ Mage Player Human
+
+
+
+ org.mage
+ mage
+ ${project.version}
+
+
+ org.mage
+ mage-common
+ ${project.version}
+
+
+ log4j
+ log4j
+ provided
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-player-human
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/PlayerResponse.java b/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/PlayerResponse.java
index 601ccd3d6a0..fc7b27bed87 100644
--- a/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/PlayerResponse.java
+++ b/Mage.Server.Plugins/Mage.Player.Human/src/mage/player/human/PlayerResponse.java
@@ -50,7 +50,7 @@ public class PlayerResponse implements Serializable {
}
public String toString() {
- return new StringBuilder(responseString)
+ return new StringBuilder((responseString == null) ? "null" : responseString)
.append(',')
.append(responseUUID)
.append(',')
diff --git a/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/pom.xml b/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/pom.xml
index 93ff0ffda37..1a23ebb769b 100644
--- a/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/pom.xml
+++ b/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-tournament-boosterdraft
- jar
- Mage Tournament Booster Draft
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-tournament-booster-draft
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-tournament-boosterdraft
+ jar
+ Mage Tournament Booster Draft
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-tournament-booster-draft
+
+
+
+
+
diff --git a/Mage.Server.Plugins/Mage.Tournament.Constructed/pom.xml b/Mage.Server.Plugins/Mage.Tournament.Constructed/pom.xml
index 0238ba6ea3e..ed1fe7838e5 100644
--- a/Mage.Server.Plugins/Mage.Tournament.Constructed/pom.xml
+++ b/Mage.Server.Plugins/Mage.Tournament.Constructed/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-tournament-constructed
- jar
- Mage Tournament Constructed
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-tournament-constructed
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-tournament-constructed
+ jar
+ Mage Tournament Constructed
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-tournament-constructed
+
+
+
+
\ No newline at end of file
diff --git a/Mage.Server.Plugins/Mage.Tournament.Sealed/pom.xml b/Mage.Server.Plugins/Mage.Tournament.Sealed/pom.xml
index 7abb9bbc966..247a8bddff5 100644
--- a/Mage.Server.Plugins/Mage.Tournament.Sealed/pom.xml
+++ b/Mage.Server.Plugins/Mage.Tournament.Sealed/pom.xml
@@ -1,50 +1,50 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-server-plugins
- 1.4.23
-
-
- mage-tournament-sealed
- jar
- Mage Tournament Sealed
-
-
-
- ${project.groupId}
- mage
- ${project.version}
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-tournament-sealed
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-server-plugins
+ 1.4.24
+
+
+ mage-tournament-sealed
+ jar
+ Mage Tournament Sealed
+
+
+
+ ${project.groupId}
+ mage
+ ${project.version}
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-tournament-sealed
+
+
+
+
+
diff --git a/Mage.Server.Plugins/pom.xml b/Mage.Server.Plugins/pom.xml
index 545f67a4c51..3573e2a2127 100644
--- a/Mage.Server.Plugins/pom.xml
+++ b/Mage.Server.Plugins/pom.xml
@@ -1,38 +1,38 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-server-plugins
- pom
- Mage Server Plugins
- Mage Server Plugins POM
-
-
- Mage.Deck.Constructed
- Mage.Deck.Limited
- Mage.Game.CommanderDuel
- Mage.Game.CommanderFreeForAll
- Mage.Game.FreeForAll
- Mage.Game.MomirDuel
- Mage.Game.TinyLeadersDuel
- Mage.Game.CanadianHighlanderDuel
- Mage.Game.TwoPlayerDuel
- Mage.Player.AI
- Mage.Player.AIMinimax
- Mage.Player.AI.MA
- Mage.Player.AIMCTS
- Mage.Player.AI.DraftBot
- Mage.Player.Human
- Mage.Tournament.BoosterDraft
- Mage.Tournament.Constructed
- Mage.Tournament.Sealed
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-server-plugins
+ pom
+ Mage Server Plugins
+ Mage Server Plugins POM
+
+
+ Mage.Deck.Constructed
+ Mage.Deck.Limited
+ Mage.Game.CommanderDuel
+ Mage.Game.CommanderFreeForAll
+ Mage.Game.FreeForAll
+ Mage.Game.MomirDuel
+ Mage.Game.TinyLeadersDuel
+ Mage.Game.CanadianHighlanderDuel
+ Mage.Game.TwoPlayerDuel
+ Mage.Player.AI
+ Mage.Player.AIMinimax
+ Mage.Player.AI.MA
+ Mage.Player.AIMCTS
+ Mage.Player.AI.DraftBot
+ Mage.Player.Human
+ Mage.Tournament.BoosterDraft
+ Mage.Tournament.Constructed
+ Mage.Tournament.Sealed
+
+
+
diff --git a/Mage.Server/pom.xml b/Mage.Server/pom.xml
index 5d240e2cc5b..b206132209c 100644
--- a/Mage.Server/pom.xml
+++ b/Mage.Server/pom.xml
@@ -1,310 +1,310 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-server
- jar
- Mage Server
-
-
-
- ${project.groupId}
- mage
- ${mage-version}
-
-
- org.apache.commons
- commons-lang3
- 3.3.2
-
-
- ${project.groupId}
- mage-common
- ${mage-version}
-
-
- ${project.groupId}
- mage-sets
- ${mage-version}
-
-
- junit
- junit
- test
-
-
- com.sun.xml.bind
- jaxb-impl
- 2.1.17
-
-
- log4j
- log4j
-
-
- org.slf4j
- slf4j-log4j12
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-deck-constructed
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-deck-limited
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-commanderduel
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-commanderfreeforall
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-freeforall
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-twoplayerduel
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-player-human
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-player-aiminimax
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-player-ai-ma
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-tournament-boosterdraft
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-tournament-sealed
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-tournament-constructed
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-player-ai-draftbot
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-tinyleadersduel
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-canadianhighlanderduel
- ${project.version}
- runtime
-
-
- ${project.groupId}
- mage-game-momirduel
- ${project.version}
- runtime
-
-
- org.apache.shiro
- shiro-core
- 1.2.4
- jar
-
-
- com.google.api-client
- google-api-client
- 1.21.0
- jar
-
-
- com.google.apis
- google-api-services-gmail
- v1-rev35-1.21.0
- jar
-
-
- com.google.oauth-client
- google-oauth-client-java6
- 1.19.0
- jar
-
-
- com.google.oauth-client
- google-oauth-client-jetty
- 1.19.0
- jar
-
-
- javax.mail
- mail
- 1.4.2
- jar
-
-
- com.sun.jersey
- jersey-core
- 1.19
-
-
- com.sun.jersey
- jersey-client
- 1.19
-
-
- com.sun.jersey.contribs
- jersey-multipart
- 1.19
-
-
- org.xerial
- sqlite-jdbc
- 3.7.2
-
-
-
-
-
-
- org.jvnet.jaxb2.maven2
- maven-jaxb2-plugin
- 0.12.3
-
- mage.server.util.config
- ./src/main/xml-resources/jaxb/Config/
- -Xcommons-lang
-
-
-
-
- generate
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.8
- 1.8
-
-
-
- maven-assembly-plugin
-
- false
-
- src/main/assembly/distribution.xml
-
-
-
-
- maven-jar-plugin
-
-
-
- true
- mage.server.Main
-
-
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
- mage-server
-
-
-
-
- org.eclipse.m2e
- lifecycle-mapping
- 1.0.1
-
-
-
-
-
-
- org.jvnet.jaxb2.maven2
-
-
- maven-jaxb2-plugin
-
-
- [0.7.4,)
-
-
- generate
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-server
+ jar
+ Mage Server
+
+
+
+ ${project.groupId}
+ mage
+ ${mage-version}
+
+
+ org.apache.commons
+ commons-lang3
+ 3.3.2
+
+
+ ${project.groupId}
+ mage-common
+ ${mage-version}
+
+
+ ${project.groupId}
+ mage-sets
+ ${mage-version}
+
+
+ junit
+ junit
+ test
+
+
+ com.sun.xml.bind
+ jaxb-impl
+ 2.1.17
+
+
+ log4j
+ log4j
+
+
+ org.slf4j
+ slf4j-log4j12
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-deck-constructed
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-deck-limited
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-commanderduel
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-commanderfreeforall
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-freeforall
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-twoplayerduel
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-player-human
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-player-aiminimax
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-player-ai-ma
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-tournament-boosterdraft
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-tournament-sealed
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-tournament-constructed
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-player-ai-draftbot
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-tinyleadersduel
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-canadianhighlanderduel
+ ${project.version}
+ runtime
+
+
+ ${project.groupId}
+ mage-game-momirduel
+ ${project.version}
+ runtime
+
+
+ org.apache.shiro
+ shiro-core
+ 1.2.4
+ jar
+
+
+ com.google.api-client
+ google-api-client
+ 1.21.0
+ jar
+
+
+ com.google.apis
+ google-api-services-gmail
+ v1-rev35-1.21.0
+ jar
+
+
+ com.google.oauth-client
+ google-oauth-client-java6
+ 1.19.0
+ jar
+
+
+ com.google.oauth-client
+ google-oauth-client-jetty
+ 1.19.0
+ jar
+
+
+ javax.mail
+ mail
+ 1.4.2
+ jar
+
+
+ com.sun.jersey
+ jersey-core
+ 1.19
+
+
+ com.sun.jersey
+ jersey-client
+ 1.19
+
+
+ com.sun.jersey.contribs
+ jersey-multipart
+ 1.19
+
+
+ org.xerial
+ sqlite-jdbc
+ 3.7.2
+
+
+
+
+
+
+ org.jvnet.jaxb2.maven2
+ maven-jaxb2-plugin
+ 0.12.3
+
+ mage.server.util.config
+ ./src/main/xml-resources/jaxb/Config/
+ -Xcommons-lang
+
+
+
+
+ generate
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.8
+ 1.8
+
+
+
+ maven-assembly-plugin
+
+ false
+
+ src/main/assembly/distribution.xml
+
+
+
+
+ maven-jar-plugin
+
+
+
+ true
+ mage.server.Main
+
+
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+ mage-server
+
+
+
+
+ org.eclipse.m2e
+ lifecycle-mapping
+ 1.0.1
+
+
+
+
+
+
+ org.jvnet.jaxb2.maven2
+
+
+ maven-jaxb2-plugin
+
+
+ [0.7.4,)
+
+
+ generate
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Mage.Server/src/main/java/mage/server/ChatSession.java b/Mage.Server/src/main/java/mage/server/ChatSession.java
index f7a9c969fbb..9dd362060f6 100644
--- a/Mage.Server/src/main/java/mage/server/ChatSession.java
+++ b/Mage.Server/src/main/java/mage/server/ChatSession.java
@@ -129,9 +129,7 @@ public class ChatSession {
clientsToRemove.add(userId);
}
}
- for (UUID userIdToRemove : clientsToRemove) {
- clients.remove(userIdToRemove);
- }
+ clients.keySet().removeAll(clientsToRemove);
}
}
diff --git a/Mage.Server/src/main/java/mage/server/game/GameController.java b/Mage.Server/src/main/java/mage/server/game/GameController.java
index fc4359f6c3a..0046d625c07 100644
--- a/Mage.Server/src/main/java/mage/server/game/GameController.java
+++ b/Mage.Server/src/main/java/mage/server/game/GameController.java
@@ -46,6 +46,7 @@ import mage.game.Table;
import mage.game.events.Listener;
import mage.game.events.PlayerQueryEvent;
import mage.game.events.TableEvent;
+import mage.game.match.MatchPlayer;
import mage.game.permanent.Permanent;
import mage.interfaces.Action;
import mage.players.Player;
@@ -65,7 +66,6 @@ import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.*;
import java.util.zip.GZIPOutputStream;
-import mage.game.match.MatchPlayer;
/**
* @author BetaSteward_at_googlemail.com
@@ -108,12 +108,7 @@ public class GameController implements GameCallback {
this.tableId = tableId;
this.choosingPlayerId = choosingPlayerId;
this.gameOptions = gameOptions;
- for (Player player : game.getPlayers().values()) {
- if (!player.isHuman()) {
- useTimeout = false; // no timeout for AI players because of beeing idle
- break;
- }
- }
+ useTimeout = game.getPlayers().values().stream().allMatch(Player::isHuman);
init();
}
@@ -832,13 +827,8 @@ public class GameController implements GameCallback {
}
final String message = new StringBuilder(game.getStep().getType().toString()).append(" - Waiting for ").append(controller.getName()).toString();
for (final Entry entry : gameSessions.entrySet()) {
- boolean skip = false;
- for (UUID uuid : players) {
- if (entry.getKey().equals(uuid)) {
- skip = true;
- break;
- }
- }
+ boolean skip = players.stream().anyMatch(playerId -> entry.getKey().equals(playerId));
+
if (!skip) {
entry.getValue().inform(message);
}
diff --git a/Mage.Sets/pom.xml b/Mage.Sets/pom.xml
index 3e3f9379a96..0d466cc360a 100644
--- a/Mage.Sets/pom.xml
+++ b/Mage.Sets/pom.xml
@@ -1,59 +1,59 @@
-
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- org.mage
- mage-sets
- jar
- Mage Sets
- http://maven.apache.org
-
-
-
- ${project.groupId}
- mage
- ${mage-version}
-
-
- log4j
- log4j
- jar
-
-
-
- junit
- junit
- test
-
-
-
-
- src
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
- mage-sets
-
-
-
-
-
+
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ org.mage
+ mage-sets
+ jar
+ Mage Sets
+ http://maven.apache.org
+
+
+
+ ${project.groupId}
+ mage
+ ${mage-version}
+
+
+ log4j
+ log4j
+ jar
+
+
+
+ junit
+ junit
+ test
+
+
+
+
+ src
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+ mage-sets
+
+
+
+
+
diff --git a/Mage.Sets/src/mage/cards/c/CrestedSunmare.java b/Mage.Sets/src/mage/cards/c/CrestedSunmare.java
index fd96744255b..4bfaac48421 100644
--- a/Mage.Sets/src/mage/cards/c/CrestedSunmare.java
+++ b/Mage.Sets/src/mage/cards/c/CrestedSunmare.java
@@ -46,7 +46,7 @@ import mage.constants.TargetController;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
-import mage.game.permanent.token.Token;
+import mage.game.permanent.token.CrestedSunmareToken;
import mage.watchers.common.PlayerGainedLifeWatcher;
/**
@@ -56,6 +56,7 @@ import mage.watchers.common.PlayerGainedLifeWatcher;
public class CrestedSunmare extends CardImpl {
private static final FilterControlledPermanent filter = new FilterControlledPermanent("Horses you control");
+
static {
filter.add(new SubtypePredicate(SubType.HORSE));
}
@@ -88,15 +89,3 @@ public class CrestedSunmare extends CardImpl {
return new CrestedSunmare(this);
}
}
-
-class CrestedSunmareToken extends Token {
-
- CrestedSunmareToken() {
- super("Horse", "5/5 white Horse creature token");
- power = new MageInt(5);
- toughness = new MageInt(5);
- color.setWhite(true);
- subtype.add("Horse");
- cardType.add(CardType.CREATURE);
- }
-}
diff --git a/Mage.Sets/src/mage/cards/d/DisposalMummy.java b/Mage.Sets/src/mage/cards/d/DisposalMummy.java
index b3e82deac78..bd05d1fbfad 100644
--- a/Mage.Sets/src/mage/cards/d/DisposalMummy.java
+++ b/Mage.Sets/src/mage/cards/d/DisposalMummy.java
@@ -31,6 +31,7 @@ import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
+import mage.abilities.effects.common.ExileTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@@ -43,10 +44,10 @@ import mage.target.common.TargetCardInOpponentsGraveyard;
* @author Archer262
*/
public class DisposalMummy extends CardImpl {
-
+
public DisposalMummy(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{W}");
-
+
this.subtype.add("Zombie");
this.subtype.add("Jackal");
this.power = new MageInt(2);
@@ -58,11 +59,11 @@ public class DisposalMummy extends CardImpl {
ability.addTarget(target);
this.addAbility(ability);
}
-
+
public DisposalMummy(final DisposalMummy card) {
super(card);
}
-
+
@Override
public DisposalMummy copy() {
return new DisposalMummy(this);
diff --git a/Mage.Sets/src/mage/cards/d/Doomfall.java b/Mage.Sets/src/mage/cards/d/Doomfall.java
index 66caa1c9b00..78c30c55e61 100644
--- a/Mage.Sets/src/mage/cards/d/Doomfall.java
+++ b/Mage.Sets/src/mage/cards/d/Doomfall.java
@@ -41,7 +41,6 @@ import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.Target;
-import mage.target.TargetPlayer;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
@@ -58,9 +57,9 @@ public class Doomfall extends CardImpl {
this.getSpellAbility().getModes().setMinModes(1);
this.getSpellAbility().getModes().setMaxModes(1);
- // • Target player exiles a creature he or she controls.
+ // • Target opponent exiles a creature he or she controls.
this.getSpellAbility().addEffect(new DoomfallEffect());
- this.getSpellAbility().addTarget(new TargetPlayer());
+ this.getSpellAbility().addTarget(new TargetOpponent());
// • Target opponent reveals his or her hand. You choose a nonland card from it. Exile that card.
Mode mode = new Mode();
@@ -103,7 +102,7 @@ class DoomfallEffect extends OneShotEffect {
Target target = new TargetControlledCreaturePermanent();
target.setNotTarget(true);
if (targetPlayer.choose(outcome, target, source.getSourceId(), game)) {
- targetPlayer.moveCards(game.getCard(target.getFirstTarget()), Zone.EXILED, source, game);
+ targetPlayer.moveCards(game.getPermanent(target.getFirstTarget()), Zone.EXILED, source, game);
}
return true;
}
diff --git a/Mage.Sets/src/mage/cards/d/Duplicant.java b/Mage.Sets/src/mage/cards/d/Duplicant.java
index 8c4cb2256f7..60e11189726 100644
--- a/Mage.Sets/src/mage/cards/d/Duplicant.java
+++ b/Mage.Sets/src/mage/cards/d/Duplicant.java
@@ -27,6 +27,7 @@
*/
package mage.cards.d;
+import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.Mode;
@@ -45,8 +46,6 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetCreaturePermanent;
-import java.util.UUID;
-
/**
*
* @author Plopman
@@ -54,18 +53,20 @@ import java.util.UUID;
public class Duplicant extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("nontoken creature");
+
static {
filter.add(Predicates.not(new TokenPredicate()));
}
+
public Duplicant(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{6}");
+ super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{6}");
this.subtype.add("Shapeshifter");
this.power = new MageInt(2);
this.toughness = new MageInt(4);
// Imprint - When Duplicant enters the battlefield, you may exile target nontoken creature.
- Ability ability = new EntersBattlefieldTriggeredAbility(new ExileTargetEffect(), true, "Imprint - ");
+ Ability ability = new EntersBattlefieldTriggeredAbility(new DuplicantExileTargetEffect(), true, "Imprint - ");
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
// As long as the exiled card is a creature card, Duplicant has that card's power, toughness, and creature types. It's still a Shapeshifter.
@@ -81,20 +82,20 @@ public class Duplicant extends CardImpl {
return new Duplicant(this);
}
}
-class ExileTargetEffect extends OneShotEffect {
+class DuplicantExileTargetEffect extends OneShotEffect {
- public ExileTargetEffect() {
+ public DuplicantExileTargetEffect() {
super(Outcome.Exile);
}
- public ExileTargetEffect(final ExileTargetEffect effect) {
+ public DuplicantExileTargetEffect(final DuplicantExileTargetEffect effect) {
super(effect);
}
@Override
- public ExileTargetEffect copy() {
- return new ExileTargetEffect(this);
+ public DuplicantExileTargetEffect copy() {
+ return new DuplicantExileTargetEffect(this);
}
@Override
@@ -102,13 +103,13 @@ class ExileTargetEffect extends OneShotEffect {
Permanent permanent = game.getPermanent(targetPointer.getFirst(game, source));
Permanent sourcePermananent = game.getPermanent(source.getSourceId());
if (permanent != null) {
- if(sourcePermananent != null){
+ if (sourcePermananent != null) {
sourcePermananent.imprint(permanent.getId(), game);
sourcePermananent.addInfo("imprint", new StringBuilder("[Imprinted card - ").append(permanent.getName()).append(']').toString(), game);
}
return permanent.moveToExile(null, null, source.getSourceId(), game);
- }
-
+ }
+
return false;
}
@@ -118,17 +119,16 @@ class ExileTargetEffect extends OneShotEffect {
}
}
-
class DuplicantContinuousEffect extends ContinuousEffectImpl {
public DuplicantContinuousEffect() {
super(Duration.WhileOnBattlefield, Outcome.BoostCreature);
- staticText = "As long as the exiled card is a creature card, Duplicant has that card's power, toughness, and creature types. It's still a Shapeshifter";
+ staticText = "As long as the exiled card is a creature card, Duplicant has that card's power, toughness, and creature types. It's still a Shapeshifter";
}
public DuplicantContinuousEffect(final DuplicantContinuousEffect effect) {
super(effect);
- }
+ }
@Override
public DuplicantContinuousEffect copy() {
@@ -139,10 +139,9 @@ class DuplicantContinuousEffect extends ContinuousEffectImpl {
public boolean apply(Layer layer, SubLayer sublayer, Ability source, Game game) {
Permanent permanent = game.getPermanent(source.getSourceId());
if (permanent != null) {
- if(!permanent.getImprinted().isEmpty()){
+ if (!permanent.getImprinted().isEmpty()) {
Card card = game.getCard(permanent.getImprinted().get(0));
- if(card != null && card.isCreature())
- {
+ if (card != null && card.isCreature()) {
switch (layer) {
case TypeChangingEffects_4:
if (sublayer == SubLayer.NA) {
@@ -152,29 +151,28 @@ class DuplicantContinuousEffect extends ContinuousEffectImpl {
break;
case PTChangingEffects_7:
if (sublayer == SubLayer.SetPT_7b) {
- permanent.getPower().setValue(card.getPower().getValue());
- permanent.getToughness().setValue(card.getToughness().getValue());
+ permanent.getPower().setValue(card.getPower().getValue());
+ permanent.getToughness().setValue(card.getToughness().getValue());
}
}
return true;
-
}
}
-
+
}
return false;
}
-
+
@Override
public boolean apply(Game game, Ability source) {
return false;
}
-
+
@Override
public boolean hasLayer(Layer layer) {
return layer == Layer.PTChangingEffects_7 || layer == Layer.TypeChangingEffects_4;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/h/HourOfGlory.java b/Mage.Sets/src/mage/cards/h/HourOfGlory.java
index d46951839be..5cb314cf121 100644
--- a/Mage.Sets/src/mage/cards/h/HourOfGlory.java
+++ b/Mage.Sets/src/mage/cards/h/HourOfGlory.java
@@ -43,6 +43,7 @@ import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
+import mage.target.common.TargetCreaturePermanent;
/**
*
@@ -55,6 +56,7 @@ public class HourOfGlory extends CardImpl {
// Exile target creature. If that creature was a God, its controller reveals his or her hand and exiles all cards with the same name as that creature.
this.getSpellAbility().addEffect(new HourOfGloryEffect());
+ this.getSpellAbility().addTarget(new TargetCreaturePermanent());
}
public HourOfGlory(final HourOfGlory card) {
diff --git a/Mage.Sets/src/mage/cards/i/ImminentDoom.java b/Mage.Sets/src/mage/cards/i/ImminentDoom.java
index cf4bd237382..971e180ed79 100644
--- a/Mage.Sets/src/mage/cards/i/ImminentDoom.java
+++ b/Mage.Sets/src/mage/cards/i/ImminentDoom.java
@@ -142,7 +142,6 @@ class ImminentDoomEffect extends OneShotEffect {
Effect effect = new DamageTargetEffect((int) game.getState().getValue("ImminentDoomCount" + source.getSourceId().toString()));
effect.apply(game, source);
imminentDoom.addCounters(CounterType.DOOM.createInstance(), source, game);
- game.getState().setValue("ImminentDoomCount" + source.getSourceId().toString(), 0); // reset to 0 to avoid any silliness
return true;
}
return false;
diff --git a/Mage.Sets/src/mage/cards/s/Solemnity.java b/Mage.Sets/src/mage/cards/s/Solemnity.java
index bb410cc4d27..ce26d0595cc 100644
--- a/Mage.Sets/src/mage/cards/s/Solemnity.java
+++ b/Mage.Sets/src/mage/cards/s/Solemnity.java
@@ -139,14 +139,21 @@ class SolemnityEffect2 extends ReplacementEffectImpl {
@Override
public boolean checksEventType(GameEvent event, Game game) {
- return event.getType() == EventType.ADD_COUNTER;
+ return event.getType() == EventType.ADD_COUNTER || event.getType() == EventType.ADD_COUNTERS;
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
MageObject object = game.getObject(event.getTargetId());
- if (object instanceof Permanent && filter.match((Permanent) object, game)) {
- return true;
+ Permanent permanent = game.getPermanentEntering(event.getSourceId());
+ if (object != null && object instanceof Permanent) {
+ if (filter.match((Permanent) object, game)) {
+ return true;
+ }
+ } else if (permanent != null) {
+ if (filter.match(permanent, game)) {
+ return true;
+ }
}
return false;
}
diff --git a/Mage.Sets/src/mage/cards/s/SunsetPyramid.java b/Mage.Sets/src/mage/cards/s/SunsetPyramid.java
index 32cebf1d881..86ad8f7ad30 100644
--- a/Mage.Sets/src/mage/cards/s/SunsetPyramid.java
+++ b/Mage.Sets/src/mage/cards/s/SunsetPyramid.java
@@ -36,6 +36,7 @@ import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
+import mage.abilities.effects.keyword.ScryEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@@ -61,7 +62,7 @@ public class SunsetPyramid extends CardImpl {
this.addAbility(ability);
// {2}, {T}: Scry 1.
- Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(2));
+ Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1), new GenericManaCost(2));
ability2.addCost(new TapSourceCost());
this.addAbility(ability2);
diff --git a/Mage.Sets/src/mage/cards/t/TormentOfVenom.java b/Mage.Sets/src/mage/cards/t/TormentOfVenom.java
index d7d9e95610d..c697f038f8f 100644
--- a/Mage.Sets/src/mage/cards/t/TormentOfVenom.java
+++ b/Mage.Sets/src/mage/cards/t/TormentOfVenom.java
@@ -36,7 +36,12 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.counters.CounterType;
+import mage.filter.FilterPermanent;
import mage.filter.StaticFilters;
+import mage.filter.common.FilterControlledPermanent;
+import mage.filter.predicate.Predicates;
+import mage.filter.predicate.mageobject.CardTypePredicate;
+import mage.filter.predicate.permanent.PermanentIdPredicate;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -94,7 +99,10 @@ class TormentOfVenomEffect extends OneShotEffect {
int permanents = game.getBattlefield().countAll(StaticFilters.FILTER_PERMANENT_NON_LAND, controllingPlayer.getId(), game);
if (permanents > 0 && controllingPlayer.chooseUse(outcome, "Sacrifices a nonland permanent?",
"Otherwise you have to discard a card or lose 3 life.", "Sacrifice", "Discard or life loss", source, game)) {
- Target target = new TargetPermanent(StaticFilters.FILTER_CONTROLLED_PERMANENT_NON_LAND);
+ FilterPermanent filter = new FilterControlledPermanent("another nonland permanent");
+ filter.add(Predicates.not(new CardTypePredicate(CardType.LAND)));
+ filter.add(Predicates.not(new PermanentIdPredicate(targetCreature.getId())));
+ Target target = new TargetPermanent(filter);
if (controllingPlayer.choose(outcome, target, source.getSourceId(), game)) {
Permanent permanent = game.getPermanent(target.getFirstTarget());
if (permanent != null) {
diff --git a/Mage.Stats/pom.xml b/Mage.Stats/pom.xml
index 51041d30dcb..172a6cc92d3 100644
--- a/Mage.Stats/pom.xml
+++ b/Mage.Stats/pom.xml
@@ -1,160 +1,160 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- org.mage
- mage-stats
- war
- XMage Stats Web Service
-
-
-
- JBoss repository
- https://repository.jboss.org/nexus/content/groups/public-jboss/
-
-
-
-
-
-
- org.mage
- mage-common
- ${project.version}
-
-
-
- org.mage
- mage-server
- ${project.version}
-
-
-
- junit
- junit
- test
-
-
-
- net.minidev
- json-smart
- 2.1.1
-
-
-
- org.aspectj
- aspectjrt
- 1.8.2
-
-
-
- net.sf.opencsv
- opencsv
- 2.3
-
-
-
-
- org.jboss.resteasy
- resteasy-jaxrs
- 2.3.7.Final
- provided
-
-
-
- ch.qos.logback
- logback-classic
- 1.1.2
-
-
-
- org.apache.sling
- org.apache.sling.commons.json
- 2.0.10
-
-
-
- org.jboss.resteasy
- resteasy-multipart-provider
- 2.3.1.GA
-
-
-
- commons-io
- commons-io
- 2.4
-
-
-
- commons-httpclient
- commons-httpclient
- 3.1
-
-
-
- javax.servlet
- servlet-api
- 2.5
-
-
-
- joda-time
- joda-time
- 2.7
-
-
-
-
- mage-stats-ws
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 1.7
- 1.7
-
-
-
- org.apache.maven.plugins
- maven-war-plugin
- 2.6
-
- src\main\webapp\WEB-INF\web.xml
- .
-
-
-
- org.codehaus.mojo
- aspectj-maven-plugin
- 1.7
-
-
-
- ${project.basedir}/src/main/java
-
-
- 1.7
-
-
-
-
- compile
-
-
-
-
-
-
-
-
- UTF-8
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ org.mage
+ mage-stats
+ war
+ XMage Stats Web Service
+
+
+
+ JBoss repository
+ https://repository.jboss.org/nexus/content/groups/public-jboss/
+
+
+
+
+
+
+ org.mage
+ mage-common
+ ${project.version}
+
+
+
+ org.mage
+ mage-server
+ ${project.version}
+
+
+
+ junit
+ junit
+ test
+
+
+
+ net.minidev
+ json-smart
+ 2.1.1
+
+
+
+ org.aspectj
+ aspectjrt
+ 1.8.2
+
+
+
+ net.sf.opencsv
+ opencsv
+ 2.3
+
+
+
+
+ org.jboss.resteasy
+ resteasy-jaxrs
+ 2.3.7.Final
+ provided
+
+
+
+ ch.qos.logback
+ logback-classic
+ 1.1.2
+
+
+
+ org.apache.sling
+ org.apache.sling.commons.json
+ 2.0.10
+
+
+
+ org.jboss.resteasy
+ resteasy-multipart-provider
+ 2.3.1.GA
+
+
+
+ commons-io
+ commons-io
+ 2.4
+
+
+
+ commons-httpclient
+ commons-httpclient
+ 3.1
+
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+
+
+
+ joda-time
+ joda-time
+ 2.7
+
+
+
+
+ mage-stats-ws
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ 1.7
+ 1.7
+
+
+
+ org.apache.maven.plugins
+ maven-war-plugin
+ 2.6
+
+ src\main\webapp\WEB-INF\web.xml
+ .
+
+
+
+ org.codehaus.mojo
+ aspectj-maven-plugin
+ 1.7
+
+
+
+ ${project.basedir}/src/main/java
+
+
+ 1.7
+
+
+
+
+ compile
+
+
+
+
+
+
+
+
+ UTF-8
+
+
diff --git a/Mage.Tests/pom.xml b/Mage.Tests/pom.xml
index 3eff6568962..7a119919a37 100644
--- a/Mage.Tests/pom.xml
+++ b/Mage.Tests/pom.xml
@@ -1,109 +1,109 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-tests
- jar
- Mage Tests
-
-
-
-
-
- ${project.groupId}
- mage
- ${mage-version}
-
-
- ${project.groupId}
- mage-common
- ${mage-version}
-
-
- ${project.groupId}
- mage-sets
- ${mage-version}
-
-
- ${project.groupId}
- mage-server
- ${mage-version}
-
-
- junit
- junit
- test
-
-
- ${project.groupId}
- mage-game-twoplayerduel
- ${project.version}
- compile
-
-
- ${project.groupId}
- mage-player-ai
- ${project.version}
- compile
-
-
-
- log4j
- log4j
- jar
-
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
-
- -Dfile.encoding=UTF-8
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-clean-plugin
- 2.5
-
-
-
- db
-
-
-
-
-
- mage-tests
-
-
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-tests
+ jar
+ Mage Tests
+
+
+
+
+
+ ${project.groupId}
+ mage
+ ${mage-version}
+
+
+ ${project.groupId}
+ mage-common
+ ${mage-version}
+
+
+ ${project.groupId}
+ mage-sets
+ ${mage-version}
+
+
+ ${project.groupId}
+ mage-server
+ ${mage-version}
+
+
+ junit
+ junit
+ test
+
+
+ ${project.groupId}
+ mage-game-twoplayerduel
+ ${project.version}
+ compile
+
+
+ ${project.groupId}
+ mage-player-ai
+ ${project.version}
+ compile
+
+
+
+ log4j
+ log4j
+ jar
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ -Dfile.encoding=UTF-8
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-clean-plugin
+ 2.5
+
+
+
+ db
+
+
+
+
+
+ mage-tests
+
+
+
+
+
diff --git a/Mage.Tests/src/test/java/org/mage/test/multiplayer/MultiplayerTriggerTest.java b/Mage.Tests/src/test/java/org/mage/test/multiplayer/MultiplayerTriggerTest.java
new file mode 100644
index 00000000000..c2d598c72cc
--- /dev/null
+++ b/Mage.Tests/src/test/java/org/mage/test/multiplayer/MultiplayerTriggerTest.java
@@ -0,0 +1,43 @@
+package org.mage.test.multiplayer;
+
+import mage.constants.MultiplayerAttackOption;
+import mage.constants.PhaseStep;
+import mage.constants.RangeOfInfluence;
+import mage.constants.Zone;
+import mage.game.FreeForAll;
+import mage.game.Game;
+import mage.game.GameException;
+import org.junit.Test;
+import org.mage.test.serverside.base.CardTestMultiPlayerBase;
+
+import java.io.FileNotFoundException;
+
+public class MultiplayerTriggerTest extends CardTestMultiPlayerBase {
+
+ @Override
+ protected Game createNewGameAndPlayers() throws GameException, FileNotFoundException {
+ Game game = new FreeForAll(MultiplayerAttackOption.MULTIPLE, RangeOfInfluence.ALL, 0, 40);
+ // Player order: A -> D -> C -> B
+ playerA = createPlayer(game, playerA, "PlayerA");
+ playerB = createPlayer(game, playerB, "PlayerB");
+ playerC = createPlayer(game, playerC, "PlayerC");
+ playerD = createPlayer(game, playerD, "PlayerD");
+ return game;
+ }
+
+ @Test
+ public void testMultiplayerAttackStinkdrinkerBanditTrigger(){
+ String pestermite = "Pestermite";
+ String stinkdrinker = "Stinkdrinker Bandit";
+ addCard(Zone.BATTLEFIELD, playerA, stinkdrinker);
+ addCard(Zone.BATTLEFIELD, playerA, pestermite, 1);
+
+ attack(1, playerA, pestermite, playerB);
+ attack(1, playerA, stinkdrinker, playerC);
+
+ setStopAt(1, PhaseStep.POSTCOMBAT_MAIN);
+ execute();
+
+ assertPowerToughness(playerA, pestermite, 4, 2);
+ }
+}
diff --git a/Mage.Updater/pom.xml b/Mage.Updater/pom.xml
index affe1bfddf1..ae6f7107bd1 100644
--- a/Mage.Updater/pom.xml
+++ b/Mage.Updater/pom.xml
@@ -1,31 +1,31 @@
-
-
-
- mage-root
- org.mage
- 1.4.23
-
- 4.0.0
-
- org.mage
- mage-updater
- Mage Updater
-
-
-
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- com.magefree.update.Updater
-
-
-
-
-
-
+
+
+
+ mage-root
+ org.mage
+ 1.4.24
+
+ 4.0.0
+
+ org.mage
+ mage-updater
+ Mage Updater
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ com.magefree.update.Updater
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Mage.Verify/pom.xml b/Mage.Verify/pom.xml
index 278e9f64845..e25e894db3d 100644
--- a/Mage.Verify/pom.xml
+++ b/Mage.Verify/pom.xml
@@ -1,76 +1,76 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage-verify
- jar
- Mage Verify
-
-
-
- ${project.groupId}
- mage
- ${mage-version}
-
-
- ${project.groupId}
- mage-sets
- ${mage-version}
-
-
- junit
- junit
- test
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.6.3
-
-
-
- log4j
- log4j
- jar
-
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
-
- -Dfile.encoding=UTF-8
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
- mage-verify
-
-
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage-verify
+ jar
+ Mage Verify
+
+
+
+ ${project.groupId}
+ mage
+ ${mage-version}
+
+
+ ${project.groupId}
+ mage-sets
+ ${mage-version}
+
+
+ junit
+ junit
+ test
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.6.3
+
+
+
+ log4j
+ log4j
+ jar
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+
+ -Dfile.encoding=UTF-8
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+ mage-verify
+
+
+
+
+
diff --git a/Mage/pom.xml b/Mage/pom.xml
index b9cd161d86f..178d3afc6b0 100644
--- a/Mage/pom.xml
+++ b/Mage/pom.xml
@@ -1,173 +1,173 @@
-
-
- 4.0.0
-
-
- org.mage
- mage-root
- 1.4.23
-
-
- mage
- jar
- Mage Framework
-
-
-
- log4j
- log4j
- jar
-
-
-
- com.h2database
- h2
- 1.4.187
- runtime
-
-
- com.j256.ormlite
- ormlite-jdbc
- 4.48
-
-
- junit
- junit
-
-
- com.google.protobuf
- protobuf-java
- ${protobuf.version}
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
- maven-resources-plugin
-
- UTF-8
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-dependency-plugin
- ${maven-dependency-plugin.version}
-
-
- copy-protoc
- generate-sources
-
- copy
-
-
-
-
- com.google.protobuf
- protoc
- ${protobuf.version}
- ${os.detected.classifier}
- exe
- true
- ${project.build.directory}
-
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-antrun-plugin
- ${maven-antrun-plugin.version}
-
-
- exec-protoc
- generate-sources
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- run
-
-
-
-
-
-
- org.codehaus.mojo
- build-helper-maven-plugin
- ${build-helper-maven-plugin.version}
-
-
- add-classes
- generate-sources
-
- add-source
-
-
-
- ${protobuf.output.directory}
-
-
-
-
-
-
-
- mage
-
-
-
-
-
- kr.motd.maven
- os-maven-plugin
- ${os-maven-plugin.version}
-
-
-
-
-
-
-
- ${project.basedir}/src/main/proto
- ${project.build.directory}/generated-sources
-
-
- 1.9.1
- 1.8
- 2.10
- 2.4.2
- 1.4.1.Final
- 3.0.0-beta-1
-
-
-
+
+
+ 4.0.0
+
+
+ org.mage
+ mage-root
+ 1.4.24
+
+
+ mage
+ jar
+ Mage Framework
+
+
+
+ log4j
+ log4j
+ jar
+
+
+
+ com.h2database
+ h2
+ 1.4.187
+ runtime
+
+
+ com.j256.ormlite
+ ormlite-jdbc
+ 4.48
+
+
+ junit
+ junit
+
+
+ com.google.protobuf
+ protobuf-java
+ ${protobuf.version}
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ maven-resources-plugin
+
+ UTF-8
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ ${maven-dependency-plugin.version}
+
+
+ copy-protoc
+ generate-sources
+
+ copy
+
+
+
+
+ com.google.protobuf
+ protoc
+ ${protobuf.version}
+ ${os.detected.classifier}
+ exe
+ true
+ ${project.build.directory}
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+ ${maven-antrun-plugin.version}
+
+
+ exec-protoc
+ generate-sources
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ run
+
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ ${build-helper-maven-plugin.version}
+
+
+ add-classes
+ generate-sources
+
+ add-source
+
+
+
+ ${protobuf.output.directory}
+
+
+
+
+
+
+
+ mage
+
+
+
+
+
+ kr.motd.maven
+ os-maven-plugin
+ ${os-maven-plugin.version}
+
+
+
+
+
+
+
+ ${project.basedir}/src/main/proto
+ ${project.build.directory}/generated-sources
+
+
+ 1.9.1
+ 1.8
+ 2.10
+ 2.4.2
+ 1.4.1.Final
+ 3.0.0-beta-1
+
+
+
diff --git a/Mage/src/main/java/mage/abilities/condition/common/DashedCondition.java b/Mage/src/main/java/mage/abilities/condition/common/DashedCondition.java
index bbf1157f6db..072a7b1a892 100644
--- a/Mage/src/main/java/mage/abilities/condition/common/DashedCondition.java
+++ b/Mage/src/main/java/mage/abilities/condition/common/DashedCondition.java
@@ -45,13 +45,10 @@ public enum DashedCondition implements Condition {
public boolean apply(Game game, Ability source) {
Card card = game.getCard(source.getSourceId());
if (card != null) {
- for (Ability ability : card.getAbilities()) {
- if (ability instanceof DashAbility) {
- if (((DashAbility) ability).isActivated(source, game)) {
- return true;
- }
- }
- }
+ return card.getAbilities().stream()
+ .filter(a -> a instanceof DashAbility)
+ .anyMatch(d -> ((DashAbility)d).isActivated(source, game));
+
}
return false;
}
diff --git a/Mage/src/main/java/mage/abilities/condition/common/EvokedCondition.java b/Mage/src/main/java/mage/abilities/condition/common/EvokedCondition.java
index dc1da194f0c..8c455bde6c2 100644
--- a/Mage/src/main/java/mage/abilities/condition/common/EvokedCondition.java
+++ b/Mage/src/main/java/mage/abilities/condition/common/EvokedCondition.java
@@ -48,13 +48,9 @@ public enum EvokedCondition implements Condition {
public boolean apply(Game game, Ability source) {
Card card = game.getCard(source.getSourceId());
if (card != null) {
- for (Ability ability: card.getAbilities()) {
- if (ability instanceof EvokeAbility) {
- if(((EvokeAbility) ability).isActivated(source, game)) {
- return true;
- }
- }
- }
+ return card.getAbilities().stream()
+ .filter(ab -> ab instanceof EvokeAbility)
+ .anyMatch(evoke -> ((EvokeAbility) evoke).isActivated(source, game));
}
return false;
}
diff --git a/Mage/src/main/java/mage/abilities/costs/mana/ManaCosts.java b/Mage/src/main/java/mage/abilities/costs/mana/ManaCosts.java
index 4a129a6cc15..78b8299d059 100644
--- a/Mage/src/main/java/mage/abilities/costs/mana/ManaCosts.java
+++ b/Mage/src/main/java/mage/abilities/costs/mana/ManaCosts.java
@@ -27,13 +27,15 @@
*/
package mage.abilities.costs.mana;
-import java.util.List;
-import java.util.UUID;
import mage.Mana;
import mage.abilities.Ability;
import mage.abilities.costs.VariableCost;
import mage.game.Game;
+import java.util.List;
+import java.util.UUID;
+import java.util.stream.Collectors;
+
/**
*
* @author BetaSteward_at_googlemail.com
@@ -63,14 +65,10 @@ public interface ManaCosts extends List, ManaCost {
static ManaCosts removeVariableManaCost(ManaCosts m) {
- ManaCosts manaCosts = new ManaCostsImpl<>();
- for(ManaCost manaCost : m){
- if(!(manaCost instanceof VariableManaCost)){
- manaCosts.add(manaCost);
+ return m.stream()
+ .filter(mc -> !(mc instanceof VariableManaCost))
+ .collect(Collectors.toCollection(ManaCostsImpl::new));
- }
- }
- return manaCosts;
}
}
diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/DiscardCostCardConvertedMana.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/DiscardCostCardConvertedMana.java
index 0b51372789d..145cf7ddafd 100644
--- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/DiscardCostCardConvertedMana.java
+++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/DiscardCostCardConvertedMana.java
@@ -18,11 +18,7 @@ public class DiscardCostCardConvertedMana implements DynamicValue {
for (Cost cost : sourceAbility.getCosts()) {
if (cost instanceof DiscardTargetCost) {
DiscardTargetCost discardCost = (DiscardTargetCost) cost;
- int cmc = 0;
- for (Card card : discardCost.getCards()) {
- cmc += card.getConvertedManaCost();
- }
- return cmc;
+ return discardCost.getCards().stream().mapToInt(Card::getConvertedManaCost).sum();
}
}
return 0;
diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesPower.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesPower.java
index 3c99127868c..290a303c887 100644
--- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesPower.java
+++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesPower.java
@@ -6,7 +6,6 @@ import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.effects.Effect;
import mage.game.Game;
-import mage.game.permanent.Permanent;
/**
* @author LevelX2
@@ -18,11 +17,8 @@ public class SacrificeCostCreaturesPower implements DynamicValue {
for (Cost cost : sourceAbility.getCosts()) {
if (cost instanceof SacrificeTargetCost) {
SacrificeTargetCost sacrificeCost = (SacrificeTargetCost) cost;
- int powerSum = 0;
- for (Permanent permanent : sacrificeCost.getPermanents()) {
- powerSum += permanent.getPower().getValue();
- }
- return powerSum;
+ return sacrificeCost.getPermanents()
+ .stream().mapToInt(p -> p.getPower().getValue()).sum();
}
}
return 0;
diff --git a/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesToughness.java b/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesToughness.java
index 9864669877b..bfc03a261ce 100644
--- a/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesToughness.java
+++ b/Mage/src/main/java/mage/abilities/dynamicvalue/common/SacrificeCostCreaturesToughness.java
@@ -6,7 +6,6 @@ import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.effects.Effect;
import mage.game.Game;
-import mage.game.permanent.Permanent;
/**
* @author LevelX2
@@ -18,11 +17,7 @@ public class SacrificeCostCreaturesToughness implements DynamicValue {
for (Cost cost : sourceAbility.getCosts()) {
if (cost instanceof SacrificeTargetCost) {
SacrificeTargetCost sacrificeCost = (SacrificeTargetCost) cost;
- int toughnessSum = 0;
- for (Permanent permanent : sacrificeCost.getPermanents()) {
- toughnessSum += permanent.getToughness().getValue();
- }
- return toughnessSum;
+ return sacrificeCost.getPermanents().stream().mapToInt(p -> p.getToughness().getValue()).sum();
}
}
return 0;
diff --git a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java
index fe9421ac611..ce90e572088 100644
--- a/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java
+++ b/Mage/src/main/java/mage/abilities/keyword/ConspireAbility.java
@@ -27,10 +27,6 @@
*/
package mage.abilities.keyword;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.SpellAbility;
import mage.abilities.StaticAbility;
@@ -56,6 +52,11 @@ import mage.game.stack.StackObject;
import mage.players.Player;
import mage.target.common.TargetControlledPermanent;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Set;
+import java.util.UUID;
+
/*
* 702.77. Conspire
* 702.77a Conspire is a keyword that represents two abilities.
@@ -165,7 +166,7 @@ public class ConspireAbility extends StaticAbility implements OptionalAdditional
if (conspireCost.canPay(ability, getSourceId(), getControllerId(), game)
&& player.chooseUse(Outcome.Benefit, "Pay " + conspireCost.getText(false) + " ?", ability, game)) {
activateConspire(ability, game);
- for (Iterator it = ((Costs) conspireCost).iterator(); it.hasNext();) {
+ for (Iterator it = conspireCost.iterator(); it.hasNext(); ) {
Cost cost = (Cost) it.next();
ability.getCosts().add(cost.copy());
}
diff --git a/Mage/src/main/java/mage/cards/repository/CardRepository.java b/Mage/src/main/java/mage/cards/repository/CardRepository.java
index ea9f0b42800..25ad5641130 100644
--- a/Mage/src/main/java/mage/cards/repository/CardRepository.java
+++ b/Mage/src/main/java/mage/cards/repository/CardRepository.java
@@ -58,7 +58,7 @@ public enum CardRepository {
// raise this if db structure was changed
private static final long CARD_DB_VERSION = 51;
// raise this if new cards were added to the server
- private static final long CARD_CONTENT_VERSION = 81;
+ private static final long CARD_CONTENT_VERSION = 82;
private final TreeSet landTypes = new TreeSet<>();
private Dao cardDao;
private Set classNames;
diff --git a/Mage/src/main/java/mage/cards/repository/ExpansionRepository.java b/Mage/src/main/java/mage/cards/repository/ExpansionRepository.java
index 4ca51c1540f..51ae3471b70 100644
--- a/Mage/src/main/java/mage/cards/repository/ExpansionRepository.java
+++ b/Mage/src/main/java/mage/cards/repository/ExpansionRepository.java
@@ -28,7 +28,7 @@ public enum ExpansionRepository {
private static final String JDBC_URL = "jdbc:h2:file:./db/cards.h2;AUTO_SERVER=TRUE";
private static final String VERSION_ENTITY_NAME = "expansion";
private static final long EXPANSION_DB_VERSION = 5;
- private static final long EXPANSION_CONTENT_VERSION = 13;
+ private static final long EXPANSION_CONTENT_VERSION = 14;
private Dao expansionDao;
diff --git a/Mage/src/main/java/mage/game/draft/DraftImpl.java b/Mage/src/main/java/mage/game/draft/DraftImpl.java
index c76b6fd774e..56305b33c4c 100644
--- a/Mage/src/main/java/mage/game/draft/DraftImpl.java
+++ b/Mage/src/main/java/mage/game/draft/DraftImpl.java
@@ -28,20 +28,16 @@
package mage.game.draft;
-import java.util.*;
-
import mage.cards.Card;
import mage.cards.ExpansionSet;
import mage.game.draft.DraftOptions.TimingOption;
-import mage.game.events.Listener;
-import mage.game.events.PlayerQueryEvent;
-import mage.game.events.PlayerQueryEventSource;
-import mage.game.events.TableEvent;
+import mage.game.events.*;
import mage.game.events.TableEvent.EventType;
-import mage.game.events.TableEventSource;
import mage.players.Player;
import mage.players.PlayerList;
+import java.util.*;
+
/**
*
* @author BetaSteward_at_googlemail.com
@@ -262,22 +258,16 @@ public abstract class DraftImpl implements Draft {
if(isAbort()) {
return true;
}
- for (DraftPlayer player: players.values()) {
- if (player.isPicking()) {
- return false;
- }
- }
- return true;
+ return players.values()
+ .stream()
+ .noneMatch(DraftPlayer::isPicking);
+
}
@Override
public boolean allJoined() {
- for (DraftPlayer player: this.players.values()) {
- if (!player.isJoined()) {
- return false;
- }
- }
- return true;
+ return players.values().stream()
+ .allMatch(DraftPlayer::isJoined);
}
@Override
diff --git a/Mage/src/main/java/mage/game/permanent/token/CrestedSunmareToken.java b/Mage/src/main/java/mage/game/permanent/token/CrestedSunmareToken.java
new file mode 100644
index 00000000000..5c102cd8aeb
--- /dev/null
+++ b/Mage/src/main/java/mage/game/permanent/token/CrestedSunmareToken.java
@@ -0,0 +1,47 @@
+/*
+* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without modification, are
+* permitted provided that the following conditions are met:
+*
+* 1. Redistributions of source code must retain the above copyright notice, this list of
+* conditions and the following disclaimer.
+*
+* 2. Redistributions in binary form must reproduce the above copyright notice, this list
+* of conditions and the following disclaimer in the documentation and/or other materials
+* provided with the distribution.
+*
+* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com AS IS AND ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
+* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+* The views and conclusions contained in the software and documentation are those of the
+* authors and should not be interpreted as representing official policies, either expressed
+* or implied, of BetaSteward_at_googlemail.com.
+ */
+package mage.game.permanent.token;
+
+import mage.constants.CardType;
+import mage.MageInt;
+
+/**
+ *
+ * @author spjspj
+ */
+public class CrestedSunmareToken extends Token {
+
+ public CrestedSunmareToken() {
+ super("Horse", "5/5 white Horse creature token");
+ power = new MageInt(5);
+ toughness = new MageInt(5);
+ color.setWhite(true);
+ subtype.add("Horse");
+ cardType.add(CardType.CREATURE);
+ }
+}
diff --git a/pom.xml b/pom.xml
index f181416215d..7f5fd18e3f6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,110 +1,110 @@
-
-
-
- 4.0.0
-
- org.mage
- mage-root
- 1.4.23
- pom
- Mage Root
- Mage Root POM
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.5.1
-
- 1.8
- 1.8
- UTF-8
-
- false
-
-
-
-
- maven-resources-plugin
- 2.7
-
- UTF-8
-
-
-
- maven-jar-plugin
- 2.5
-
-
-
- MageTeam
-
-
-
-
-
-
-
- Mage
- Mage.Common
- Mage.Server
- Mage.Sets
- Mage.Client
- Mage.Plugins
- Mage.Server.Plugins
- Mage.Server.Console
- Mage.Tests
- Mage.Updater
- Mage.Stats
- Mage.Verify
-
-
-
-
- jboss-public-repository
- JBoss Repository
- https://repository.jboss.org/nexus/content/groups/public
-
-
- never
-
-
- daily
-
-
-
- local-project-repo
- file://${basedir}/repository
-
-
-
-
- 1.4.23
- UTF-8
-
-
-
-
-
- junit
- junit
- 4.12
-
-
- log4j
- log4j
- 1.2.17
-
-
- org.slf4j
- slf4j-log4j12
- 1.7.19
-
-
-
-
+
+
+
+ 4.0.0
+
+ org.mage
+ mage-root
+ 1.4.24
+ pom
+ Mage Root
+ Mage Root POM
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.5.1
+
+ 1.8
+ 1.8
+ UTF-8
+
+ false
+
+
+
+
+ maven-resources-plugin
+ 2.7
+
+ UTF-8
+
+
+
+ maven-jar-plugin
+ 2.5
+
+
+
+ MageTeam
+
+
+
+
+
+
+
+ Mage
+ Mage.Common
+ Mage.Server
+ Mage.Sets
+ Mage.Client
+ Mage.Plugins
+ Mage.Server.Plugins
+ Mage.Server.Console
+ Mage.Tests
+ Mage.Updater
+ Mage.Stats
+ Mage.Verify
+
+
+
+
+ jboss-public-repository
+ JBoss Repository
+ https://repository.jboss.org/nexus/content/groups/public
+
+
+ never
+
+
+ daily
+
+
+
+ local-project-repo
+ file://${basedir}/repository
+
+
+
+
+ 1.4.24
+ UTF-8
+
+
+
+
+
+ junit
+ junit
+ 4.12
+
+
+ log4j
+ log4j
+ 1.2.17
+
+
+ org.slf4j
+ slf4j-log4j12
+ 1.7.19
+
+
+
+