CCore
This plugin is a library, that extends the possibilities of other developers by implementing many features externally.
Changing from the clasic bukkit to this type of plugin should work for most plugins by changing one line of code.
This library grants the following features.
- Chat:
- A method to prefix you messages (the prefix will use the same color as the message)
- There is a language tool implemented that will update every field annotated with a CLanguage annotation
- A way to replace '{property}' is implemented
- There are if statements in the replacement to handle singular and plural or 1st 2nd 3rd
- Events:
- Your EventListeners can use EventHandlers on private methods
- Commands:
- Commands can be added with one line and arguments can be fetched by names (e.g. "/command <help/?> <var=page> <...>")
- Permissions can be handled automaticly
- A helpscreen is implemented with automatic permission handling (only show commands you can use)
- Helpscreen layout can be customited or not used
- Small aditions:
- A method that will handle getOnlinePlayers() as array and list
- Methods for handling InputStreams and Internet (GET and POST requests)
- A reflection library for easier work with Craft and Minecraft methods (no package name needed)
- A prefix method that will add a prefix while keeping the message color
- Methods for setting name and lore of items (without ItemMeta)
- ClassBasedEvent:
- A system to invoke events in a single class has been implemented (not bukkit events)
- The events are used in the inventory library
- Is not needed for basic use of the library
- Tasks
- There is a library that can handle Async and Sync tasks
- Async tasks can be chained
- Tasks can be kept open even after a plugin is disabled
- The task works with ClassBasedEvents (Mainly to add more task types like menus)
- Events registered for a task will stay registered as long as the task is alive
- Inventories
- Menus can be created and populated with just a single method override
- Menus can be used between tasks (e.g. downloading things or waiting for events)
- Menus can be held open even through a disable
- A Menu can be renamed and the size can be changed without resetting the players mouse on screen
- There is a page system implemented, that allows the display of any number of elements
- A Menu to select one or multiple things has been added
- Items that are clickable will have the clicktype added to their lore
- For menus that follow each other a back button can be added
- Texts and items can be customized for a whole plugin at once (defaults should work fine)