- Add Hangar link
- Remove API custom bStats charts
- Add example PAPI expansion
- Remove
AnnoyingCooldown#getDuration()- Instead, just made
typepublic so the duration can be accessed usingCooldownType#getDuration()
- Instead, just made
- Add more
AnnoyingSenderutility methods- Added
AnnoyingSender#invalidArgument(Object)to send theAnnoyingOptions#invalidArgument message - Added
AnnoyingSender#invalidArguments()to send theAnnoyingOptions#invalidArgumentsmessage - Adjusted
ExampleCommandto reflect the above changes
- Added
- Add PAPI dependency & utility modifications
- If a PlaceholderAPI expansion is set, PlaceholderAPI will be added as a dependency
- Moved
AnnoyingUtilityinto theutilityfolder - Added
MapUtilityto more easily create maps (in Java 8, Java 9+ can just use staticMapmethods)
- Clarify
AnnoyingDownloaduse cases- Also removed PlaceholderAPI dependency adding if
AnnoyingOptions#papiExpansionToRegisterwas set
- Also removed PlaceholderAPI dependency adding if
- Use
MapUtilityinExamplePlugin - Make
papiExpansionToRegisteraSupplier<Object>- This will fix plugins setting
papiExpansionToRegisterwhen PlaceholderAPI isn't installed on the server
- This will fix plugins setting
- Add
AnnoyingFile#getRecipe(...)- Allows for you to get
Recipes from a YML file. You can see an example of the structure they should have in the example plugin's newconfig.yml
- Allows for you to get
- Add Javadocs to
MapUtility - Make
commandRegisterstatic - Add more custom getters to
AnnoyingFilegetAttributeModifier(String, AttributeModifier)getItemStack(String, ItemStack)- Improved
getRecipe(String, String, Recipe) - Added
MinecraftVersionto easily track the server's Minecraft version (for reflection) - Added
ReflectionUtilityto manage class/method/constructor/etc... reflection - Adjusted
ExamplePluginto match new changes
- Add enchantment error logging for
AnnoyingFile - Add enchantments using
ItemMeta - Add missing Javadocs and warning suppressions
- Add
AnnoyingUpdate#checkUpdate() - Fix
AnnoyingFileformatting - Add
ItemDataUtilityand improveMinecraftVersionItemDataUtilityallows you to add data to item stacks across all versions from 1.11-1.19.3 using their respective data management systems- 1.13-1.13.1 uses lore to store data which is very unreliable, so a warning message has been added for these versions
- An example has been added in
ExampleListener MinecraftVersionnow multiplies major version by10000to avoid future conflicts
- Delete qodana.yml
- Delete qodana.yaml
- 1.8.8+ support and NBT API
- Fix incorrect annotation
- Fix
AnnoyingMessagefor console - Use new reflection organization
- Add support for
Cmdin command class names- So now the API will also remove
Cmdfrom the class name when generating the command's name when one is not manually specified - Example: Instead of
ShopCommandyou can now just doShopCmd
- So now the API will also remove
- Added
AnnoyingUtility#colorCollection(Collection<?)- This allows you to translate the color codes for all objects in a collection.
AnnoyingUtility#color(String)was also adjusted to allow for anObjectto be passed
- This allows you to translate the color codes for all objects in a collection.
- Add
Refbefore each reflected class - Fix #5
- Use new system for plugin platforms
- Had to do this because Hangar's API requires the author name :(
- Remove TODOs
- Update links to new format
- Bump version (3.0.0)
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.1.2...3.0.0
This update includes 2.0.5, 2.1.0, 2.1.1, and 2.1.2 (I forgot to publish for the previous 3 oops...)
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.0.4...2.1.2
2.0.5
- Add
error.invalid-argumentmessage- Not used by anything in the API, but I end up adding it eventually in my plugins anyways
- Fix
AnnoyingFileissueAnnoyingResources wouldn't work because of a change from 2.0.4, this should fix it
- Add missing parameter Javadoc
- Made
AnnoyingSenderfields public- Removed getters too since they are no longer needed, also added Javadocs to the fields
- Bump version (2.0.5)
- I forgot to bump it for 2.0.4, oops...
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.0.4...2.0.5
2.1.0
- Add usage instructions for Maven by @MagicCheese1 in https://github.com/srnyx/annoying-api/pull/2
- Create qodana.yml
- Update qodana.yml
- Qodana fixes
- Update plugin.yml by @clickednebula3 in https://github.com/srnyx/annoying-api/pull/3
- Remove
@Contractfrom some methods - Update Gradle
- At least parts of it, can't update to 8.1 entirely yet!
- Update
README.mdlinks - bStats, update checking, file options, & more
- Added bStats (bstats.org)
- Added
AnnoyingOptions#bStatsId - Added
AnnoyingOptions#bStatsFileName - Added
AnnoyingOptions#bStatsOptions - Added
AnnoyingPlugin#bStats - Added
bstats.yml
- Added
- Added update checking
- Added
AnnoyingOptions#updateAvailable - Added
AnnoyingOptions#updatePlatforms - Added
AnnoyingPlugin#checkUpdate() - Added
AnnoyingUpdate
- Added
- Added
AnnoyingUtility#getJson(String, String) - Renamed
AnnoyingCommandRegistertoCommandRegister- Was also optimized
- Added
AnnoyingFile(AnnoyingPlugin, String) - Added
AnnoyingFile.FileOptions- Moved
AnnoyingFile#canBeEmptyinto this
- Moved
- Added
AnnoyingResource.ResourceOptionswhich extendsAnnoyingFile.FileOptions- Contains
#createDefaultFile, which allows a default file that will always be updated to be created in adefaultfolder in the plugin's folder
- Contains
- Added new default messages to
messages.yml- Documentation has been moved to the GitHub
- Removed commands and permissions from
plugin.yml - Reformatted the Gradle build files
- Adjusted example plugin to reflect new API changes
- Added bStats (bstats.org)
- Bump version (2.1.0)
New Contributors
- @MagicCheese1 made their first contribution in https://github.com/srnyx/annoying-api/pull/2
- @clickednebula3 made their first contribution in https://github.com/srnyx/annoying-api/pull/3
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.0.5...2.1.0
2.1.1
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.1.0...2.1.1
2.1.2
- Remove deprecated constructor use
- Add PlaceholderAPI support (optional)
AnnoyingMessagewill now parse PlaceholderAPI placeholders- Added
AnnoyingOptions#papiExpansiontoRegisterto set a placeholder expansion when the plugin enables - Added
AnnoyingPAPIExpansionas an extendedPlaceholderExtensionto add default methods and such - Added
AnnoyingPlugin#papiInstalledto track whether PlaceholderAPI is installed - Added
PlaceholderAPIto soft-dependencies inplugin.yml
- Add
AnnoyingPlugin#parsePapiPlaceholders(OfflinePlayer, String) - Bump version (2.1.2)
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.1.1...2.1.2
- Remove non-shaded dependency examples
- Global placeholders, AnnoyingFile changes, & more
- Added Global placeholders
- Removed
AnnoyingOptions#colorLight - Removed
AnnoyingOptions#colorDark - Added
AnnoyingOptions#globalPlaceholders - Added
AnnoyingPlugin#globalPlaceholders - Removed
messages.yml#plugin.prefix - Added
messages.yml#global-placeholders
- Removed
- Edited command/listener registration
- Removed
AnnoyingListener#register(Event) - Removed
AnnoyingListener#unregister(Event) - Removed
AnnoyingCommand#register - Removed
AnnoyingCommand#unregister
- Removed
- Changed
AnnoyingOptions#commandstoAnnoyingOptions#commandsToRegister - Changed
AnnoyingOptions#listenerstoAnnoyingOptions#listenersToRegister- Added
AnnoyingPlugin#registeredCommands - Added
AnnoyingPlugin#registeredListeners - Added
AnnoyingPlugin#unregisterListeners - Added
AnnoyingPlugin#unregisterCommands
- Added
- Changed
AnnoyingUtility#getPlayer(String)toAnnoyingUtility#getOfflinePlayer(String) AnnoyingCommand#onTabComplete(AnnoyingSender)now returnsCollection<Object>- Added
AnnoyingSender#isPlayer - Edited
AnnoyingCommandRegister- Removed
#minecraftServerClass - Removed
#getServerMethod - Removed
#vanillaCommandDispatcherField - Added
#commandDispatcher
- Removed
- Edited
AnnoyingDependency- Added
#file - Removed
#getFile
- Added
- Made
AnnoyingFileinto an abstract class instead of an interface - Made changes to example plugin in relation to API changes
- Added Global placeholders
- Changed AnnoyingCommand#onTabComplete
- Now returns a
Collection<String>instead of aCollection<Object>
- Now returns a
- Fix global placeholders
- Remove AnnoyingOptions#prefix
- Replaced by global placeholders which were added in an earlier commit
Full Changelog: https://github.com/srnyx/annoying-api/compare/2.0.3...2.0.4


