Impactor API - A core system to link plugins to one similar API service (Used by GTS, Daycare, and my other plugins)

This is a discussion topic for the Ore project, Impactor API. View the full project on Ore for downloads and more information.


Impactor API

Welcome to your new project!

A new version has been released for Impactor API, it is available for download here.


Features bug fixes and general improvements/additions for the API

A new version has been released for Impactor API, it is available for download here.


Features a rewrite to support both Sponge and Spigot. This update covers the Sponge side of the Impactor API system

Hey, im having some errors with Impactor when i use it with GTS,
https://paste.gg/p/anonymous/0a0dc4dc14104e9781777af7e9179337

A new version has been released for Impactor API, it is available for download here.


For further assistance, use the support discord:

A new version has been released for Impactor API, it is available for download here.


Features some additional changes and improvements to the API system

A new version has been released for Impactor API, it is available for download here.


Changes

  • Updated placeholder parser to now accept arguments with a placeholder
    • You can supply arguments with the following format: {{pluginid:key:modifier|(arguments go here)}}
  • TPS placeholder now uses calculation strategy used by Spark for more accurate results
  • Updated to use Adventure 4.3.0 in preparations of Sponge API 8

A new version has been released for Impactor API, it is available for download here.


  • Fixed event bus handling wrong type of cancellation events
  • Added Velocity support (available via Discord)

A new version has been released for Impactor API, it is available for download here.


Impactor 4.0.0-SNAPSHOT

This is a snapshot version of the changes integrated with Impactor for 4.0.0, which is now built for API 8 on the Sponge side of things. The API’s new focus for this version is targeting 1.16.5. This build so far appears to be stable on API 8, but is marked as a snapshot build for general code clean-up plus documentation for new features/components.

New

  • Scoreboard API
    • The new scoreboard API is meant to streamline the creation of scoreboards to be as dynamic and controlled as the user/implementer desires. For instance, this scoreboard system does not try to refresh every line based on a global timer, but rather, a per-line/per-objective format where each option controls how it itself is updated.
    • In this build, the following options for line types are available:
      • Constant - Never updating
      • Refreshing - Refreshes its contents per its own timing configuration
      • Listening - Updates its contents based on the result of an event
      • Animated - Iterates through frames, each of which have their own updating technique
    • Documentation for these are started, but not yet complete in this snapshot build. These docs, alongside usage examples, will be complete for release, which is expected after the official release of API 8 builds of Sponge.
    • To demonstrate the API, this code was used to create the following scoreboard:
      Scoreboard GIF

Changes

  • Updated all dependencies to the latest versions available
  • Updated sponge components to meet API 8
  • Removed need for Mixins
  • Updated UI API for Sponge updates
    • Changes are planned to have the UI API in general match that of the new Scoreboard API design, as to help remove a need of importing more than just the API package
  • To particularly gabizou’s joy, lombok has been removed! Rejoice gabizou!

Notes

  • Sign Queries are currently disabled due to Protocol Control not yet having a compatible API 8 build available. Depending on the state of that project, if it is no longer being worked on, those features will be adapted into Impactor.

Developers

You can import this build of Impactor directly into your project workspace via Gradle with the following repository and dependency specification:

repositories {
    maven {
        name = "Impact-Dev"
        url = "https://maven.impactdev.net/repository/development/"
    }
}

dependencies {
    compile "net.impactdev.impactor:api:4.0.0-SNAPSHOT"
}