Advancement Command has dropped.

New Minecraft plugin! This plugin allows you to run console commands when a group of advancements are made.

Advancements can be grouped into ‘sets’, which are defined using the config.yml file.

When all the advancements in a set are made, the commands for that set will run.

The PlaceholderAPI plugin, found here, is required since many commands will require a player’s name or some other contextual information.

An example config is below, and this is generated automatically if the plugin runs without any config. Note that advancements should include the namespace.

# Configuration file for AdvancementCommand plugin

#setting to true will cause the plugin to print extra information which may be useful for debugging.
#debug mode will spam your console! Turn it off when you're done.
debug: false

# Define sets of advancements and commands
  #set names can be anything! They will be printed to console in debug mode!
    #namespaced paths for every advancement needed for this set
    #other namespaces are possible if you have them
      - "minecraft:story/craft_planks"
      - "minecraft:story/upgrade_tools"
    #commands that will be run if the set is met.
    #commands should not include the beginning /
    #be sure to install any PlaceholderAPI expansions that are required.
    #in debug mode, warnings will be displayed about possibly missing expansions.
      - "give %player_name% minecraft:diamond_pickaxe"
      - "tellraw %player_name% {\"text\":\"Congratulations on completing the set!\"}"
      - "minecraft:story/smelt_iron"
      - "minecraft:story/enter_the_nether"
      - "give %player_name% minecraft:diamond_sword"
      - "tellraw %player_name% {\"text\":\"You have completed the second set!\"}"

You can download the plugin here.