[Jrisk-cvs] SF.net SVN: domination-code:[2548] Domination
Brought to you by:
yuranet
|
From: <yu...@us...> - 2024-06-04 00:33:49
|
Revision: 2548
http://sourceforge.net/p/domination/code/2548
Author: yuranet
Date: 2024-06-04 00:33:46 +0000 (Tue, 04 Jun 2024)
Log Message:
-----------
keep original list of missions in the game as the AI needs to know what missions are possible
Modified Paths:
--------------
Domination/src/net/yura/domination/engine/Risk.java
Domination/swingUI/src/net/yura/domination/ui/swinggui/TestPanel.java
Modified: Domination/src/net/yura/domination/engine/Risk.java
===================================================================
--- Domination/src/net/yura/domination/engine/Risk.java 2024-06-03 22:25:03 UTC (rev 2547)
+++ Domination/src/net/yura/domination/engine/Risk.java 2024-06-04 00:33:46 UTC (rev 2548)
@@ -13,6 +13,7 @@
import java.net.ConnectException;
import java.net.URL;
import java.net.UnknownHostException;
+import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -1031,7 +1032,7 @@
}
else if (Addr.equals("MISSION")) { // a server command
- List m = game.getMissions();
+ List m = new ArrayList(game.getMissions());
List p = game.getPlayers();
for (int c=0; c< p.size() ; c++) {
Modified: Domination/swingUI/src/net/yura/domination/ui/swinggui/TestPanel.java
===================================================================
--- Domination/swingUI/src/net/yura/domination/ui/swinggui/TestPanel.java 2024-06-03 22:25:03 UTC (rev 2547)
+++ Domination/swingUI/src/net/yura/domination/ui/swinggui/TestPanel.java 2024-06-04 00:33:46 UTC (rev 2548)
@@ -32,6 +32,7 @@
import net.yura.domination.engine.core.Card;
import net.yura.domination.engine.core.Continent;
import net.yura.domination.engine.core.Country;
+import net.yura.domination.engine.core.Mission;
import net.yura.domination.engine.core.Player;
import net.yura.domination.engine.core.RiskGame;
import net.yura.domination.guishared.PicturePanel;
@@ -56,6 +57,7 @@
private AbstractTableModel countriesModel;
private AbstractTableModel continentsModel;
private AbstractTableModel cardsModel,cardsModel2;
+ private AbstractTableModel missionsModel;
private AbstractTableModel playersModel;
private AbstractTableModel gameInfo;
private AbstractTableModel commands;
@@ -99,7 +101,7 @@
mapServerNameChack.setActionCommand("checkMapServer");
mapServerNameChack.addActionListener(this);
toolbar.add(mapServerNameChack);
-
+
countriesModel = new AbstractTableModel() {
private final String[] columnNames = { "Color/No.","ID","Name","x","y","Continent","Owner","Armies","No. Neighbours","in","con" };
@@ -277,7 +279,39 @@
return Collections.EMPTY_LIST;
}
};
+
+ missionsModel = new AbstractTableModel() {
+ private final String[] columnNames = { "Mission" };
+
+ public int getColumnCount() {
+ return columnNames.length;
+ }
+
+ public int getRowCount() {
+ RiskGame game = myrisk.getGame();
+ if (game != null) {
+ List missions = game.getMissions();
+ if (missions != null) {
+ return missions.size();
+ }
+ }
+ return 0;
+ }
+
+ public String getColumnName(int col) {
+ return columnNames[col];
+ }
+
+ public Object getValueAt(int row, int col) {
+ Mission mission = (Mission)myrisk.getGame().getMissions().get(row);
+ switch(col) {
+ case 0: return mission.toString();
+ default: throw new RuntimeException();
+ }
+ }
+ };
+
playersModel = new AbstractTableModel() {
private final String[] columnNames = { "Name", "Color", "Type", "Extra Armies", "Armies", "No. Cards", "No. Countries", "No. Player Eliminated", "Capital", "Mission", "Address", "autodefend","autoendgo"};
@@ -462,6 +496,7 @@
views.add( "Cards" , new JScrollPane(new JTable(cardsModel)) );
views.add( "Spent Cards" , new JScrollPane(new JTable(cardsModel2)) );
views.add( "Players" , new JScrollPane(new JTable(playersModel)) );
+ views.add( "Missions" , new JScrollPane(new JTable(missionsModel)) );
views.add( "Game" , new JScrollPane(new JTable(gameInfo)) );
JTable commandsTable = new JTable(commands);
@@ -651,6 +686,7 @@
playersModel.fireTableDataChanged();
gameInfo.fireTableDataChanged();
commands.fireTableDataChanged();
+ missionsModel.fireTableDataChanged();
repaint();
}
|