Table of Contents

Class ChatMessage

Namespace
Obsidian.API
Assembly
Obsidian.API.dll
public sealed record ChatMessage : INetworkSerializable<ChatMessage>, IEquatable<ChatMessage>
Inheritance
ChatMessage
Implements
Inherited Members

Constructors

ChatMessage()

public ChatMessage()

Properties

Bold

public bool Bold { get; set; }

Property Value

bool

ClickEvent

public ClickComponent? ClickEvent { get; set; }

Property Value

ClickComponent

Color

public HexColor? Color { get; set; }

Property Value

HexColor?

Empty

public static ChatMessage Empty { get; }

Property Value

ChatMessage

Extra

public List<ChatMessage>? Extra { get; }

Property Value

List<ChatMessage>

HoverEvent

public HoverComponent? HoverEvent { get; set; }

Property Value

HoverComponent

Insertion

public string? Insertion { get; set; }

Property Value

string

Italic

public bool Italic { get; set; }

Property Value

bool

Obfuscated

public bool Obfuscated { get; set; }

Property Value

bool

Strikethrough

public bool Strikethrough { get; set; }

Property Value

bool

Text

public string? Text { get; set; }

Property Value

string

Translate

public string? Translate { get; set; }

Property Value

string

Underlined

public bool Underlined { get; set; }

Property Value

bool

With

public List<ChatMessage>? With { get; }

Property Value

List<ChatMessage>

Methods

AddChatComponent(ChatMessage)

public ChatMessage AddChatComponent(ChatMessage message)

Parameters

message ChatMessage

Returns

ChatMessage

AddChatComponent(IEnumerable<ChatMessage>)

public ChatMessage AddChatComponent(IEnumerable<ChatMessage> message)

Parameters

message IEnumerable<ChatMessage>

Returns

ChatMessage

AddExtra(ChatMessage)

public ChatMessage AddExtra(ChatMessage message)

Parameters

message ChatMessage

Returns

ChatMessage

AddExtra(IEnumerable<ChatMessage>)

public ChatMessage AddExtra(IEnumerable<ChatMessage> messages)

Parameters

messages IEnumerable<ChatMessage>

Returns

ChatMessage

AddExtra(List<ChatMessage>)

public ChatMessage AddExtra(List<ChatMessage> messages)

Parameters

messages List<ChatMessage>

Returns

ChatMessage

AppendColor(ChatColor)

public ChatMessage AppendColor(ChatColor color)

Parameters

color ChatColor

Returns

ChatMessage

AppendText(string)

public ChatMessage AppendText(string text)

Parameters

text string

Returns

ChatMessage

AppendText(string, ChatColor)

public ChatMessage AppendText(string text, ChatColor color)

Parameters

text string
color ChatColor

Returns

ChatMessage

Click(ChatMessage, ClickAction, string)

Appends an underlying ClickEvent (ClickComponent) to the given ChatMessage.

public static ChatMessage Click(ChatMessage message, ClickAction action, string value)

Parameters

message ChatMessage

The message which will hold the ClickComponent.

action ClickAction

The action which will be executed when clicking.

value string

The value which will be executed with the action.

Returns

ChatMessage

The given ChatMessage.

Equals(ChatMessage?)

public bool Equals(ChatMessage? other)

Parameters

other ChatMessage

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetExtraChatComponents()

public IEnumerable<ChatMessage> GetExtraChatComponents()

Returns

IEnumerable<ChatMessage>

GetExtras()

public IEnumerable<ChatMessage> GetExtras()

Returns

IEnumerable<ChatMessage>

GetHashCode()

public override int GetHashCode()

Returns

int

Hover(ChatMessage, HoverAction, IHoverContent)

Appends an underlying HoverEvent (HoverComponent) to the given ChatMessage.

public static ChatMessage Hover(ChatMessage message, HoverAction action, IHoverContent contents)

Parameters

message ChatMessage

The message which will hold the HoverComponent.

action HoverAction

The action which will be executed when clicking.

contents IHoverContent

The contents which will be executed with the action.

Returns

ChatMessage

The given ChatMessage.

ReformatAmpersandPrefixes(string)

public static string ReformatAmpersandPrefixes(string originalText)

Parameters

originalText string

Returns

string

Simple(string)

Creates a new ChatMessage object with plain text.

public static ChatMessage Simple(string text)

Parameters

text string

The text of the ChatMessage.

Returns

ChatMessage

The created ChatMessage object.

Simple(string, ChatColor)

Creates a new ChatMessage object with plain text.

public static ChatMessage Simple(string text, ChatColor color)

Parameters

text string

The text of the ChatMessage.

color ChatColor

The ChatColor of the ChatMessage.

Returns

ChatMessage

The created ChatMessage object.

SimpleLegacy(string)

Creates a new ChatMessage object with plain text. The text will be reformatted by using the ReformatAmpersandPrefixes(string) method.

public static ChatMessage SimpleLegacy(string text)

Parameters

text string

The text of the ChatMessage.

Returns

ChatMessage

The created ChatMessage object.

SimpleLegacy(string, ChatColor)

Creates a new ChatMessage object with plain text. The text will be reformatted by using the ReformatAmpersandPrefixes(string) method.

public static ChatMessage SimpleLegacy(string text, ChatColor color)

Parameters

text string

The text of the ChatMessage.

color ChatColor

The ChatColor of the ChatMessage.

Returns

ChatMessage

The created ChatMessage object.

ToString()

public override string ToString()

Returns

string

ToString(JsonSerializerOptions)

public string ToString(JsonSerializerOptions options)

Parameters

options JsonSerializerOptions

Returns

string

TranslatableChatMessageType(string, ChatColor, string)

public static ChatMessage TranslatableChatMessageType(string text, ChatColor color, string username)

Parameters

text string
color ChatColor
username string

Returns

ChatMessage

TranslatableChatMessageType(string, string)

public static ChatMessage TranslatableChatMessageType(string text, string username)

Parameters

text string
username string

Returns

ChatMessage

Operators

operator +(ChatMessage, ChatColor)

Adds the given ChatColor to the text of the given ChatMessage.

public static ChatMessage operator +(ChatMessage a, ChatColor b)

Parameters

a ChatMessage

The message on which the chat color gets appended.

b ChatColor

The chat color which will be appended.

Returns

ChatMessage

The modified chat message.

operator +(ChatMessage, ChatMessage)

Adds the right ChatMessage to the Extra of the left ChatMessage.

public static ChatMessage operator +(ChatMessage a, ChatMessage b)

Parameters

a ChatMessage

The left chat message on which the right one gets appended.

b ChatMessage

The right chat message which will be appended.

Returns

ChatMessage

The modified chat message.

operator ==(ChatMessage?, ChatMessage?)

public static bool operator ==(ChatMessage? left, ChatMessage? right)

Parameters

left ChatMessage
right ChatMessage

Returns

bool

implicit operator ChatMessage(string)

public static implicit operator ChatMessage(string text)

Parameters

text string

Returns

ChatMessage

operator !=(ChatMessage?, ChatMessage?)

public static bool operator !=(ChatMessage? left, ChatMessage? right)

Parameters

left ChatMessage
right ChatMessage

Returns

bool

Explicit Interface Implementations

Read(INetStreamReader)

static ChatMessage Read(INetStreamReader reader)

Parameters

reader INetStreamReader

Returns

ChatMessage

Write(ChatMessage, INetStreamWriter)

static void Write(ChatMessage value, INetStreamWriter writer)

Parameters

value ChatMessage
writer INetStreamWriter