Package Exports
- prismarine-chat
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (prismarine-chat) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
prismarine-chat
A parser for a minecraft chat message
Usage
const ChatMessage = require('prismarine-chat')('1.16')
const msg = new ChatMessage({"text":"Example chat mesasge"})
console.log(msg.toString()) // Example chat message
API
ChatMessage(message,[displayWarning])
message- Can be either text or a minecraft chat JSON objectdisplayWarning- Display warnings if true, default to false
chat.toString([lang])
Flattens the message in to plain-text
lang- (optional) - Set a custom lang (defaults to mcData.language)
chat.toMotd([lang], parent)
Converts to motd format
lang- (optional) - Set a custom lang (defaults to mcData.language)parent- Set a custom lang (defaults to mcData.language)
chat.getText(idx, [lang])
Returns a text part from the message
idx- Index of the partlang- (optional) - Set a custom lang (defaults to mcData.language)
chat.toAnsi([lang])
Converts to ansi format
lang- (optional) - Set a custom lang (defaults to mcData.language)
chat.length()
Returns the count of text extras and child ChatMessages Does not count recursively in to the children
chat.append(ChatMessage)
Appends another ChatMessage or a string
chat.clone()
Returns a clone of the ChatMessage
const { MessageBuilder } = require('prismarine-chat')('1.16')
const msg = new MessageBuilder().setText('Example chat mesasge')
console.log(JSON.stringify(msg)) // The string as a message component
static ChatMessage.fromNotch(msg)
Returns a prismarine-chat representation of the message recieved from the 'chat' packet, example shown here
MessageBuilder()
setBold (val: boolean) : this
setItalic (val: boolean) : this
setUnderlined (val: boolean) : this
setStrikethrough (val: boolean) : this
setObfuscated (val: boolean) : this
setColor (val: string) : this
setText (val: string) : this
check code for examples (and explanations) from here on
setFont (val: string) : this
setTranslate (val: string) : this
setInsertion (val: string) : this
setKeybind (val: string) : this
setScore (name: string, objective: string) : this
setClickEvent (action: string, value: object) : this
setHoverEvent (action: string, data: object, type?: 'contents'|'value') : this
addExtra (val: MessageBuilder | string) : this
addWith (val: MessageBuilder | string) : this
resetFormatting () : void
sets every one of the formatting options to false and sets text to reset type
toJSON () : object
builder.toJSON() is the same thing as JSON.stringify(builder)
toString () : string
runs JSON.stringify() on this
static MessageBuilder.fromString(str, {colorSeparator = '&'}) : MessageBuilder
convert string with color codes like &4Hello&cWorld to a MessageBuilder object