2023-01-31 17:19:32 +00:00
|
|
|
package com.r0r5chach;
|
|
|
|
|
|
2023-01-31 18:14:21 +00:00
|
|
|
import java.net.URL;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.ResourceBundle;
|
|
|
|
|
|
|
|
|
|
import com.r0r5chach.r6.R6Player;
|
|
|
|
|
import com.r0r5chach.valorant.ValorantPlayer;
|
|
|
|
|
|
2023-01-31 17:19:32 +00:00
|
|
|
import javafx.collections.FXCollections;
|
|
|
|
|
import javafx.fxml.FXML;
|
2023-01-31 18:14:21 +00:00
|
|
|
import javafx.fxml.Initializable;
|
2023-01-31 17:19:32 +00:00
|
|
|
import javafx.scene.control.ListView;
|
2023-01-31 18:14:21 +00:00
|
|
|
import javafx.scene.control.TextField;
|
|
|
|
|
import javafx.scene.text.Text;
|
2023-01-31 17:19:32 +00:00
|
|
|
|
2023-01-31 18:14:21 +00:00
|
|
|
public class MainController implements Initializable {
|
2023-01-31 17:19:32 +00:00
|
|
|
private CompetitorList competitors;
|
2023-01-31 18:14:21 +00:00
|
|
|
private ArrayList<Integer> competitorIds;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
ListView<Integer> competitorsList;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
TextField playerNumber;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
TextField playerName;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
TextField playerLevel;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
Text favoriteCharacters;
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
TextField favoriteAttacker;
|
2023-01-31 17:19:32 +00:00
|
|
|
|
|
|
|
|
@FXML
|
2023-01-31 18:14:21 +00:00
|
|
|
TextField favoriteDefender;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void initialize(URL url, ResourceBundle rb) {
|
2023-01-31 17:19:32 +00:00
|
|
|
loadCompetitors();
|
2023-01-31 18:14:21 +00:00
|
|
|
loadView();
|
|
|
|
|
}
|
2023-01-31 17:19:32 +00:00
|
|
|
|
|
|
|
|
private void loadCompetitors(){
|
|
|
|
|
this.competitors = new Manager().getCompetitors();
|
2023-01-31 18:14:21 +00:00
|
|
|
this.competitorIds = new ArrayList<Integer>();
|
|
|
|
|
for (Competitor player : this.competitors.getCompetitors()) {
|
|
|
|
|
this.competitorIds.add(player.getPlayerNumber());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void loadView() {
|
|
|
|
|
competitorsList.setItems(FXCollections.observableArrayList(this.competitorIds));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@FXML
|
|
|
|
|
public void getCompetitor() {
|
|
|
|
|
Competitor player = this.competitors.getCompetitors().get(this.competitorIds.indexOf(this.competitorsList.getSelectionModel().getSelectedItem()));
|
|
|
|
|
loadPlayer(player);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void loadPlayer(Competitor player) {
|
|
|
|
|
this.playerNumber.setText(String.valueOf(player.getPlayerNumber()));
|
|
|
|
|
this.playerName.setText(player.getPlayerName().getFullName());
|
|
|
|
|
this.playerLevel.setText(player.getPlayerLevel().getRank());
|
|
|
|
|
|
|
|
|
|
if (player instanceof R6Player) {
|
|
|
|
|
this.favoriteAttacker.setText(((R6Player) player).getFavoriteAttacker().getAttacker());
|
|
|
|
|
this.favoriteDefender.setText(((R6Player) player).getFavoriteDefender().getDefender());
|
|
|
|
|
this.favoriteDefender.visibleProperty().set(true);
|
|
|
|
|
this.favoriteCharacters.setText("Favorite Operators");
|
|
|
|
|
}
|
|
|
|
|
else if (player instanceof ValorantPlayer) {
|
|
|
|
|
this.favoriteAttacker.setText(((ValorantPlayer) player).getFavoriteAgent().getAgent());
|
|
|
|
|
this.favoriteDefender.visibleProperty().set(false);
|
|
|
|
|
this.favoriteCharacters.setText("Favorite Agent");
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-31 17:19:32 +00:00
|
|
|
}
|
|
|
|
|
}
|