Skip to content

Instantly share code, notes, and snippets.

@efekos
Last active August 2, 2024 11:43
Show Gist options
  • Save efekos/90fa121de6dd7ed791786a616ccae70a to your computer and use it in GitHub Desktop.
Save efekos/90fa121de6dd7ed791786a616ccae70a to your computer and use it in GitHub Desktop.
Giant BaseComponent builder to help you build large components
package PACKAGE.NAME.HERE;
import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.chat.*;
import net.md_5.bungee.api.chat.hover.content.Content;
import net.md_5.bungee.api.chat.hover.content.Entity;
import net.md_5.bungee.api.chat.hover.content.Item;
import net.md_5.bungee.api.chat.hover.content.Text;
import java.util.ArrayList;
import java.util.List;
/**
* A class that helps you create base components more easily. You can create every kind of base component without
* worrying about argument orders. You can use explicit methods such as {@link #bold()} or {@link #italic()} for formatting,
* but you can also use flags. Let me explain flags more.
* <p>
* {@code String flags} argument is a string with its every letter representing another formatting. Here is a list of
* all valid formatting you can do using flags.
* <ul>
* <li>{@code b} means bold.</li>
* <li>{@code i} means italic.</li>
* <li>{@code s} means strikethrough</li>
* <li>{@code u} means underlined.</li>
* <li>{@code o} means obfuscated.</li>
* </ul>
* For example, a flags value of {@code biu} would make the text bold, italic and underlined. {@code u} would make it
* just underlined, {@code oi} would make is obfuscated and italic, {@code osubi} would apply every effect and so on.
* Order of the letters doesn't change anything.
* </p>
* After you build your component, you can use {@link #chain()} to get one component or {@link #build()} to get an array
* of components.
* @author efekos
* @version 1.0
*/
public class BaseComponentBuilder {
private final List<BaseComponent> components = new ArrayList<>();
public BaseComponentBuilder() {
}
private BaseComponent last() {
return components.get(components.size() - 1);
}
public BaseComponentBuilder literal(String text) {
components.add(TextComponent.fromLegacy(text));
return this;
}
public BaseComponentBuilder literal(String text, ChatColor color){return literal(text).color(color);}
public BaseComponentBuilder literal(String text, ClickEvent ce){return literal(text).event(ce);}
public BaseComponentBuilder literal(String text, HoverEvent he){return literal(text).event(he);}
public BaseComponentBuilder literal(String text, String flags){literal(text);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, ClickEvent ce){return literal(text).event(ce).color(color);}
public BaseComponentBuilder literal(String text, ChatColor color, HoverEvent he){return literal(text).event(he).color(color);}
public BaseComponentBuilder literal(String text, ChatColor color, String flags){literal(text).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, ChatColor color){return literal(text).event(ce).color(color);}
public BaseComponentBuilder literal(String text, ClickEvent ce, HoverEvent he){return literal(text).event(ce).event(he);}
public BaseComponentBuilder literal(String text, ClickEvent ce, String flags){literal(text).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ChatColor color){return literal(text).event(he).color(color);}
public BaseComponentBuilder literal(String text, HoverEvent he, ClickEvent ce){return literal(text).event(ce).event(he);}
public BaseComponentBuilder literal(String text, HoverEvent he, String flags){literal(text).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ChatColor color){literal(text).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ClickEvent ce){literal(text).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, HoverEvent he){literal(text).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, ClickEvent ce, HoverEvent he){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, ChatColor color, ClickEvent ce, String flags){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, HoverEvent he, ClickEvent ce){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, ChatColor color, HoverEvent he, String flags){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, String flags, ClickEvent ce){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, String flags, HoverEvent he){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, ChatColor color, HoverEvent he){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, ClickEvent ce, ChatColor color, String flags){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, HoverEvent he, ChatColor color){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, ClickEvent ce, HoverEvent he, String flags){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, String flags, ChatColor color){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, String flags, HoverEvent he){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ChatColor color, ClickEvent ce){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, HoverEvent he, ChatColor color, String flags){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ClickEvent ce, ChatColor color){return literal(text).event(ce).event(he).color(color);}
public BaseComponentBuilder literal(String text, HoverEvent he, ClickEvent ce, String flags){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, String flags, ChatColor color){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, String flags, ClickEvent ce){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ChatColor color, ClickEvent ce){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ChatColor color, HoverEvent he){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ClickEvent ce, ChatColor color){literal(text).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ClickEvent ce, HoverEvent he){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, HoverEvent he, ChatColor color){literal(text).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, HoverEvent he, ClickEvent ce){literal(text).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, ClickEvent ce, HoverEvent he, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, ClickEvent ce, String flags, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, HoverEvent he, ClickEvent ce, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, HoverEvent he, String flags, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, String flags, ClickEvent ce, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ChatColor color, String flags, HoverEvent he, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, ChatColor color, HoverEvent he, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, ChatColor color, String flags, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, HoverEvent he, ChatColor color, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, HoverEvent he, String flags, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, String flags, ChatColor color, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, ClickEvent ce, String flags, HoverEvent he, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ChatColor color, ClickEvent ce, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ChatColor color, String flags, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ClickEvent ce, ChatColor color, String flags){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, ClickEvent ce, String flags, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, String flags, ChatColor color, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, HoverEvent he, String flags, ClickEvent ce, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ChatColor color, ClickEvent ce, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ChatColor color, HoverEvent he, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ClickEvent ce, ChatColor color, HoverEvent he){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, ClickEvent ce, HoverEvent he, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, HoverEvent he, ChatColor color, ClickEvent ce){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder literal(String text, String flags, HoverEvent he, ClickEvent ce, ChatColor color){literal(text).event(ce).event(he).color(color);parseFlags(flags);return this;}
private void parseFlags(String flags) {
if(flags.contains("b"))bold();
if(flags.contains("i"))italic();
if(flags.contains("s"))strikethrough();
if(flags.contains("o"))obfuscated();
if(flags.contains("u"))underlined();
}
public BaseComponentBuilder color(ChatColor color) {
last().setColor(color);
return this;
}
public BaseComponentBuilder bold() {
last().setBold(true);
return this;
}
public BaseComponentBuilder italic() {
last().setItalic(true);
return this;
}
public BaseComponentBuilder underlined() {
last().setUnderlined(true);
return this;
}
public BaseComponentBuilder strikethrough() {
last().setStrikethrough(true);
return this;
}
public BaseComponentBuilder obfuscated() {
last().setObfuscated(true);
return this;
}
public BaseComponentBuilder event(HoverEvent event) {
last().setHoverEvent(event);
return this;
}
public BaseComponentBuilder event(ClickEvent event) {
last().setClickEvent(event);
return this;
}
public BaseComponentBuilder hover(HoverEvent.Action action, Content content) {
return event(new HoverEvent(action, content));
}
public BaseComponentBuilder showText(String text) {
return hover(HoverEvent.Action.SHOW_TEXT, new Text(text));
}
public BaseComponentBuilder showText(BaseComponent... component) {
return hover(HoverEvent.Action.SHOW_TEXT, new Text(component));
}
public BaseComponentBuilder showText(BaseComponent component) {
return hover(HoverEvent.Action.SHOW_TEXT, new Text(component));
}
public BaseComponentBuilder showEntity(Entity entity){
return hover(HoverEvent.Action.SHOW_ENTITY, entity);
}
public BaseComponentBuilder showEntity(org.bukkit.entity.Entity entity) {
return showEntity(new Entity(entity.getType().getKey().toString(),entity.getUniqueId().toString(),new TextComponent(entity.getName())));
}
public BaseComponentBuilder showItem(Item item){
return hover(HoverEvent.Action.SHOW_ITEM,item);
}
public BaseComponentBuilder showItem(org.bukkit.inventory.ItemStack stack) {
return showItem(new Item(stack.getType().getKey().toString(),stack.getAmount(),ItemTag.ofNbt(stack.hasItemMeta()?stack.getItemMeta().getAsString():"{}")));
}
public BaseComponentBuilder runCommand(String command) {
return click(ClickEvent.Action.RUN_COMMAND, command);
}
public BaseComponentBuilder changePage(int page) {
return click(ClickEvent.Action.CHANGE_PAGE, page + "");
}
public BaseComponentBuilder openUrl(String url) {
return click(ClickEvent.Action.OPEN_URL, url);
}
public BaseComponentBuilder copyToClipboard(String content) {
return click(ClickEvent.Action.COPY_TO_CLIPBOARD, content);
}
public BaseComponentBuilder suggestCommand(String command){
return click(ClickEvent.Action.SUGGEST_COMMAND, command);
}
public BaseComponentBuilder openFile(String content){
return click(ClickEvent.Action.OPEN_FILE,content);
}
public BaseComponentBuilder click(ClickEvent.Action action, String content) {
return event(new ClickEvent(action, content));
}
public BaseComponentBuilder translate(String key) {
components.add(new TranslatableComponent(key));
return this;
}
public BaseComponentBuilder newLine() {
components.add(new TextComponent("\n"));
return this;
}
public BaseComponent[] build() {
return components.toArray(BaseComponent[]::new);
}
public BaseComponentBuilder translate(String key, ChatColor color){return translate(key).color(color);}
public BaseComponentBuilder translate(String key, ClickEvent ce){return translate(key).event(ce);}
public BaseComponentBuilder translate(String key, HoverEvent he){return translate(key).event(he);}
public BaseComponentBuilder translate(String key, String flags){translate(key);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, ClickEvent ce){return translate(key).event(ce).color(color);}
public BaseComponentBuilder translate(String key, ChatColor color, HoverEvent he){return translate(key).event(he).color(color);}
public BaseComponentBuilder translate(String key, ChatColor color, String flags){translate(key).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, ChatColor color){return translate(key).event(ce).color(color);}
public BaseComponentBuilder translate(String key, ClickEvent ce, HoverEvent he){return translate(key).event(ce).event(he);}
public BaseComponentBuilder translate(String key, ClickEvent ce, String flags){translate(key).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ChatColor color){return translate(key).event(he).color(color);}
public BaseComponentBuilder translate(String key, HoverEvent he, ClickEvent ce){return translate(key).event(ce).event(he);}
public BaseComponentBuilder translate(String key, HoverEvent he, String flags){translate(key).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ChatColor color){translate(key).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ClickEvent ce){translate(key).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, HoverEvent he){translate(key).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, ClickEvent ce, HoverEvent he){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, ChatColor color, ClickEvent ce, String flags){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, HoverEvent he, ClickEvent ce){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, ChatColor color, HoverEvent he, String flags){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, String flags, ClickEvent ce){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, String flags, HoverEvent he){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, ChatColor color, HoverEvent he){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, ClickEvent ce, ChatColor color, String flags){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, HoverEvent he, ChatColor color){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, ClickEvent ce, HoverEvent he, String flags){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, String flags, ChatColor color){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, String flags, HoverEvent he){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ChatColor color, ClickEvent ce){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, HoverEvent he, ChatColor color, String flags){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ClickEvent ce, ChatColor color){return translate(key).event(ce).event(he).color(color);}
public BaseComponentBuilder translate(String key, HoverEvent he, ClickEvent ce, String flags){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, String flags, ChatColor color){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, String flags, ClickEvent ce){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ChatColor color, ClickEvent ce){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ChatColor color, HoverEvent he){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ClickEvent ce, ChatColor color){translate(key).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ClickEvent ce, HoverEvent he){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, HoverEvent he, ChatColor color){translate(key).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, HoverEvent he, ClickEvent ce){translate(key).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, ClickEvent ce, HoverEvent he, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, ClickEvent ce, String flags, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, HoverEvent he, ClickEvent ce, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, HoverEvent he, String flags, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, String flags, ClickEvent ce, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ChatColor color, String flags, HoverEvent he, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, ChatColor color, HoverEvent he, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, ChatColor color, String flags, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, HoverEvent he, ChatColor color, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, HoverEvent he, String flags, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, String flags, ChatColor color, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, ClickEvent ce, String flags, HoverEvent he, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ChatColor color, ClickEvent ce, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ChatColor color, String flags, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ClickEvent ce, ChatColor color, String flags){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, ClickEvent ce, String flags, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, String flags, ChatColor color, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, HoverEvent he, String flags, ClickEvent ce, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ChatColor color, ClickEvent ce, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ChatColor color, HoverEvent he, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ClickEvent ce, ChatColor color, HoverEvent he){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, ClickEvent ce, HoverEvent he, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, HoverEvent he, ChatColor color, ClickEvent ce){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder translate(String key, String flags, HoverEvent he, ClickEvent ce, ChatColor color){translate(key).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind){
components.add(new KeybindComponent(keyBind));
return this;
}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color){return keyBind(keyBind).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce){return keyBind(keyBind).event(ce);}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he){return keyBind(keyBind).event(he);}
public BaseComponentBuilder keyBind(String keyBind, String flags){keyBind(keyBind);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, ClickEvent ce){return keyBind(keyBind).event(ce).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, HoverEvent he){return keyBind(keyBind).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, String flags){keyBind(keyBind).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, ChatColor color){return keyBind(keyBind).event(ce).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, HoverEvent he){return keyBind(keyBind).event(ce).event(he);}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, String flags){keyBind(keyBind).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ChatColor color){return keyBind(keyBind).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ClickEvent ce){return keyBind(keyBind).event(ce).event(he);}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, String flags){keyBind(keyBind).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ChatColor color){keyBind(keyBind).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ClickEvent ce){keyBind(keyBind).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, HoverEvent he){keyBind(keyBind).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, ClickEvent ce, HoverEvent he){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, ClickEvent ce, String flags){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, HoverEvent he, ClickEvent ce){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, HoverEvent he, String flags){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, String flags, ClickEvent ce){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, String flags, HoverEvent he){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, ChatColor color, HoverEvent he){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, ChatColor color, String flags){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, HoverEvent he, ChatColor color){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, HoverEvent he, String flags){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, String flags, ChatColor color){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, String flags, HoverEvent he){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ChatColor color, ClickEvent ce){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ChatColor color, String flags){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ClickEvent ce, ChatColor color){return keyBind(keyBind).event(ce).event(he).color(color);}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ClickEvent ce, String flags){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, String flags, ChatColor color){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, String flags, ClickEvent ce){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ChatColor color, ClickEvent ce){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ChatColor color, HoverEvent he){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ClickEvent ce, ChatColor color){keyBind(keyBind).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ClickEvent ce, HoverEvent he){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, HoverEvent he, ChatColor color){keyBind(keyBind).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, HoverEvent he, ClickEvent ce){keyBind(keyBind).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, ClickEvent ce, HoverEvent he, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, ClickEvent ce, String flags, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, HoverEvent he, ClickEvent ce, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, HoverEvent he, String flags, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, String flags, ClickEvent ce, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ChatColor color, String flags, HoverEvent he, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, ChatColor color, HoverEvent he, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, ChatColor color, String flags, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, HoverEvent he, ChatColor color, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, HoverEvent he, String flags, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, String flags, ChatColor color, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, ClickEvent ce, String flags, HoverEvent he, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ChatColor color, ClickEvent ce, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ChatColor color, String flags, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ClickEvent ce, ChatColor color, String flags){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, ClickEvent ce, String flags, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, String flags, ChatColor color, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, HoverEvent he, String flags, ClickEvent ce, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ChatColor color, ClickEvent ce, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ChatColor color, HoverEvent he, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ClickEvent ce, ChatColor color, HoverEvent he){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, ClickEvent ce, HoverEvent he, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, HoverEvent he, ChatColor color, ClickEvent ce){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder keyBind(String keyBind, String flags, HoverEvent he, ClickEvent ce, ChatColor color){keyBind(keyBind).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name,String objective){
this.components.add(new ScoreComponent(name, objective));
return this;
}
public BaseComponentBuilder scoreValue(String value){
BaseComponent last = last();
if(last instanceof ScoreComponent sc) sc.setValue(value);
return this;
}
public BaseComponentBuilder flags(String flags){
parseFlags(flags);
return this;
}
public BaseComponentBuilder score(String name, String objective, ChatColor color){return score(name,objective).color(color);}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce){return score(name,objective).event(ce);}
public BaseComponentBuilder score(String name, String objective, HoverEvent he){return score(name,objective).event(he);}
public BaseComponentBuilder score(String name, String objective, String flags){score(name,objective);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, ClickEvent ce){return score(name,objective).event(ce).color(color);}
public BaseComponentBuilder score(String name, String objective, ChatColor color, HoverEvent he){return score(name,objective).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, ChatColor color, String flags){score(name,objective).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, ChatColor color){return score(name,objective).event(ce).color(color);}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, HoverEvent he){return score(name,objective).event(ce).event(he);}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, String flags){score(name,objective).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ChatColor color){return score(name,objective).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ClickEvent ce){return score(name,objective).event(ce).event(he);}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, String flags){score(name,objective).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ChatColor color){score(name,objective).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ClickEvent ce){score(name,objective).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, HoverEvent he){score(name,objective).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, ClickEvent ce, HoverEvent he){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, ChatColor color, ClickEvent ce, String flags){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, HoverEvent he, ClickEvent ce){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, ChatColor color, HoverEvent he, String flags){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, String flags, ClickEvent ce){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, String flags, HoverEvent he){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, ChatColor color, HoverEvent he){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, ChatColor color, String flags){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, HoverEvent he, ChatColor color){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, HoverEvent he, String flags){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, String flags, ChatColor color){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, String flags, HoverEvent he){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ChatColor color, ClickEvent ce){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ChatColor color, String flags){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ClickEvent ce, ChatColor color){return score(name,objective).event(ce).event(he).color(color);}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ClickEvent ce, String flags){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, String flags, ChatColor color){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, String flags, ClickEvent ce){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ChatColor color, ClickEvent ce){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ChatColor color, HoverEvent he){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ClickEvent ce, ChatColor color){score(name,objective).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ClickEvent ce, HoverEvent he){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, HoverEvent he, ChatColor color){score(name,objective).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, HoverEvent he, ClickEvent ce){score(name,objective).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, ClickEvent ce, HoverEvent he, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, ClickEvent ce, String flags, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, HoverEvent he, ClickEvent ce, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, HoverEvent he, String flags, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, String flags, ClickEvent ce, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ChatColor color, String flags, HoverEvent he, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, ChatColor color, HoverEvent he, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, ChatColor color, String flags, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, HoverEvent he, ChatColor color, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, HoverEvent he, String flags, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, String flags, ChatColor color, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, ClickEvent ce, String flags, HoverEvent he, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ChatColor color, ClickEvent ce, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ChatColor color, String flags, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ClickEvent ce, ChatColor color, String flags){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, ClickEvent ce, String flags, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, String flags, ChatColor color, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, HoverEvent he, String flags, ClickEvent ce, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ChatColor color, ClickEvent ce, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ChatColor color, HoverEvent he, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ClickEvent ce, ChatColor color, HoverEvent he){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, ClickEvent ce, HoverEvent he, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, HoverEvent he, ChatColor color, ClickEvent ce){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder score(String name, String objective, String flags, HoverEvent he, ClickEvent ce, ChatColor color){score(name,objective).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector){
this.components.add(new SelectorComponent(selector));
return this;
}
public BaseComponentBuilder selector(String selector,BaseComponent seperator){
this.components.add(new SelectorComponent(selector,seperator));
return this;
}
public BaseComponentBuilder selector(String selector,BaseComponentBuilder seperator){
this.components.add(new SelectorComponent(selector,seperator.chain()));
return this;
}
public BaseComponent chain(){
BaseComponent component = components.get(0);
for (int i = 0; i < components.size(); i++) if(i!=0) component.addExtra(components.get(i));
return component;
}
public BaseComponentBuilder selector(String selector,ChatColor color){return selector(selector).color(color);}
public BaseComponentBuilder selector(String selector,ClickEvent ce){return selector(selector).event(ce);}
public BaseComponentBuilder selector(String selector,HoverEvent he){return selector(selector).event(he);}
public BaseComponentBuilder selector(String selector,String flags){selector(selector);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, ClickEvent ce){return selector(selector).event(ce).color(color);}
public BaseComponentBuilder selector(String selector,ChatColor color, HoverEvent he){return selector(selector).event(he).color(color);}
public BaseComponentBuilder selector(String selector,ChatColor color, String flags){selector(selector).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, ChatColor color){return selector(selector).event(ce).color(color);}
public BaseComponentBuilder selector(String selector,ClickEvent ce, HoverEvent he){return selector(selector).event(ce).event(he);}
public BaseComponentBuilder selector(String selector,ClickEvent ce, String flags){selector(selector).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ChatColor color){return selector(selector).event(he).color(color);}
public BaseComponentBuilder selector(String selector,HoverEvent he, ClickEvent ce){return selector(selector).event(ce).event(he);}
public BaseComponentBuilder selector(String selector,HoverEvent he, String flags){selector(selector).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ChatColor color){selector(selector).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ClickEvent ce){selector(selector).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, HoverEvent he){selector(selector).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, ClickEvent ce, HoverEvent he){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,ChatColor color, ClickEvent ce, String flags){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, HoverEvent he, ClickEvent ce){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,ChatColor color, HoverEvent he, String flags){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, String flags, ClickEvent ce){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, String flags, HoverEvent he){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, ChatColor color, HoverEvent he){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,ClickEvent ce, ChatColor color, String flags){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, HoverEvent he, ChatColor color){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,ClickEvent ce, HoverEvent he, String flags){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, String flags, ChatColor color){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, String flags, HoverEvent he){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ChatColor color, ClickEvent ce){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,HoverEvent he, ChatColor color, String flags){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ClickEvent ce, ChatColor color){return selector(selector).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector,HoverEvent he, ClickEvent ce, String flags){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, String flags, ChatColor color){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, String flags, ClickEvent ce){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ChatColor color, ClickEvent ce){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ChatColor color, HoverEvent he){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ClickEvent ce, ChatColor color){selector(selector).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ClickEvent ce, HoverEvent he){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, HoverEvent he, ChatColor color){selector(selector).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, HoverEvent he, ClickEvent ce){selector(selector).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, ClickEvent ce, HoverEvent he, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, ClickEvent ce, String flags, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, HoverEvent he, ClickEvent ce, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, HoverEvent he, String flags, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, String flags, ClickEvent ce, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ChatColor color, String flags, HoverEvent he, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, ChatColor color, HoverEvent he, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, ChatColor color, String flags, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, HoverEvent he, ChatColor color, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, HoverEvent he, String flags, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, String flags, ChatColor color, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,ClickEvent ce, String flags, HoverEvent he, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ChatColor color, ClickEvent ce, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ChatColor color, String flags, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ClickEvent ce, ChatColor color, String flags){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, ClickEvent ce, String flags, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, String flags, ChatColor color, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,HoverEvent he, String flags, ClickEvent ce, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ChatColor color, ClickEvent ce, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ChatColor color, HoverEvent he, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ClickEvent ce, ChatColor color, HoverEvent he){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, ClickEvent ce, HoverEvent he, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, HoverEvent he, ChatColor color, ClickEvent ce){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector,String flags, HoverEvent he, ClickEvent ce, ChatColor color){selector(selector).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color){return selector(selector,separator).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce){return selector(selector,separator).event(ce);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he){return selector(selector,separator).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags){selector(selector,separator);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, ClickEvent ce){return selector(selector,separator).event(ce).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, HoverEvent he){return selector(selector,separator).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, String flags){selector(selector,separator).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, ChatColor color){return selector(selector,separator).event(ce).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, HoverEvent he){return selector(selector,separator).event(ce).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, String flags){selector(selector,separator).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ChatColor color){return selector(selector,separator).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ClickEvent ce){return selector(selector,separator).event(ce).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, String flags){selector(selector,separator).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ChatColor color){selector(selector,separator).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ClickEvent ce){selector(selector,separator).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, HoverEvent he){selector(selector,separator).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, ClickEvent ce, HoverEvent he){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, ClickEvent ce, String flags){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, HoverEvent he, ClickEvent ce){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, HoverEvent he, String flags){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, String flags, ClickEvent ce){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, String flags, HoverEvent he){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, ChatColor color, HoverEvent he){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, ChatColor color, String flags){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, HoverEvent he, ChatColor color){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, String flags, ChatColor color){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ChatColor color, ClickEvent ce){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ChatColor color, String flags){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ClickEvent ce, ChatColor color){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, String flags, ChatColor color){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ChatColor color, HoverEvent he){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, HoverEvent he, ChatColor color){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, ClickEvent ce, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, ClickEvent ce, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, HoverEvent he, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, HoverEvent he, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, String flags, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ChatColor color, String flags, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, ChatColor color, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, ChatColor color, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, HoverEvent he, ChatColor color, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, HoverEvent he, String flags, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, String flags, ChatColor color, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, ClickEvent ce, String flags, HoverEvent he, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ChatColor color, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ChatColor color, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ClickEvent ce, ChatColor color, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, ClickEvent ce, String flags, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, String flags, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, HoverEvent he, String flags, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ChatColor color, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ChatColor color, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ClickEvent ce, ChatColor color, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, ClickEvent ce, HoverEvent he, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, HoverEvent he, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponent separator, String flags, HoverEvent he, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color){return selector(selector,separator).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce){return selector(selector,separator).event(ce);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he){return selector(selector,separator).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags){selector(selector,separator);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, ClickEvent ce){return selector(selector,separator).event(ce).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, HoverEvent he){return selector(selector,separator).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, String flags){selector(selector,separator).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, ChatColor color){return selector(selector,separator).event(ce).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, HoverEvent he){return selector(selector,separator).event(ce).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, String flags){selector(selector,separator).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ChatColor color){return selector(selector,separator).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ClickEvent ce){return selector(selector,separator).event(ce).event(he);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, String flags){selector(selector,separator).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ChatColor color){selector(selector,separator).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ClickEvent ce){selector(selector,separator).event(ce);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, HoverEvent he){selector(selector,separator).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, ClickEvent ce, HoverEvent he){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, ClickEvent ce, String flags){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, HoverEvent he, ClickEvent ce){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, HoverEvent he, String flags){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, String flags, ClickEvent ce){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, String flags, HoverEvent he){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, ChatColor color, HoverEvent he){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, ChatColor color, String flags){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, HoverEvent he, ChatColor color){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, String flags, ChatColor color){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ChatColor color, ClickEvent ce){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ChatColor color, String flags){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ClickEvent ce, ChatColor color){return selector(selector,separator).event(ce).event(he).color(color);}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, String flags, ChatColor color){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ChatColor color, HoverEvent he){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, HoverEvent he, ChatColor color){selector(selector,separator).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, ClickEvent ce, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, ClickEvent ce, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, HoverEvent he, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, HoverEvent he, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, String flags, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ChatColor color, String flags, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, ChatColor color, HoverEvent he, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, ChatColor color, String flags, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, HoverEvent he, ChatColor color, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, HoverEvent he, String flags, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, String flags, ChatColor color, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, ClickEvent ce, String flags, HoverEvent he, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ChatColor color, ClickEvent ce, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ChatColor color, String flags, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ClickEvent ce, ChatColor color, String flags){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, ClickEvent ce, String flags, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, String flags, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, HoverEvent he, String flags, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ChatColor color, ClickEvent ce, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ChatColor color, HoverEvent he, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ClickEvent ce, ChatColor color, HoverEvent he){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, ClickEvent ce, HoverEvent he, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, HoverEvent he, ChatColor color, ClickEvent ce){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
public BaseComponentBuilder selector(String selector, BaseComponentBuilder separator, String flags, HoverEvent he, ClickEvent ce, ChatColor color){selector(selector,separator).event(ce).event(he).color(color);parseFlags(flags);return this;}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment