Change ItemBuilder to have ItemFlag, change hub icons to not display weapon damage

This commit is contained in:
libraryaddict 2015-12-13 16:40:46 +13:00
parent 402530d671
commit 9058428484
4 changed files with 530 additions and 489 deletions

View File

@ -2,7 +2,9 @@ package mineplex.core.itemstack;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -12,6 +14,7 @@ import org.bukkit.Color;
import org.bukkit.FireworkEffect; import org.bukkit.FireworkEffect;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment; import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.FireworkEffectMeta; import org.bukkit.inventory.meta.FireworkEffectMeta;
import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.ItemMeta;
@ -19,6 +22,8 @@ import org.bukkit.inventory.meta.LeatherArmorMeta;
import org.bukkit.inventory.meta.SkullMeta; import org.bukkit.inventory.meta.SkullMeta;
import org.bukkit.potion.Potion; import org.bukkit.potion.Potion;
import mineplex.core.common.util.C;
public class ItemBuilder public class ItemBuilder
{ {
@ -48,20 +53,17 @@ public class ItemBuilder
private final HashMap<Enchantment, Integer> _enchants = new HashMap<Enchantment, Integer>(); private final HashMap<Enchantment, Integer> _enchants = new HashMap<Enchantment, Integer>();
private final List<String> _lore = new ArrayList<String>(); private final List<String> _lore = new ArrayList<String>();
private Material _mat; private Material _mat;
// private Potion potion;
private String _title = null; private String _title = null;
private boolean _unbreakable; private boolean _unbreakable;
private String _playerHeadName = null; private String _playerHeadName = null;
private HashSet<ItemFlag> _itemFlags = new HashSet<ItemFlag>();
public ItemBuilder(ItemStack item) public ItemBuilder(ItemStack item)
{ {
this(item.getType(), item.getDurability()); this(item.getType(), item.getDurability());
_amount = item.getAmount(); _amount = item.getAmount();
_enchants.putAll(item.getEnchantments()); _enchants.putAll(item.getEnchantments());
if (item.getType() == Material.POTION)
{
// setPotion(Potion.fromItemStack(item));
}
if (item.hasItemMeta()) if (item.hasItemMeta())
{ {
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
@ -81,6 +83,8 @@ public class ItemBuilder
setColor(((LeatherArmorMeta) meta).getColor()); setColor(((LeatherArmorMeta) meta).getColor());
} }
_itemFlags.addAll(meta.getItemFlags());
_unbreakable = meta.spigot().isUnbreakable(); _unbreakable = meta.spigot().isUnbreakable();
} }
} }
@ -107,13 +111,60 @@ public class ItemBuilder
this(mat, 1, data); this(mat, 1, data);
} }
public HashSet<ItemFlag> getItemFlags()
{
return _itemFlags;
}
public ItemBuilder addItemFlags(ItemFlag... flags)
{
getItemFlags().addAll(Arrays.asList(flags));
return this;
}
public ItemBuilder setItemFlags(ItemFlag... flags)
{
getItemFlags().clear();
addItemFlags(flags);
return this;
}
public ItemBuilder setItemFlags(Collection<ItemFlag> flags)
{
getItemFlags().clear();
addItemFlags(flags.toArray(new ItemFlag[0]));
return this;
}
public ItemBuilder setHideInfo(boolean hideInfo)
{
if (hideInfo)
{
for (ItemFlag flag : ItemFlag.values())
{
getItemFlags().add(flag);
}
}
else
{
getItemFlags().clear();
}
return this;
}
public ItemBuilder addEnchantment(Enchantment enchant, int level) public ItemBuilder addEnchantment(Enchantment enchant, int level)
{ {
if (_enchants.containsKey(enchant)) if (_enchants.containsKey(enchant))
{ {
_enchants.remove(enchant); _enchants.remove(enchant);
} }
_enchants.put(enchant, level); _enchants.put(enchant, level);
return this; return this;
} }
@ -121,20 +172,31 @@ public class ItemBuilder
{ {
for (String lore : lores) for (String lore : lores)
{ {
_lore.add(ChatColor.GRAY + lore); _lore.add(C.cGray + lore);
} }
return this;
}
public ItemBuilder setLore(String... lores)
{
_lore.clear();
_lore.addAll(Arrays.asList(lores));
return this; return this;
} }
public ItemBuilder addLore(String lore, int maxLength) public ItemBuilder addLore(String lore, int maxLength)
{ {
_lore.addAll(split(lore, maxLength)); _lore.addAll(split(lore, maxLength));
return this; return this;
} }
public ItemBuilder addLores(List<String> lores) public ItemBuilder addLores(List<String> lores)
{ {
_lore.addAll(lores); _lore.addAll(lores);
return this; return this;
} }
@ -144,6 +206,7 @@ public class ItemBuilder
{ {
addLore(lore, maxLength); addLore(lore, maxLength);
} }
return this; return this;
} }
@ -155,6 +218,7 @@ public class ItemBuilder
public ItemStack build() public ItemStack build()
{ {
Material mat = _mat; Material mat = _mat;
if (mat == null) if (mat == null)
{ {
mat = Material.AIR; mat = Material.AIR;
@ -164,8 +228,10 @@ public class ItemBuilder
{ {
Bukkit.getLogger().warning("Air material!"); Bukkit.getLogger().warning("Air material!");
} }
ItemStack item = new ItemStack(mat, _amount, _data); ItemStack item = new ItemStack(mat, _amount, _data);
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
if (meta != null) if (meta != null)
{ {
if (_title != null) if (_title != null)
@ -189,14 +255,13 @@ public class ItemBuilder
((FireworkEffectMeta) meta).setEffect(FireworkEffect.builder().withColor(_color).build()); ((FireworkEffectMeta) meta).setEffect(FireworkEffect.builder().withColor(_color).build());
} }
meta.addItemFlags(getItemFlags().toArray(new ItemFlag[0]));
meta.spigot().setUnbreakable(isUnbreakable()); meta.spigot().setUnbreakable(isUnbreakable());
item.setItemMeta(meta); item.setItemMeta(meta);
} }
item.addUnsafeEnchantments(_enchants); item.addUnsafeEnchantments(_enchants);
// if (potion != null) {
// potion.apply(item);
// }
return item; return item;
} }
@ -263,52 +328,6 @@ public class ItemBuilder
return _enchants.containsKey(enchant); return _enchants.containsKey(enchant);
} }
public boolean isItem(ItemStack item)
{
ItemMeta meta = item.getItemMeta();
if (item.getType() != getType())
{
return false;
}
if (!meta.hasDisplayName() && getTitle() != null)
{
return false;
}
if (!meta.getDisplayName().equals(getTitle()))
{
return false;
}
if (!meta.hasLore() && !getLore().isEmpty())
{
return false;
}
if (meta.hasLore())
{
for (String lore : meta.getLore())
{
if (!getLore().contains(lore))
{
return false;
}
}
}
for (Enchantment enchant : item.getEnchantments().keySet())
{
if (!hasEnchantment(enchant))
{
return false;
}
}
return true;
}
public boolean isUnbreakable() public boolean isUnbreakable()
{ {
return _unbreakable; return _unbreakable;
@ -317,17 +336,14 @@ public class ItemBuilder
public ItemBuilder setAmount(int amount) public ItemBuilder setAmount(int amount)
{ {
_amount = amount; _amount = amount;
return this; return this;
} }
public ItemBuilder setColor(Color color) public ItemBuilder setColor(Color color)
{ {
/* (!_mat.name().contains("LEATHER_"))
{
throw new IllegalArgumentException("Can only dye leather armor!");
}*/
_color = color; _color = color;
return this; return this;
} }
@ -338,19 +354,10 @@ public class ItemBuilder
return this; return this;
} }
public ItemBuilder setPotion(Potion potion)
{
if (_mat != Material.POTION)
{
_mat = Material.POTION;
}
return this;
}
public ItemBuilder setRawTitle(String title) public ItemBuilder setRawTitle(String title)
{ {
_title = title; _title = title;
return this; return this;
} }
@ -378,24 +385,28 @@ public class ItemBuilder
} }
setTitle(title); setTitle(title);
return this; return this;
} }
public ItemBuilder setType(Material mat) public ItemBuilder setType(Material mat)
{ {
_mat = mat; _mat = mat;
return this; return this;
} }
public ItemBuilder setUnbreakable(boolean setUnbreakable) public ItemBuilder setUnbreakable(boolean setUnbreakable)
{ {
_unbreakable = setUnbreakable; _unbreakable = setUnbreakable;
return this; return this;
} }
public ItemBuilder setPlayerHead(String playerName) public ItemBuilder setPlayerHead(String playerName)
{ {
_playerHeadName = playerName; _playerHeadName = playerName;
return this; return this;
} }

