This commit is contained in:
BetaSteward 2010-12-03 04:37:09 +00:00
parent 2e2ff65284
commit d97286b5d8
6 changed files with 17 additions and 11 deletions

View file

@ -3,16 +3,16 @@
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../Config.xsd">
<server serverAddress="localhost" serverName="mage-server" port="17171" maxGameThreads="10" maxSecondsIdle="600"/>
<playerTypes>
<playerType name="Human" jar="Mage.Player.Human.jar" className="mage.player.human.HumanPlayer"/>
<playerType name="Computer - default" jar="Mage.Player.AI.jar" className="mage.player.ai.ComputerPlayer"/>
<playerType name="Computer - minimax" jar="Mage.Player.AIMinimax.jar" className="mage.player.ai.ComputerPlayer2"/>
<playerType name="Computer - minimax hybrid" jar="Mage.Player.AIMinimax.jar" className="mage.player.ai.ComputerPlayer3"/>
<playerType name="Human" jar="Mage-Player-Human-0.5.jar" className="mage.player.human.HumanPlayer"/>
<playerType name="Computer - default" jar="Mage-Player-AI-0.5.jar" className="mage.player.ai.ComputerPlayer"/>
<playerType name="Computer - minimax" jar="Mage-Player-AIMinimax-0.5.jar" className="mage.player.ai.ComputerPlayer2"/>
<playerType name="Computer - minimax hybrid" jar="Mage-Player-AIMinimax-0.5.jar" className="mage.player.ai.ComputerPlayer3"/>
</playerTypes>
<gameTypes>
<gameType name="Two Player Duel" jar="Mage.Game.TwoPlayerDuel.jar" className="mage.game.TwoPlayerDuel" typeName="mage.game.TwoPlayerDuelType"/>
<gameType name="Free For All" jar="Mage.Game.FreeForAll.jar" className="mage.game.FreeForAll" typeName="mage.game.FreeForAllType"/>
<gameType name="Two Player Duel" jar="Mage-Game-TwoPlayerDuel-0.5.jar" className="mage.game.TwoPlayerDuel" typeName="mage.game.TwoPlayerDuelType"/>
<gameType name="Free For All" jar="Mage-Game-FreeForAll-0.5.jar" className="mage.game.FreeForAll" typeName="mage.game.FreeForAllType"/>
</gameTypes>
<deckTypes>
<deckType name="Constructed" jar="Mage.Deck.Constructed.jar" className="mage.deck.Constructed"/>
<deckType name="Constructed" jar="Mage-Deck-Constructed-0.5.jar" className="mage.deck.Constructed"/>
</deckTypes>
</config>

View file

@ -53,6 +53,7 @@ public class Main {
private final static String testModeArg = "-testMode=";
private final static String pluginFolder = "plugins";
private final static String version = "0.5";
public static PluginClassLoader classLoader = new PluginClassLoader();
public static ServerImpl server;
@ -62,7 +63,7 @@ public class Main {
*/
public static void main(String[] args) {
logger.info("Starting MAGE server version " + Main.class.getPackage().getImplementationVersion());
logger.info("Starting MAGE server version " + version);
logger.info("Logging level: " + Logging.getLevel(logger));
deleteSavedGames();
ConfigSettings config = ConfigSettings.getInstance();

View file

@ -31,6 +31,7 @@ package mage.server;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.server.ExportException;
import java.rmi.server.RemoteServer;
import java.rmi.server.UnicastRemoteObject;
import java.util.List;
@ -76,6 +77,8 @@ public class ServerImpl extends RemoteServer implements Server {
logger.info("Started MAGE server - listening on port " + port);
if (testMode)
logger.info("MAGE server running in test mode");
} catch (ExportException ex) {
logger.severe("ERROR: Unable to start Mage Server - another server is likely running");
} catch (RemoteException ex) {
logger.log(Level.SEVERE, "Failed to start RMI server at port " + port, ex);
}

View file

@ -112,8 +112,10 @@ class SeaGateOracleEffect extends OneShotEffect<SeaGateOracleEffect> {
player.lookAtCards(cards, game);
player.choose(cards, target, game);
card = cards.get(target.getFirstTarget(), game);
card.moveToZone(Zone.HAND, source.getId(), game, false);
cards.remove(card);
if (card != null) {
card.moveToZone(Zone.HAND, source.getId(), game, false);
cards.remove(card);
}
for (Card card1: cards.getCards(game)) {
card1.moveToZone(Zone.LIBRARY, source.getId(), game, false);
}

View file

@ -113,7 +113,7 @@ public class PlayerQueryEvent extends EventObject implements ExternalEvent, Seri
}
public static PlayerQueryEvent lookEvent(UUID playerId, String message, Cards cards) {
return new PlayerQueryEvent(playerId, message, null, null, cards, null, QueryType.LOOK, 0, 0, false);
return new PlayerQueryEvent(playerId, message, null, null, null, cards, QueryType.LOOK, 0, 0, false);
}
public String getMessage() {