ChatsPlus

The solution for custom chats with a lot of features.

414

ChatsPlus

<center>If you're looking for a plugin that allows you to make multiple different chats, then this one is for you!</center>

<center>ChatsPlus allows you to create chats that only certain players and ranks can join and chat in, assign those chats to a certain world and much more!

This plugin also has EssentialsDiscord support. If you have chats, that should not be shown in a Discord server, then you can have them ignored using a sub-configuration inside the config file. (More about that in the config section of this description)</center>

It is recommended to use a permissions plugin like LuckPerms for the best experience.

This plugin supports Placeholder API!

|Placeholder|Description| |:------|:------| |%chatsplus_chat%|returns the chat name the player is in.|

<center>This plugin mainly uses the main command <b>/chat</b> in-game, however it comes with subcommands.</center> <p> </p>

|Command Sender|Command|Description|Permission| |:---|:---|:---|:---| |Player|/chat <chat>|Assigns you to a chat|chatsplus.command.chat.<chat>| |Player|/chat off|Unassigns you from a chat|chatsplus.command.off| |Player|/chat mute <chat>|Mutes a chat for the player.|chatsplus.command.mute| |Player|/chat unmute <chat>|Unmutes a chat for the player.|chatsplus.command.unmute| |Player|/chat help|Shows the list of commands.|chatsplus.command.help| ||||| |Admin|/chat assign <player> <chat>|Assigns player to a chat.|chatsplus.command.assign| |Admin|/chat kick <player>|Kicks player from chat they're assigned to.|chatsplus.command.kick| |Admin|/chat reload|Reloads the configs of this plugin.|chatsplus.command.reload| ||||| |Console|chatsystem listChats|Lists up all chats.|-/-| |Console|chatsystem listWorldChats|Lists up all worlds with chat assigned.|-/-| |Console|chatsystem getPlayerChats|Lists up all players who are assigned to a chat.|-/-| |Console|chatsystem reload|Reloads the configs of this plugin.|-/-|

|Permission|Default| |:--|:--| |chatsplus.command.*|true| |chatsplus.command.help|true| |chatsplus.command.chat.<chat>|true| |chatsplus.command.off|true| |chatsplus.command.mute|true| |chatsplus.command.unmute|true| |chatsplus.command.assign|op| |chatsplus.command.reload|op| |chatsplus.command.kick|op| ||| |chatsplus.admin.*|op| |chatsplus.admin.join|true| |chatsplus.admin.bypass|true| |chatsplus.chat.read.<chat>|op|

config.yml

```YAML #############################

CHATSPLUS by Niestrat99 #

#############################

###########

DEBUG #

###########

Allows the developer to try and find out any possible bugs.

debug-mode: false

[]>-----------------------------------------------------------------------------<[]

###########

CHATS #

###########

This option allows you to make new chats. Simply add them to the list below.

Each chat, that you create, will automatically have a permission named 'chatsplus.chat.<chatName>'.

The chats must have sub-settings set up as well, or else it uses default values which may look ugly.

- title = The text that appears in the very front of the message.

- nameTag = The way the player name is displayed. You can make it look like "xXPlayerNameXx" for example.

- messageColor = The color of what the actual message shall appear in.

- ignoreDiscord = This prevents the EssentialsX Discord plugin from sending a message out of this chat into the Discord server, if set to "true".

EXAMPLE:

chats:

vip:

title: '&8[&6VIP&8]'

nameTag: '&8<&6name&8>'

messageColor: '&6'

ignoreDiscord: true

#

NOTE:

- The color codes (e.g. &6) are optional, but allow you to make your chats look fancier.

- You MUST have the text "name" included in your nameTag section, or else the player name won't be displayed.

chats: staff: title: '&b[&fStaffChat&b]' nameTag: '&b<&fname&b>' messageColor: '&r' ignoreDiscord: true vip: title: '&8[&6VIP&8]' nameTag: '&8<&6name&8>' messageColor: '&6' ignoreDiscord: true

[]>-----------------------------------------------------------------------------<[]

####################

PER WORLD CHAT #

####################

In this section, you can assign a chat to a certain world.

If a player joins that world, they'll automatically be assigned to that specific chat.

Just like the chats section, this section also comes with sub configurations:

- chat = The chat that shall be assigned to the world

- isGlobal <true/false> = Whether the chat shall appear in all worlds or not

- offStandard <true/false> = If the player shall be put into the assigned that when using /chat off/kick

To assign a chat to a world you do the following:

per-world-chat:

world:

chat: vip

isGlobal: true

offStandard: false

#

NOTE:

- The world must match the world's actual name.

- All three sub configurations MUST be included! If not, then the plugin will set default values to it.

- Make sure you're setting a valid chat created in the chats section above, or else the plugin will remove that setting.

per-world-chat: world: chat: vip isGlobal: true offStandard: true

[]>-----------------------------------------------------------------------------<[]

#########################

ASSIGN CHAT ON JOIN #

#########################

Assigns the joining player to the specified chat, if they have the permission 'chatsplus.admin.join'.

This can be ideal, if you want staff members to be automatically assigned to a staff chat.

It bypasses the Per-World-Chat settings.

assign-chat-on-join: "" ```

If you found any issues, got questions or need help with this plugin, then feel free to reach out to me here: - Discord - Github Issue Tracker

ADS