This commit is contained in:
Luca
2021-11-24 20:29:53 +01:00
parent 980743ef62
commit e076e76c57
13 changed files with 223 additions and 434 deletions

View File

@ -7,12 +7,13 @@ import rip.tilly.bedwars.BedWars;
import rip.tilly.bedwars.game.Game;
import rip.tilly.bedwars.game.GameTeam;
import rip.tilly.bedwars.playerdata.PlayerData;
import rip.tilly.bedwars.playerdata.currentgame.PlayerCurrentGameData;
import rip.tilly.bedwars.playerdata.currentgame.TeamUpgrades;
import rip.tilly.bedwars.upgrades.Upgrade;
import rip.tilly.bedwars.upgrades.UpgradeItem;
import rip.tilly.bedwars.utils.CC;
import rip.tilly.bedwars.utils.menusystem.Menu;
import rip.tilly.bedwars.utils.menusystem.PlayerMenuUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
@ -51,7 +52,7 @@ public class UpgradesMenu extends Menu {
PlayerData playerData = this.main.getPlayerDataManager().getPlayerData(player.getUniqueId());
PlayerCurrentGameData playerCurrentGameData = playerData.getCurrentGameData();
TeamUpgrades teamUpgrades = playerData.getPlayerTeam().getTeamUpgrades();
Game game = this.main.getGameManager().getGame(player.getUniqueId());
@ -63,22 +64,22 @@ public class UpgradesMenu extends Menu {
if (event.getView().getTitle().equalsIgnoreCase(CC.translate("&eUpgrades Menu"))) {
for (UpgradeItem upgradeItem : this.upgradeItems) {
if (upgradeItem.getItemStack(player, playerCurrentGameData).getItemMeta().getDisplayName().equalsIgnoreCase(event.getCurrentItem().getItemMeta().getDisplayName())) {
if (playerCurrentGameData.getCostToUpgrade(upgradeItem.getUpgrade()) == -1) {
if (upgradeItem.getItemStack(player, teamUpgrades).getItemMeta().getDisplayName().equalsIgnoreCase(event.getCurrentItem().getItemMeta().getDisplayName())) {
if (teamUpgrades.getCostToUpgrade(upgradeItem.getUpgrade()) == -1) {
player.sendMessage(CC.translate("&cYour team already has the highest upgrade for &c&l" + upgradeItem.getUpgrade().getFormattedName()));
return;
}
if (upgradeItem.canBuy(player, playerCurrentGameData.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1)) {
upgradeItem.buy(player, playerCurrentGameData.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1, game, gameTeam, playerCurrentGameData);
if (upgradeItem.canBuy(player, teamUpgrades.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1)) {
upgradeItem.buy(player, teamUpgrades.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1, game, gameTeam, teamUpgrades);
new UpgradesMenu(this.main.getPlayerMenuUtil(player)).open(player);
break;
}
player.sendMessage(CC.translate("&cYou do not have enough diamonds for &c&l" + upgradeItem.getUpgrade().getFormattedName() + " " + upgradeItem.getUpgrade().getNumberToRomanNumeral(playerCurrentGameData.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1)));
player.sendMessage(CC.translate("&cYou do not have enough diamonds for &c&l" + upgradeItem.getUpgrade().getFormattedName() + " " + upgradeItem.getUpgrade().getNumberToRomanNumeral(teamUpgrades.getLevelForUpgrade(upgradeItem.getUpgrade()) + 1)));
break;
}
@ -90,7 +91,7 @@ public class UpgradesMenu extends Menu {
public void setMenuItems(Player player) {
PlayerData playerData = this.main.getPlayerDataManager().getPlayerData(player.getUniqueId());
PlayerCurrentGameData playerCurrentGameData = playerData.getCurrentGameData();
TeamUpgrades teamUpgrades = playerData.getPlayerTeam().getTeamUpgrades();
for (int i = 0; i < this.inventory.getSize(); i++) {
this.inventory.setItem(i, this.FILLER_GLASS);
@ -99,7 +100,7 @@ public class UpgradesMenu extends Menu {
AtomicInteger atomicInteger = new AtomicInteger(10);
this.upgradeItems.forEach(itemStack -> {
this.inventory.setItem(atomicInteger.get(), itemStack.getItemStack(player, playerCurrentGameData));
this.inventory.setItem(atomicInteger.get(), itemStack.getItemStack(player, teamUpgrades));
atomicInteger.addAndGet(1);
});