ClickEvent and HoverEvent support of /chat package

This commit is contained in:
Tnze
2021-12-17 01:05:32 +08:00
parent 32a33b4d4e
commit 19481ab95e
3 changed files with 127 additions and 18 deletions

34
chat/hoverevent.go Normal file
View File

@ -0,0 +1,34 @@
package chat
// HoverEvent defines an event that occurs when this component hovered over.
type HoverEvent struct {
Action string `json:"action"`
Value Message `json:"value"`
}
// ShowText show the text to display.
func ShowText(text Message) *HoverEvent {
return &HoverEvent{
Action: "show_text",
Value: text,
}
}
// ShowItem show the item to display.
// Item is encoded as the S-NBT format, nbt.StringifiedMessage could help.
// See: https://wiki.vg/Chat#:~:text=show_item,in%20red%20instead.
func ShowItem(item string) *HoverEvent {
return &HoverEvent{
Action: "show_item",
Value: Text(item),
}
}
// ShowEntity show an entity describing by the S-NBT, nbt.StringifiedMessage could help.
// See: https://wiki.vg/Chat#:~:text=show_entity,given%20entity%20loaded.
func ShowEntity(entity string) *HoverEvent {
return &HoverEvent{
Action: "show_entity",
Value: Text(entity),
}
}