TamaGolem/src/Game.java

50 lines
1.9 KiB
Java
Raw Normal View History

2025-05-10 13:12:46 +02:00
package it.arnaldo.unibs.tamagolem;
public class Game {
private final Player player1;
private final Player player2;
private final ElementGraph worldBalance;
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 void start() {
int numberOfElements = worldBalance.getElements().size();
2025-05-13 17:02:45 +02:00
int numberOfStones = (int) Math.ceil((numberOfElements + 1) / 3.0);
numberOfStones += 1;
int numberOfTamaGolems = (int) Math.ceil(((numberOfElements - 1) * (numberOfElements - 2)) / (2.0 * numberOfStones));
int totalNumberOfStones = (int) Math.ceil((2.0 * numberOfTamaGolems * numberOfStones) / numberOfElements) * numberOfElements;
2025-05-10 13:12:46 +02:00
int numberOfStonesPerElement = totalNumberOfStones / numberOfElements;
2025-05-13 17:02:45 +02:00
2025-05-10 13:12:46 +02:00
// deve essere uguale alla somma della potenza di tutti gli elementi
2025-05-13 17:02:45 +02:00
int totalPower = worldBalance.getTotalStrength();
int lifePoints = totalPower;
2025-05-10 13:12:46 +02:00
System.out.println("Game started between " + player1.getName() + " and " + player2.getName());
2025-05-13 17:02:45 +02:00
System.out.println("Number of stones: " + numberOfStones);
System.out.println("Number of elements: " + numberOfElements);
System.out.println("Number of TamaGolems: " + 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: " + lifePoints);
2025-05-10 13:12:46 +02:00
}
}