View File

@ -2,6 +2,7 @@ package mineplex.hub.profile.buttons;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.gui.GuiItem; import mineplex.core.gui.GuiItem;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemStackFactory;
import mineplex.hub.profile.gui.GUIProfile; import mineplex.hub.profile.gui.GUIProfile;
@ -33,9 +34,7 @@ public class ButtonPrefs implements GuiItem
@Override @Override
public ItemStack getObject() public ItemStack getObject()
{ {
return ItemStackFactory.Instance.CreateStack(Material.REDSTONE_COMPARATOR.getId(), (byte)0, 1, return new ItemBuilder(Material.REDSTONE_COMPARATOR).setTitle(C.Reset + C.cYellow + "Preferences").addLore(new String[]
ChatColor.RESET + C.cYellow + "Preferences",
new String[]
{ {
"", "",
C.cWhite + "Set your preferences to your liking", C.cWhite + "Set your preferences to your liking",
@ -43,7 +42,7 @@ public class ButtonPrefs implements GuiItem
"", "",
C.cWhite + "Type " + C.cGreen + "/prefs" + C.cWhite + " to access this anywhere!" C.cWhite + "Type " + C.cGreen + "/prefs" + C.cWhite + " to access this anywhere!"
}); }).build();
} }
@Override @Override

