Jump to content

Commands help!!


riky181
 Share

Recommended Posts

In your main class, if you don't have it already, receive the 'FMLServerStartingEvent'. Create a class that extends 'CommandBase' and override at least 'getCommandName', 'getCommandUsage', and 'execute'.

 

 

In the event handler for 'FMLServerStartingEvent', do 'event.registerServerCommand(new YourCustomCommandClass())'.

 

 

'getCommandName' should return a string of the base command name, the text you type in to activate it.

 

 

Optionally, inside the command class, create a List<String> variable for the command's aliases (alternate text the user can type to activate your command), and in the constructor for the command class, initialize the aliases variable and add strings to it.  Now override 'getCommandAliases' and return the aliases List.

 

 

In 'getCommandUsage' return a string of the message you want the player to receive when they type the command in without any arguments iirc?  It may also show in the help command.

 

 

Do whatever you want to happen when the command is run in 'execute'.  args[0] is the first argument after your command, args[1] is the second, and so on, for however many arguments you want to have.  Args are delimited by spaces, by the way.

 

[edit] getCommandUsage would be something like

 

return "yourcommandname <arg0> <arg1> <etc>";

Link to comment
Share on other sites

Sorry for being unclear. I know how to do that, it is only that watching other old tutorials what I type in the execute doesn't work.

 

I wanted the player to type /test <arg> and the chat showed: Test: <arg> but the code it showed on a forum was from 1.6.4 and it didn't work.

How can i do that?

 

Oh and for instance how do i use an already existing minecraft command for instance:

 

/test2 <arg> should /kick <arg>

thanks

Link to comment
Share on other sites

Sorry for being unclear. I know how to do that, it is only that watching other old tutorials what I type in the execute doesn't work.

 

I wanted the player to type /test <arg> and the chat showed: Test: <arg> but the code it showed on a forum was from 1.6.4 and it didn't work.

How can i do that?

player.addChatMessage(...). But of course you would need to grab all of the strings from args to do this.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

I think he means command forwarding, like doing /test kick would then execute the /kick command?

Thanks I didn't see that...

I thnk it is as simple as getting a player variable and using player.sendChatMessage("/somecommand");

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.