Mutable Components

Supported MCreator versions
2024.1
2024.2
2024.3
2024.4
2025.1
Tags / plugin type
Procedures
Variables
A text that reads "Mutable Components!" in various different chat colors and text types, such as bold, italic, underline, and strikethrough
Downloads:
575
Upvotes: 3
About the plugin

Ever wanted to make customizable chats, item names, or more interactability in general? This plugin helps you use a class called Mutable Components, allowing you to do exactly that!

Supported plugin versions:
Forge 1.20.1, NeoForge 1.21.1, NeoForge 1.21.4

Actions:

Append [comp1] to [comp2] -- Adds comp1 to comp2 as a sibling
For each sibling appending to [component] as [componentiterator] do [statement]
Set display name of [entity] to component [component]
Send component [component] to [entity] show in action bar [boolean]
Send command result component [component] inform admins [true] -- As explained in my other plugin, sending a command result message respects the SendCommandFeedback gamerule, won't show message if executing command from another procedure, and works as getting the message as result.
Send command failure component [component] -- Gives an error message (note: This is always colored red due to the way it's coded)
Set custom item name of [item] to [component] (NF Only) -- Unlike setting a display name, the (custom) item name won't be italicized by default
Set display name of [item] to [component]
Set chat message to [component] (Player sent chat)
Set text of sign block at [x] [y] [z] at line [number] to [component] front side [boolean] -- The boolean determines what side of the sign should be changed. If it's true, the front will be edited, otherwise the back will be edited.
Send component [component] to all players

Data:

Get value from the click event of [component]
Get color of [component]
Does [component] have a click event
Does [component] have a hover event
Get component from hover event of [component] -- Gets the message of the hoverevent if its set to SHOW_TEXT
Get copy of item from hover event of [component]
Is type of click event from [component] equal to [hovereventtype]
Is type of hover event from [component] equal to [clickeventtype]
[component] with RGB color [int]
[component] with click event of type [clickeventtype] with value [string] -- Do note that not every click type works in all contexts. For example, (I believe) signs can only use RUN_COMMAND, and display names for entities/items don't use any. CHANGE_PAGE is currently useless as it only applies to books, but that will very likely be added in a future update
[component] with hover event with [component] -- The type of this hover event is SHOW_TEXT, the result is component2
[component] with hover event with item [item]
[component] with text format style [chatformatstyle]
Component with text [string] -- The basic message that MCreator uses by default
Make a copy of [component]
Does [component] have [component2] -- Checks if component2 is a sibling of component
Get display name of [entity] as component
Execute command [string] at [x] [y] [z] and get result as component
Execute command [string] in the name of [entity] and get result as component
Get display name of [item] as component
Get sent chat as component (Player sent chat)
Get text from sign at [x] [y] [z] from line [int] get front [boolean] -- If boolean is true, gets text from front side of sign, otherwise the back side text is received
Is [component] [styletype/empty]
Text from component [component]
 [component] with hover event with entity [entity] -- Not entirely sure where this is used in 1.21.1, but in 1.21.4 you can see the info of the given entity for command messages
Is entity from hover event of [component] type of [entitytype]
Get UUID from entity from hover event of [component]
Get name of entity from hover event of [component] as component

Utils:

Empty component
Convert R [int] G [int] B [int] to number
Get R from RGB [int]
get G from RGB [int]
get B from RGB [int]

Changelog

For the full list of changes, check this file

v1.2.0

  • Added Forge 1.20.1 support (Setting custom item name isn't possible for Forge, but at least setting display name is)

v1.1.3

  • Un-did util stuff for NeoForge 1.21.1 procedures for the sake of 2024.4 support

v1.1.2

  • Fixed a few procedures with number inputs giving errors

v1.1.1

  • Replaced "Get (reference of) entity from hover event of [component]" with "Is entity from hover event of [component] type of [entitytype]" (Entity reference would return null if it was a player)

Plugin downloads
v1.2.0 - mutablecomponents_7.zip Uploaded on: 03/29/2025 - 11:10   File size: 76.22 KB

Comments

Can one obfuscate part of an item/block's name with this plugin? As in that rapidly changing unreadable text? That'd be pretty cool.