View File

@ -3,7 +3,6 @@ package mineplex.hub.server.ui;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
@ -11,7 +10,7 @@ import org.bukkit.inventory.ItemStack;
import mineplex.core.account.CoreClientManager; import mineplex.core.account.CoreClientManager;
import mineplex.core.common.util.C; import mineplex.core.common.util.C;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.shop.page.ShopPageBase; import mineplex.core.shop.page.ShopPageBase;
import mineplex.hub.server.ServerManager; import mineplex.hub.server.ServerManager;
import mineplex.hub.server.ui.button.SelectBHButton; import mineplex.hub.server.ui.button.SelectBHButton;
@ -38,7 +37,8 @@ public class ServerGameMenu extends ShopPageBase<ServerManager, QuickShop>
private int _ssmIndex; private int _ssmIndex;
private int _minigameIndex; private int _minigameIndex;
public ServerGameMenu(ServerManager plugin, QuickShop quickShop, CoreClientManager clientManager, DonationManager donationManager, String name, Player player) public ServerGameMenu(ServerManager plugin, QuickShop quickShop, CoreClientManager clientManager,
DonationManager donationManager, String name, Player player)
{ {
super(plugin, quickShop, clientManager, donationManager, name, player, 47); super(plugin, quickShop, clientManager, donationManager, name, player, 47);
@ -52,141 +52,158 @@ public class ServerGameMenu extends ShopPageBase<ServerManager, QuickShop>
@Override @Override
protected void buildPage() protected void buildPage()
{ {
setItem(0, ItemStackFactory.Instance.CreateStack(Material.IRON_PICKAXE.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "The Bridges " + C.cGray + "4 Team Survival", new String[] setItem(0, new ItemBuilder(Material.IRON_PICKAXE)
.setTitle(C.Reset + C.Bold + C.cYellow + "The Bridges " + C.cGray + "4 Team Survival").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "4 Teams get 10 minutes to prepare.", C.Reset + "4 Teams get 10 minutes to prepare.",
ChatColor.RESET + "Then the bridges drop, and all hell", C.Reset + "Then the bridges drop, and all hell",
ChatColor.RESET + "breaks loose as you battle to the", C.Reset + "breaks loose as you battle to the",
ChatColor.RESET + "death with the other teams.", C.Reset + "death with the other teams.",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("BR") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("BR") + C.Reset + " other players!"
})); }).setHideInfo(true).build());
setItem(2, ItemStackFactory.Instance.CreateStack(Material.DIAMOND_SWORD.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Survival Games " + C.cGray + "Solo/Team Survival", new String[] setItem(2, new ItemBuilder(Material.DIAMOND_SWORD)
.setTitle(C.Reset + C.Bold + C.cYellow + "Survival Games " + C.cGray + "Solo/Team Survival").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Search for chests to find loot and ", C.Reset + "Search for chests to find loot and ",
ChatColor.RESET + "fight others to be the last man standing. ", C.Reset + "fight others to be the last man standing. ",
ChatColor.RESET + "Stay away from the borders!", C.Reset + "Stay away from the borders!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + (getPlugin().getGroupTagPlayerCount("HG") + getPlugin().getGroupTagPlayerCount("SG2")) + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen
})); + (getPlugin().getGroupTagPlayerCount("HG") + getPlugin().getGroupTagPlayerCount("SG2")) + C.Reset
+ " other players!"
}).setHideInfo(true).build());
setItem(4, ItemStackFactory.Instance.CreateStack(Material.FEATHER.getId(), (byte) 0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Skywars " + C.cGray + "Solo/Team Survival", new String[] setItem(4, new ItemBuilder(Material.FEATHER)
.setTitle(C.Reset + C.Bold + C.cYellow + "Skywars " + C.cGray + "Solo/Team Survival").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "16 contenders fight for the right to rule the skies!", C.Reset + "16 contenders fight to rule the skies!",
ChatColor.RESET + "Spawn on a sky island and build your path!", C.Reset + "Spawn on a sky island and build your path!",
ChatColor.RESET + "Find weapons to take your enemies down!", C.Reset + "Find weapons to take your enemies down!",
ChatColor.RESET + "Way up there, death ever looming if you fall..", C.Reset + "Up in the skies, death looming if you fall..",
ChatColor.RESET + "Can you fight? Can you live? Can you win Skywars?", C.Reset + "Win! Fight! Send enemies flying in Skywars!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + (getPlugin().getGroupTagPlayerCount("SKY") + getPlugin().getGroupTagPlayerCount("SKY2")) + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen
})); + (getPlugin().getGroupTagPlayerCount("SKY") + getPlugin().getGroupTagPlayerCount("SKY2")) + C.Reset
+ " other players!",
}).setHideInfo(true).build());
setItem(6, ItemStackFactory.Instance.CreateStack(Material.GOLDEN_APPLE.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "UHC " + C.cGray + "Ultra Hardcore Mode", new String[] setItem(6, new ItemBuilder(Material.GOLDEN_APPLE)
.setTitle(C.Reset + C.Bold + C.cYellow + "UHC " + C.cGray + "Ultra Hardcore Mode").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Extremely hard team-based survival ", C.Reset + "Extremely hard team-based survival ",
ChatColor.RESET + "Gather materials and fight your way", C.Reset + "Gather materials and fight your way",
ChatColor.RESET + "to become the last team standing!", C.Reset + "to become the last team standing!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("UHC") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("UHC") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(8, ItemStackFactory.Instance.CreateStack(Material.BLAZE_ROD.getId(), (byte) 0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Wizards " + C.cGray + "Last Man Standing", new String[] setItem(8, new ItemBuilder(Material.BLAZE_ROD)
.setTitle(C.Reset + C.Bold + C.cYellow + "Wizards " + C.cGray + "Last Man Standing").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Wield powerful spells to fight", C.Reset + "Wield powerful spells to fight",
ChatColor.RESET + "against other players in this", C.Reset + "against other players in this",
ChatColor.RESET + "exciting free-for-all brawl!", C.Reset + "exciting free-for-all brawl!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("WIZ") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("WIZ") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(18, ItemStackFactory.Instance.CreateStack(Material.DIAMOND_CHESTPLATE, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Castle Siege " + C.cGray + "Team Game", new String[] setItem(18, new ItemBuilder(Material.DIAMOND_CHESTPLATE)
.setTitle(C.Reset + C.Bold + C.cYellow + "Castle Siege " + C.cGray + "Team Game").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Defenders must protect King Sparklez", C.Reset + "Defenders must protect King Sparklez",
ChatColor.RESET + "from the endless waves of Undead", C.Reset + "from the endless waves of Undead",
ChatColor.RESET + "until the sun rises!", C.Reset + "until the sun rises!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("CS") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("CS") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(20, ItemStackFactory.Instance.CreateStack(Material.GRASS.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Block Hunt " + C.cGray + "Cat and Mouse", new String[] setItem(20, new ItemBuilder(Material.GRASS)
.setTitle(C.Reset + C.Bold + C.cYellow + "Block Hunt " + C.cGray + "Cat and Mouse").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Hide as blocks/animals, upgrade your ", C.Reset + "Hide as blocks/animals, upgrade your ",
ChatColor.RESET + "weapon and fight to survive against", C.Reset + "weapon and fight to survive against",
ChatColor.RESET + "the Hunters!", C.Reset + "the Hunters!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("BH") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("BH") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(22, _superSmashCycle.get(_ssmIndex)); setItem(22, _superSmashCycle.get(_ssmIndex));
setItem(24, ItemStackFactory.Instance.CreateStack(Material.TNT.getId(), (byte) 0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Mine-Strike " + C.cGray + "Team Survival", new String[] setItem(24, new ItemBuilder(Material.TNT)
.setTitle(C.Reset + C.Bold + C.cYellow + "Mine-Strike " + C.cGray + "Team Survival").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "One team must defend two bomb sites from", C.Reset + "One team must defend two bomb sites from",
ChatColor.RESET + "the other team, who are trying to plant a bomb", C.Reset + "the other team, who are trying to plant a bomb",
ChatColor.RESET + "and blow them up!", C.Reset + "and blow them up!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("MS") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("MS") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(26, ItemStackFactory.Instance.CreateStack(Material.BOOK_AND_QUILL.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Draw My Thing " + C.cGray + "Pictionary!", new String[] setItem(26, new ItemBuilder(Material.BOOK_AND_QUILL)
.setTitle(C.Reset + C.Bold + C.cYellow + "Draw My Thing " + C.cGray + "Pictionary!").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Players take turns at drawing a random", C.Reset + "Players take turns at drawing a random",
ChatColor.RESET + "word. Whoever guesses it within the time", C.Reset + "word. Whoever guesses it within the time",
ChatColor.RESET + "limit gets some points!", C.Reset + "limit gets some points!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("DMT") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("DMT") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(36, ItemStackFactory.Instance.CreateStack(Material.BEACON.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Dominate " + C.cGray + "Team Game", new String[] setItem(36, new ItemBuilder(Material.BEACON).setTitle(C.Reset + C.Bold + C.cYellow + "Dominate " + C.cGray + "Team Game")
.addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Customize one of five exciting champions", C.Reset + "Customize one of five exciting champions",
ChatColor.RESET + "and battle with the opposing team for the", C.Reset + "and battle with the opposing team for the",
ChatColor.RESET + "control points on the map.", C.Reset + "control points on the map.",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("DOM") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("DOM") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(38, ItemStackFactory.Instance.CreateStack(Material.GOLD_SWORD.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Team Deathmatch " + C.cGray + "Team Game", new String[] setItem(38, new ItemBuilder(Material.GOLD_SWORD)
.setTitle(C.Reset + C.Bold + C.cYellow + "Team Deathmatch " + C.cGray + "Team Game").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Customize one of five exciting champions", C.Reset + "Customize one of five exciting champions",
ChatColor.RESET + "and battle with the opposing team to the", C.Reset + "and battle with the opposing team to the",
ChatColor.RESET + "last man standing.", C.Reset + "last man standing.",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("TDM") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("TDM") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(40, ItemStackFactory.Instance.CreateStack(Material.WOOD.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Master Builders " + C.cGray + "Creative Build", new String[] setItem(40, new ItemBuilder(Material.WOOD)
.setTitle(C.Reset + C.Bold + C.cYellow + "Master Builders " + C.cGray + "Creative Build").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Players are given a Build Theme and ", C.Reset + "Players are given a Build Theme and ",
ChatColor.RESET + "must use blocks, monsters and more", C.Reset + "must use blocks, monsters and more",
ChatColor.RESET + "to create a masterpiece!", C.Reset + "to create a masterpiece!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + getPlugin().getGroupTagPlayerCount("BLD") + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + getPlugin().getGroupTagPlayerCount("BLD") + C.Reset + " other players!",
})); }).setHideInfo(true).build());
setItem(42, _minigameCycle.get(_minigameIndex)); setItem(42, _minigameCycle.get(_minigameIndex));
setItem(44, ItemStackFactory.Instance.CreateStack(Material.SKULL_ITEM.getId(), (byte) 3, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Player Servers " + C.cGray + "Player Hosted Games", new String[] setItem(44, new ItemBuilder(Material.SKULL_ITEM, 1, (byte) 3)
.addLore(C.Reset + C.Bold + C.cYellow + "Player Servers " + C.cGray + "Player Hosted Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join your friends in their own ", C.Reset + "Join your friends in their own ",
ChatColor.RESET + "Mineplex Player Server. You can play", C.Reset + "Mineplex Player Server. You can play",
ChatColor.RESET + "the games you want, when you want.", C.Reset + "the games you want, when you want.",
ChatColor.RESET + "", C.Reset + "",
})); }).setHideInfo(true).build());
getButtonMap().put(0, new SelectBRButton(this)); getButtonMap().put(0, new SelectBRButton(this));
getButtonMap().put(2, new SelectSGButton(this)); getButtonMap().put(2, new SelectSGButton(this));
@ -210,252 +227,261 @@ public class ServerGameMenu extends ShopPageBase<ServerManager, QuickShop>
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
private void createMinigameCycle() private void createMinigameCycle()
{ {
int playerCount = getPlugin().getGroupTagPlayerCount("MIN") + int playerCount = getPlugin().getGroupTagPlayerCount("MIN") + getPlugin().getGroupTagPlayerCount("DR")
getPlugin().getGroupTagPlayerCount("DR") + + getPlugin().getGroupTagPlayerCount("DE") + getPlugin().getGroupTagPlayerCount("PB")
getPlugin().getGroupTagPlayerCount("DE") + + getPlugin().getGroupTagPlayerCount("TF") + getPlugin().getGroupTagPlayerCount("RUN")
getPlugin().getGroupTagPlayerCount("PB") + + getPlugin().getGroupTagPlayerCount("SN") + getPlugin().getGroupTagPlayerCount("DT")
getPlugin().getGroupTagPlayerCount("TF") + + getPlugin().getGroupTagPlayerCount("SQ") + getPlugin().getGroupTagPlayerCount("SA")
getPlugin().getGroupTagPlayerCount("RUN") + + getPlugin().getGroupTagPlayerCount("SS") + getPlugin().getGroupTagPlayerCount("OITQ");
getPlugin().getGroupTagPlayerCount("SN") + _minigameCycle.add(new ItemBuilder(Material.SMOOTH_BRICK)
getPlugin().getGroupTagPlayerCount("DT") + .setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
getPlugin().getGroupTagPlayerCount("SQ") +
getPlugin().getGroupTagPlayerCount("SA") +
getPlugin().getGroupTagPlayerCount("SS") +
getPlugin().getGroupTagPlayerCount("OITQ");
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(98, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String []
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Super Spleef", C.Reset + C.Bold + C.cGreen + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.GOLD_BOOTS.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.GOLD_BOOTS)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Runner", C.Reset + C.Bold + C.cGreen + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(122, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.DRAGON_EGG)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Dragons", C.Reset + C.Bold + C.cGreen + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.BOW, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.BOW)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "One in the Quiver", C.Reset + C.Bold + C.cGreen + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.LEATHER_BOOTS.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.LEATHER_BOOTS)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Dragon Escape", C.Reset + C.Bold + C.cGreen + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.MILK_BUCKET.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.MILK_BUCKET)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Sneaky Assassins", C.Reset + C.Bold + C.cGreen + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.MILK_BUCKET.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.MILK_BUCKET)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Micro Battle", C.Reset + C.Bold + C.cGreen + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(Material.DIAMOND_BARDING.getId(), (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.DIAMOND_BARDING)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Super Paintball", C.Reset + C.Bold + C.cGreen + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(159, (byte)14, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.STAINED_CLAY, 1, (byte) 14)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Turf Wars", C.Reset + C.Bold + C.cGreen + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(309, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.IRON_BOOTS)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Death Tag", C.Reset + C.Bold + C.cGreen + "Death Tag",
ChatColor.RESET + "Bacon Brawl", C.Reset + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
_minigameCycle.add(ItemStackFactory.Instance.CreateStack(319, (byte)0, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Arcade " + C.cGray + "Mixed Games", new String [] _minigameCycle.add(new ItemBuilder(Material.PORK)
.setTitle(C.Reset + C.Bold + C.cYellow + "Arcade " + C.cGray + "Mixed Games").addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Play all of these fun minigames:", C.Reset + "Play all of these fun minigames:",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Super Spleef", C.Reset + "Super Spleef",
ChatColor.RESET + "Runner", C.Reset + "Runner",
ChatColor.RESET + "Dragons", C.Reset + "Dragons",
ChatColor.RESET + "One in the Quiver", C.Reset + "One in the Quiver",
ChatColor.RESET + "Dragon Escape", C.Reset + "Dragon Escape",
ChatColor.RESET + "Sneaky Assassins", C.Reset + "Sneaky Assassins",
ChatColor.RESET + "Micro Battle", C.Reset + "Micro Battle",
ChatColor.RESET + "Super Paintball", C.Reset + "Super Paintball",
ChatColor.RESET + "Turf Wars", C.Reset + "Turf Wars",
ChatColor.RESET + "Death Tag", C.Reset + "Death Tag",
ChatColor.RESET + C.Bold + ChatColor.GREEN + "Bacon Brawl", C.Reset + C.Bold + C.cGreen + "Bacon Brawl",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + playerCount + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen + playerCount + C.Reset + " other players!",
})); }).setHideInfo(true).build());
} }
private void createSuperSmashCycle() private void createSuperSmashCycle()
{ {
String[] desc = new String[] String[] desc = new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Pick from a selection of monsters,", C.Reset + "Pick from a selection of monsters,",
ChatColor.RESET + "then battle other players to the ", C.Reset + "then battle other players to the ",
ChatColor.RESET + "death with your monsters skills!", C.Reset + "death with your monsters skills!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + "Join " + ChatColor.GREEN + (getPlugin().getGroupTagPlayerCount("SSM") + getPlugin().getGroupTagPlayerCount("SSM2")) + ChatColor.RESET + " other players!", C.Reset + "Join " + C.cGreen
+ (getPlugin().getGroupTagPlayerCount("SSM") + getPlugin().getGroupTagPlayerCount("SSM2")) + C.Reset
+ " other players!",
}; };
_superSmashCycle.add(ItemStackFactory.Instance.CreateStack(397, (byte)4, 1, ChatColor.RESET + C.Bold + ChatColor.YELLOW + "Super Smash Mobs " + C.cGray + "Solo/Team Deathmatch", desc)); _superSmashCycle.add(new ItemBuilder(Material.SKULL_ITEM, 1, (byte) 4)
.setTitle(C.Reset + C.Bold + C.cYellow + "Super Smash Mobs " + C.cGray + "Solo/Team Deathmatch").addLore(desc)
.setHideInfo(true).build());
} }
public void Update() public void Update()

View File

@ -18,6 +18,7 @@ import mineplex.core.common.util.C;
import mineplex.core.common.util.UtilTime; import mineplex.core.common.util.UtilTime;
import mineplex.core.donation.DonationManager; import mineplex.core.donation.DonationManager;
import mineplex.core.game.GameDisplay; import mineplex.core.game.GameDisplay;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.itemstack.ItemStackFactory;
import mineplex.core.shop.item.IButton; import mineplex.core.shop.item.IButton;
import mineplex.core.shop.item.ShopItem; import mineplex.core.shop.item.ShopItem;
@ -35,8 +36,8 @@ public class ServerTypePage extends ShopPageBase<ServerManager, ServerNpcShop>
private ServerGroup _serverGroup; private ServerGroup _serverGroup;
public ServerTypePage(ServerManager plugin, ServerNpcShop shop, CoreClientManager clientManager, DonationManager donationManager, public ServerTypePage(ServerManager plugin, ServerNpcShop shop, CoreClientManager clientManager,
Player player, ServerGroup serverGroup) DonationManager donationManager, Player player, ServerGroup serverGroup)
{ {
super(plugin, shop, clientManager, donationManager, serverGroup.getServerNpcName(), player, 27); super(plugin, shop, clientManager, donationManager, serverGroup.getServerNpcName(), player, 27);
@ -50,21 +51,23 @@ public class ServerTypePage extends ShopPageBase<ServerManager, ServerNpcShop>
{ {
String friendlyName = _serverGroup.getServerNpcName(); String friendlyName = _serverGroup.getServerNpcName();
setItem(12, ItemStackFactory.Instance.CreateStack(Material.SKULL_ITEM.getId(), (byte)3, 1, ChatColor.RESET + C.cYellow + "Solo " + friendlyName, new String[] setItem(12, new ItemBuilder(Material.SKULL_ITEM, 1, (byte) 3).setTitle(C.Reset + C.cYellow + "Solo " + friendlyName)
.addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + C.cRed + C.Bold + "WARNING: " + ChatColor.RESET + "Teaming in Solo Mode is bannable!", C.Reset + C.cRed + C.Bold + "WARNING: " + C.Reset + "Teaming in Solo Mode is bannable!",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + C.cGreen + "Click to Play", C.Reset + C.cGreen + "Click to Play",
})); }).build());
setItem(14, ItemStackFactory.Instance.CreateStack(Material.SKULL_ITEM.getId(), (byte)3, 2, ChatColor.RESET + C.cYellow + "Team " + friendlyName, new String[] setItem(14, new ItemBuilder(Material.SKULL_ITEM, 2, (byte) 3).setTitle(C.Reset + C.cYellow + "Team " + friendlyName)
.addLore(new String[]
{ {
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + C.cGray + "2 Player Teams", C.Reset + C.cGray + "2 Player Teams",
ChatColor.RESET + "", C.Reset + "",
ChatColor.RESET + C.cGreen + "Click to Play" C.Reset + C.cGreen + "Click to Play"
})); }).build());
getButtonMap().put(12, new SelectTypeButton(this, false)); getButtonMap().put(12, new SelectTypeButton(this, false));
getButtonMap().put(14, new SelectTypeButton(this, true)); getButtonMap().put(14, new SelectTypeButton(this, true));
@ -80,11 +83,13 @@ public class ServerTypePage extends ShopPageBase<ServerManager, ServerNpcShop>
{ {
if (team) if (team)
{ {
getShop().openPageForPlayer(player, new ServerNpcPage(getPlugin(), getShop(), getClientManager(), getDonationManager(), _serverGroup.getServerNpcName() + " Teams", player, _serverGroup.getTeamServerKey())); getShop().openPageForPlayer(player, new ServerNpcPage(getPlugin(), getShop(), getClientManager(),
getDonationManager(), _serverGroup.getServerNpcName() + " Teams", player, _serverGroup.getTeamServerKey()));
} }
else else
{ {
getShop().openPageForPlayer(player, new ServerNpcPage(getPlugin(), getShop(), getClientManager(), getDonationManager(), _serverGroup.getServerNpcName() + " Solo", player, _serverGroup.getPrefix())); getShop().openPageForPlayer(player, new ServerNpcPage(getPlugin(), getShop(), getClientManager(),
getDonationManager(), _serverGroup.getServerNpcName() + " Solo", player, _serverGroup.getPrefix()));
} }
} }
} }