mirror of
https://github.com/2OOP/pism.git
synced 2026-02-04 10:54:51 +00:00
Code cleanup
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
package org.toop.game.games.reversi;
|
||||
package org.toop.framework.game.games.reversi;
|
||||
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
import org.toop.framework.gameFramework.GameState;
|
||||
import org.toop.framework.gameFramework.model.game.PlayResult;
|
||||
import org.toop.framework.gameFramework.model.player.Player;
|
||||
import org.toop.game.BitboardGame;
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
|
||||
public class BitboardReversi extends BitboardGame {
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package org.toop.game.games.tictactoe;
|
||||
package org.toop.framework.game.games.tictactoe;
|
||||
|
||||
import org.toop.framework.gameFramework.GameState;
|
||||
import org.toop.framework.gameFramework.model.game.PlayResult;
|
||||
import org.toop.framework.gameFramework.model.player.Player;
|
||||
import org.toop.game.BitboardGame;
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
|
||||
public class BitboardTicTacToe extends BitboardGame {
|
||||
private final long[] winningLines = {
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package org.toop.framework.networking.server;
|
||||
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
import org.toop.framework.gameFramework.model.game.TurnBasedGame;
|
||||
|
||||
public class Game implements OnlineGame {
|
||||
public class Game implements OnlineGame<TurnBasedGame> {
|
||||
|
||||
private long id;
|
||||
private User[] users;
|
||||
private GameDefinition<BitboardGame<?>> game;
|
||||
private TurnBasedGame game;
|
||||
|
||||
public Game(GameDefinition game, User... users) {
|
||||
public Game(TurnBasedGame game, User... users) {
|
||||
this.game = game;
|
||||
this.users = users;
|
||||
}
|
||||
@@ -19,7 +19,7 @@ public class Game implements OnlineGame {
|
||||
}
|
||||
|
||||
@Override
|
||||
public GameDefinition game() {
|
||||
public TurnBasedGame game() {
|
||||
return game;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.toop.framework.networking.server;
|
||||
|
||||
import org.toop.framework.gameFramework.model.game.TurnBasedGame;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
|
||||
public class GameDefinition<T> {
|
||||
|
||||
@@ -13,6 +13,7 @@ import io.netty.handler.logging.LogLevel;
|
||||
import io.netty.handler.logging.LoggingHandler;
|
||||
import org.toop.framework.SnowflakeGenerator;
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
import org.toop.framework.gameFramework.model.game.TurnBasedGame;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -20,7 +21,7 @@ public class MasterServer {
|
||||
private final int port;
|
||||
public final Server gs;
|
||||
|
||||
public MasterServer(int port, Map<String, GameDefinition<BitboardGame<?>>> gameTypes) {
|
||||
public MasterServer(int port, Map<String, Class<? extends TurnBasedGame>> gameTypes) {
|
||||
this.port = port;
|
||||
this.gs = new Server(gameTypes);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.toop.framework.networking.server;
|
||||
|
||||
public interface OnlineGame {
|
||||
public interface OnlineGame<T> {
|
||||
long id();
|
||||
GameDefinition game();
|
||||
T game();
|
||||
User[] users();
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package org.toop.framework.networking.server;
|
||||
|
||||
import org.toop.framework.game.BitboardGame;
|
||||
import org.toop.framework.gameFramework.model.game.TurnBasedGame;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -9,11 +10,11 @@ import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
public class Server implements GameServer {
|
||||
|
||||
final private Map<String, GameDefinition<BitboardGame<?>>> gameTypes;
|
||||
public List<OnlineGame> games = new ArrayList<>();
|
||||
final private Map<String, Class<? extends TurnBasedGame>> gameTypes;
|
||||
public List<OnlineGame<TurnBasedGame>> games = new ArrayList<>();
|
||||
final private Map<Long, ServerUser> users = new ConcurrentHashMap<>();
|
||||
|
||||
public Server(Map<String, GameDefinition<BitboardGame<?>>> gameTypes) {
|
||||
public Server(Map<String, Class<? extends TurnBasedGame>> gameTypes) {
|
||||
this.gameTypes = gameTypes;
|
||||
}
|
||||
|
||||
@@ -37,8 +38,8 @@ public class Server implements GameServer {
|
||||
if (!gameTypes.containsKey(gameType)) return;
|
||||
|
||||
try {
|
||||
var game = new Game(gameTypes.get(gameType).create(), users);
|
||||
games.addLast(new Game(game, users));
|
||||
var game = new Game(gameTypes.get(gameType).getDeclaredConstructor().newInstance(), users);
|
||||
games.addLast(game);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package org.toop.framework.networking.server;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
||||
public class ServerTest {
|
||||
|
||||
@BeforeEach
|
||||
public void setup() {
|
||||
new Server();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user