TotalFreedomMod/src/main/java/me/totalfreedom/totalfreedommod/command/Command_cookie.java

66 lines
2.5 KiB
Java
Raw Normal View History

2018-05-26 06:11:55 +00:00
package me.totalfreedom.totalfreedommod.command;
import me.totalfreedom.totalfreedommod.util.FUtil;
import me.totalfreedom.totalfreedommod.rank.Rank;
2018-07-27 08:19:56 +00:00
import org.bukkit.ChatColor;
2018-05-26 06:11:55 +00:00
import org.bukkit.Material;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
2018-07-27 08:19:56 +00:00
import org.bukkit.inventory.meta.ItemMeta;
import java.util.Arrays;
2018-05-26 06:11:55 +00:00
@CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH)
public class Command_cookie extends FreedomCommand
{
2018-07-27 08:19:56 +00:00
public static final String COOKIE_LYRICS = "Imagine that you have zero cookies and you divide them evenly among zero friends. How many cookies does each person get? See, it doesn't " +
"seem to make sense, and Cookie Monster is sad there are no cookies, and you are sad you have no friends.";
public static final String LORE = "But, you can have a cookie anyways,\nsince you are sad you are have no friends.";
2018-05-26 06:11:55 +00:00
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
final StringBuilder output = new StringBuilder();
for (final String word : COOKIE_LYRICS.split(" "))
{
2018-05-26 06:11:55 +00:00
output.append(FUtil.randomChatColor()).append(word).append(" ");
}
2018-07-27 08:19:56 +00:00
final StringBuilder name = new StringBuilder();
name.append(ChatColor.DARK_RED).append("C")
.append(ChatColor.GOLD).append("o")
.append(ChatColor.YELLOW).append("o")
.append(ChatColor.DARK_GREEN).append("k")
.append(ChatColor.DARK_BLUE).append("i")
.append(ChatColor.DARK_PURPLE).append("e");
final StringBuilder lore = new StringBuilder();
for (final String word : LORE.split(" "))
{
lore.append(FUtil.randomChatColor()).append(word).append(" ");
}
final ItemStack heldItem = new ItemStack(Material.COOKIE);
final ItemMeta heldItemMeta = heldItem.getItemMeta();
heldItemMeta.setDisplayName(name.toString());
heldItemMeta.setLore(Arrays.asList(lore.toString().split("\n")));
heldItem.setItemMeta(heldItemMeta);
for (final Player player : server.getOnlinePlayers())
2018-05-26 06:11:55 +00:00
{
final int firstEmpty = player.getInventory().firstEmpty();
if (firstEmpty >= 0)
{
2018-05-26 06:11:55 +00:00
player.getInventory().setItem(firstEmpty, heldItem);
}
}
FUtil.bcastMsg(output.toString());
return true;
}
}