leendert/src/main/java/nl/minkema/leendert/Game.java

77 lines
2.2 KiB
Java

package nl.minkema.leendert;
import javafx.event.EventHandler;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.Background;
import javafx.scene.layout.BackgroundFill;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.text.Text;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
/**
* @author J0QUE
* @version 1.0
*/
public class Game extends Pane {
public static int[][] locations;
public static final HashMap<Integer, Integer> specials = new HashMap<>();
public static ArrayList<Player> players = new ArrayList<>();
public Game() {
Collections.shuffle(players);
Image bord = new Image(ModLoader.getFile("/svg/Bord.svg"));
ImageView view = new ImageView(bord);
view.setPreserveRatio(true);
view.setFitHeight(500);
view.setX(150);
view.setY(135);
this.getChildren().add(view);
for (int i = 0, locationsLength = locations.length; i < locationsLength; i++) {
int[] k = locations[i];
getChildren().add(new Circle(k[0], k[1], 5, Color.RED));
getChildren().add(new Text(k[0], k[1], String.valueOf(i)));
}
//System.out.print("{");
this.setOnMouseClicked(new EventHandler<MouseEvent>() {
int i = 0;
@Override
public void handle(MouseEvent event) {
System.out.printf("%d: %d,%d,%n", i++, (int) event.getSceneX(), (int) event.getSceneY());
}
});
specials.put(5, 10);
specials.put(15, 7);
Dice dice = new Dice(1100, 700);
this.getChildren().add(dice);
this.getChildren().add(Menu.createButton("Roll", 1100, 650, e -> {
Player p = players.get(Player.getNextActive());
int roll = dice.roll();
p.move(roll);
if (roll == 6) Player.six();
}));
this.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
for (Player p : players) {
this.getChildren().add(p.getImageView());
}
}
}