CommandMessage
This is a guide to learn how to get easily your command messages.
What is CommandMessage ?
CommandMessage is a class which allows you to get your command messages at a specific path from a json file. This class is very useful to centralize all your command messages in a single file without using a config file.
How to create CommandMessage ?
At this point, you should have something like this in your command resource file.
{
"item": {}
}To create a CommandMessage, write the following code into the item section:
"commandMessage": {}So you should have something like this:
{
"item": {
"commandMessage": {}
}
}How to use CommandMessage ?
You've created your CommandMessage. Now, let's use it. First of all, to get a message stored in the commandMessage section in the json file, you must retrieve the getCommandMessage() method from the SmartCommand class.
This is an example in the onCommand() method:
Let's see the available methods of this class:
Method
Type
Description
getString(String path)
String
Get a String at the specified path
getByte(String path)
byte
Get a byte at the specified path
getShort(String path)
short
Get a short at the specified path
getInt(String path)
int
Get an int at the specified path
getDouble(String path)
double
Get a double at the specified path
getFloat(String path)
float
Get a float at the specified path
getLong(String path)
long
Get a long at the specified path
getList<?>(String path)
List<?>
Get a List<?> at the specified path
getEasyComponent(String path)
EasyComponent
Get an EasyComponent at the specified path
getTextComponent(String path)
TextComponent
Get a TextComponent at the specified path
get(String path)
JsonElement
Get a JsonElement at the specified path
How it works ?
To get our command messages, we need to specify an access path. Indeed, a JsonObject stores values from keys so we will use them to create a path that points to our values.
Example 1
To get the value "It's a test", which is directly in the commandMessage object, the path is "test".
So the code to retrieve this message is:
Example 2
Here, we have two values which are in a sub object of commandMessage. So to get them, we have to specify the sub object and the key where our values is stored.
For example, the path of "The first message" value if "messages.firstMessage" and that of "Another message" is "messages.anotherMessage".
Let's see the code to retrieve these two messages:
Last updated