Hello Everyone!
This is a community provided update that adds support for 1.18!
Thanks to everyone who worked on this update including:
Kaliber#4386
For support and feedback please join our Discord:
https://discord.gg/helpchat
1.16.3
This version adds support for Minecraft 1.16.4.
1.16.2
Added support for 1.16.2
1.16.0
Adds support for Minecraft 1.16
1.15.0
Added support for Minecraft 1.15
1.14.0
Added support for Minecraft 1.14
1.13.1
Added support for v1_13_R2 NMS
1.13.0
This version adds support for 1.13-R1 NMS. This version also uses the 1.13 api-version entry in the plugin.yml but that should have no affect on backwards compatibility. This version has been tested on 1.13 with no issues.
1.12.0
Added support for MC 1.12
1.11.0
Added support for MC 1.11
1.10.0
Added support for Minecraft 1.10 (v1.10R1)
1.9.1
Added support for Spigot 1.9.4
1.9
Added support for 1.9_R1 packets.
1.7
Added Spigot 1.8.4 compatibility 
1.6
This version adds a new hook to my latest plugin/API PlaceholderAPI to allow any of my placeholders without the need for DeluxeChat to be present.
If you would like to add placeholders to ActionAnnouncer, simply download PlaceholderAPI and install it on your server with ActionAnnouncer!
1.5.3
Fix for %player% placeholder not working.
1.5.2
Adjusted DeluxeChat placeholder integration to not hook if you are using an incompatible version of DeluxeChat.
Added placeholder support when an action bar message is sent from the ActionAnnouncer API.
1.5.1
Added backwards compatibility for
Spigot 1.8-1.8.1 servers.
This also includes compatibility with DeluxeChat 1.4.9 which allows you to use hundreds of placeholders in ActionAnnouncer if you use DeluxeChat.
Added config option to enable/disable hooking into DeluxeChat for placeholders.
1.5
If you have DeluxeChat 1.5 and ActionAnnouncer 1.5 installed on your Spigot 1.8.3 server, you now have access to hundreds of DeluxeChat placeholders you can use in ActionAnnouncer!
You can simply add a placeholder to your ActionAnnouncer messages:
1.4
Updated to Spigot 1.8.3
This version is not backwards compatible!
(It will not work on Spigot 1.8-1.8.1)
I will add backwards compatibility in the next version.
1.3.4
Small update.
Added compatibility for minechat users as they would get spammed with multiple chat messages every time an actionannouncer message is broadcasted.
The next update will include support for permission based announcement lists 
This update is a lie.... I thought I had a solution for minechat but it turns out I am a noob and minechat still gets spammed
I will have a fix in Spigot 1.8.3
1.3.3
Fixed actionbar message flickering between messages when a new message is sent while an older message was already being sent.
Players will only have 1 message at a time, the most recent message sent will always override and cancel the previous message.
This bug was likely to happen when you have an interval broadcast being sent and send an actionbar announcement or msg by command, or when you send a message with a very long display time and another message happens to pop up while the long one is showing.
1.3.2
You can now define how long the actionbar message is displayed when you use /aa send or /aa announce!
Added API method for other plugins to send Actionbar announcements for a certain amount of time!
Code (Text):
ActionAPI.sendTimedPlayerAnnouncement(Plugin plugin, Player p, String msg, int seconds)
Also changed all ActionAnnouncer message format/color a bit 
1.3.1
Added permission node to /aa help
permission node is actionannouncer.help
1.3
Added config option to allow you to adjust the length of the Announcement Shown.
USE THE NEW CONFIG OPTION AT YOUR OWN RISK.
Spigot/Bukkit does not support or have an option to adjust the length of time the action bar message is shown. In ActionAnnouncer I simply run a task that loops x amount of times and resends the message packet which allows it to be shown for x more seconds.
What this new option does is basically lets you define how many times this task runs.
The reason I say use at your own risk is because if you set the announcement length greater than the interval length, there could be issues as those tasks are going to start over for the next message.
I have tested with the announcement length <= interval time
With both times set to the same number, there is no break in the messages and the transition to the new message is seamless.
Here is the new config:
Code (Text):
# ActionAnnouncer v1.3 Main configuration
announcer_enabled: true
announcer_random: false
announce_interval: 10
announcement_length: 10
announcements:
- '&aTest 1'
- '&cTest 2'
- '&bTest 3'
- '&6Test 4'
announce_on_join: true
join_announcement: '&eWelcome to the server &b%player%!'
disable_sounds: false
Also added 2 new commands:
/aa start
start auto announcements if they are stopped
/aa stop
stop auto announcements if they are enabled
Keep in mind this is for 1.8 only
1.2
Updated dependencies to Spigot-1.8 and Spigot API-1.8
Removed "message outdated client instead" options as it is no longer needed.
This has been tested and is confirmed working for 1.8
1.1.2
Many adjustments have been made to improve performance!
Fixed error with /aa announce <index> when announcement list is empty
Added MetricsLite to collect anonymous stats on how many servers are using the plugin.
(you can opt out of Metrics in /plugins/PluginMetrics/config.yml but it is nice for us plugin developers to see stats about our plugins)
1.1.1
This update fixes placeholders not showing correctly when outdated clients receive chat messages instead of Actionbar announcements.
This update fixes an error that occurred when modifying the announcement list.
Also adjusted the random announcement setting to not send the same message twice. (I thought this was fixed but I missed one small thing :/)
1.0.9
This version fixes announcement being spammed to players not running on 1.8 clients if you have it set to send the announcement as a message.
1.0.8
Fixed npe when using /aa send.
1.0.7
Added config option to send announcements via message for clients lower than 1.8!
New config options:
outdated_client_send_message_instead: true
outdated_client_msg_prefix: '&c[&aAnnouncement&c] &r'
1.0.6
This version fixes %online% not showing the amount of players but rather the player list......
Added API for other plugins/developers to use!
You can hook into ActionAnnouncer and send ActionBar announcements with a very simple method!
Here is an example of the API usage.
Code (Text):
package me.clip.actiontest;
import me.clip.actionannouncer.ActionAPI;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;
public class ActionAnnouncerHookTest extends JavaPlugin implements Listener {
@Override
public void onEnable() {
if (Bukkit.getServer().getPluginManager().getPlugin("ActionAnnouncer") == null
|| !Bukkit.getServer().getPluginManager().getPlugin("ActionAnnouncer").isEnabled()) {
getLogger().warning("could not hook into ActionAnnouncer!");
}
else {
Bukkit.getServer().getPluginManager().registerEvents(this, this);
}
}
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onBlockBreak(BlockBreakEvent event) {
ActionAPI.sendPlayerAnnouncement(event.getPlayer(), "You broke a block!");
}
@EventHandler
public void onJoin(PlayerJoinEvent event) {
if (event.getPlayer().getName().equals("extended_clip")) {
ActionAPI.sendServerAnnouncement("extended_clip has joined the game guys!");
}
}
}
1.0.5
This update fixes errors when using /aa send and /aa announce
when the announcement message contains only 1 word.
1.0.4
Added ability to quick announce the active interval announcements by specifying the index of the announcement in commands!
you can now use
/aa announce 0 or any number that is a valid index of of a mesage
to announce the message at the index provided
/aa announce this is a message
will still work!
This will work for /aa send <player> <index/message> too!
1.0.3
Added:
/aa add <message>
/aa remove <index>
/aa list
You can now edit the announcements in game or from console!
New permissions:
Code (Text):
actionannouncer.list:
description: list active announcements
default: op
actionannouncer.add:
description: add an announcement
default: op
actionannouncer.remove:
description: remove an announcement
default: op
1.0.2
Reorganized tasks to be more efficient.
Added option to display announcements at random or in order
Added check to reduce chances of duplicate announcements back to back if set to random
Here is the new config:
Code (Text):
# ActionAnnouncer v1.0.2 Main configuration
announcer_enabled: true
announcer_random: false
announce_interval: 14
announcements:
- '&a0'
- '&b1'
- '&a2'
announce_on_join: true
join_announcement: '&eWelcome to the server &b%player%! There are &f%online% &epeople
online!'
disable_sounds: false
1.0.1 allows you to add the placeholder %player% in any /aa send or /aa anounce messages to be replaced with the targets name.
This could be useful if you send announcements with other plugins such as a voting listener or other command based plugins!