Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

PlayerPointsAddon

Reference AbstractMenus addon that registers PlayerPoints as an economy provider under the id playerpoints. Once installed, menus can use PlayerPoints for takeMoney / giveMoney / hasMoney either explicitly per action or globally via AbstractMenus' config.conf.

This repo is also a template for anyone writing their own provider addon: the implementation is two source files plus a manifest, with rich javadoc walking through every contract decision.

This master branch holds no code. It exists only as a directory. Pick the branch that matches the delivery model you want, and continue reading there.

Pick a branch

Branch What it ships Drops into
as-plugin A standalone Bukkit/Paper plugin plugins/
as-addon A lightweight AM-loaded extension plugins/AbstractMenus/addons/

Both deliver identical runtime behaviour. They differ in how the jar is loaded:

as-plugin (Path 1) as-addon (Path 2)
Loaded by Bukkit AbstractMenus' AddonManager
Manifest plugin.yml (Bukkit YAML) addon.conf (HOCON)
Main class extends JavaPlugin + MenuExtension MenuExtension only (no-arg ctor)
Visible in /plugins Yes No
Visible in /am addons Yes (tagged [as-plugin]) Yes (with status, version, deps)
Reload at runtime /reload (whole server) /am addons reload PlayerPointsAddon
Per-jar classloader No (Bukkit shares one) Yes (AddonClassLoader, child-first)
Cross-plugin order guarantee Bukkit's depend: graph pluginDependencies: checked before instantiate
AbstractMenus API source GitHub Packages (PAT required) JitPack (anonymous)

When to pick which

  • Pick as-plugin when the addon also needs to be a real Bukkit plugin (registers events, owns commands, exposes its own API, depends on Bukkit-side ordering you don't want to re-derive).
  • Pick as-addon when the addon is purely an AM extension (provider bridge, custom action types, custom rule types) and you want hot reload, classloader isolation, and a cleaner namespace under /am addons instead of /plugins.

For a pure provider bridge like this one, both work. Browse both branches to compare - the diff between them is almost entirely the lifecycle boilerplate; the PlayerPointsEconomyHandler (the actual work) is byte identical in both.

Quick links

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors