Co-authored-by: zml <zml@stellardrift.ca> Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com> Co-authored-by: Yannick Lamprecht <yannicklamprecht@live.de>
166 lines
3.3 KiB
Java
166 lines
3.3 KiB
Java
package org.bukkit.entity;
|
|
|
|
import org.bukkit.Color;
|
|
import org.jetbrains.annotations.NotNull;
|
|
import org.jetbrains.annotations.Nullable;
|
|
|
|
/**
|
|
* Represents a text display entity.
|
|
*/
|
|
public interface TextDisplay extends Display {
|
|
|
|
/**
|
|
* Gets the displayed text.
|
|
*
|
|
* @return the displayed text.
|
|
* @deprecated in favour of {@link #text()}
|
|
*/
|
|
@Nullable
|
|
@Deprecated // Paper
|
|
String getText();
|
|
|
|
/**
|
|
* Sets the displayed text.
|
|
*
|
|
* @param text the new text
|
|
* @deprecated in favour of {@link #text(net.kyori.adventure.text.Component)}
|
|
*/
|
|
@Deprecated // Paper
|
|
void setText(@Nullable String text);
|
|
|
|
// Paper start
|
|
/**
|
|
* Gets the displayed text.
|
|
*
|
|
* @return the displayed text
|
|
*/
|
|
net.kyori.adventure.text.@NotNull Component text();
|
|
|
|
/**
|
|
* Sets the displayed text.
|
|
*
|
|
* @param text the new text
|
|
*/
|
|
void text(net.kyori.adventure.text.@Nullable Component text);
|
|
// Paper end
|
|
|
|
/**
|
|
* Gets the maximum line width before wrapping.
|
|
*
|
|
* @return the line width
|
|
*/
|
|
int getLineWidth();
|
|
|
|
/**
|
|
* Sets the maximum line width before wrapping.
|
|
*
|
|
* @param width new line width
|
|
*/
|
|
void setLineWidth(int width);
|
|
|
|
/**
|
|
* Gets the text background color.
|
|
*
|
|
* @return the background color
|
|
*/
|
|
@Nullable
|
|
Color getBackgroundColor();
|
|
|
|
/**
|
|
* Sets the text background color.
|
|
*
|
|
* @param color new background color
|
|
*/
|
|
void setBackgroundColor(@Nullable Color color);
|
|
|
|
/**
|
|
* Gets the text opacity.
|
|
*
|
|
* @return opacity or -1 if not set
|
|
*/
|
|
byte getTextOpacity();
|
|
|
|
/**
|
|
* Sets the text opacity.
|
|
*
|
|
* @param opacity new opacity or -1 if default
|
|
*/
|
|
void setTextOpacity(byte opacity);
|
|
|
|
/**
|
|
* Gets if the text is shadowed.
|
|
*
|
|
* @return shadow status
|
|
*/
|
|
boolean isShadowed();
|
|
|
|
/**
|
|
* Sets if the text is shadowed.
|
|
*
|
|
* @param shadow if shadowed
|
|
*/
|
|
void setShadowed(boolean shadow);
|
|
|
|
/**
|
|
* Gets if the text is see through.
|
|
*
|
|
* @return see through status
|
|
*/
|
|
boolean isSeeThrough();
|
|
|
|
/**
|
|
* Sets if the text is see through.
|
|
*
|
|
* @param seeThrough if see through
|
|
*/
|
|
void setSeeThrough(boolean seeThrough);
|
|
|
|
/**
|
|
* Gets if the text has its default background.
|
|
*
|
|
* @return default background
|
|
*/
|
|
boolean isDefaultBackground();
|
|
|
|
/**
|
|
* Sets if the text has its default background.
|
|
*
|
|
* @param defaultBackground if default
|
|
*/
|
|
void setDefaultBackground(boolean defaultBackground);
|
|
|
|
/**
|
|
* Gets the text alignment for this display.
|
|
*
|
|
* @return text alignment
|
|
*/
|
|
@NotNull
|
|
TextAlignment getAlignment();
|
|
|
|
/**
|
|
* Sets the text alignment for this display.
|
|
*
|
|
* @param alignment new alignment
|
|
*/
|
|
void setAlignment(@NotNull TextAlignment alignment);
|
|
|
|
/**
|
|
* Represents possible text alignments for this display.
|
|
*/
|
|
public enum TextAlignment {
|
|
|
|
/**
|
|
* Center aligned text (default).
|
|
*/
|
|
CENTER,
|
|
/**
|
|
* Left aligned text.
|
|
*/
|
|
LEFT,
|
|
/**
|
|
* Right aligned text.
|
|
*/
|
|
RIGHT;
|
|
}
|
|
}
|