TamaGolem/src/Game.java

68 lines
2.1 KiB
Java

package it.arnaldo.unibs.tamagolem;
public class Game {
private final Player player1;
private final Player player2;
private final ElementGraph worldBalance;
private boolean restart = false;
public Game(Player player1, Player player2, ElementGraph worldBalance) {
this.player1 = player1;
this.player2 = player2;
this.worldBalance = worldBalance;
}
public Player getPlayer1() {
return player1;
}
public Player getPlayer2() {
return player2;
}
public ElementGraph getWorldBalance() {
return worldBalance;
}
public boolean isRestart() {
return restart;
}
public void setRestart(boolean restart) {
this.restart = restart;
}
public void start() {
// N
int numberOfElements = worldBalance.getElements().size();
// P
int numberOfStones = (int) Math.ceil((numberOfElements + 1) / 3.0) + 1;
// G
int numberOfTamaGolems = (int) Math.ceil(((numberOfElements - 1) * (numberOfElements - 2)) / (2.0 * numberOfStones));
// S
int totalNumberOfStones = (int) Math.ceil((2.0 * numberOfTamaGolems * numberOfStones));
// Stones for each element
int numberOfStonesPerElement = totalNumberOfStones / numberOfElements;
// deve essere uguale alla somma della potenza di tutti gli elementi
int totalPower = worldBalance.getTotalStrength();
System.out.println("Game started between " + player1.getName() + " and " + player2.getName());
System.out.println("Number of stones: " + numberOfStones);
System.out.println("Number of elements: " + numberOfElements);
System.out.println("Number of TamaGolems for every player: " + numberOfTamaGolems);
System.out.println("Total number of stones: " + totalNumberOfStones);
System.out.println("Total number of stones for each element: " + numberOfStonesPerElement);
System.out.println("Total power: " + totalPower);
System.out.println("Life points: " + totalPower);
System.out.println("Press R to create a new game");
}
}