
✅ Donation Trains 1.7
Reward the whole server in a new unique way for players donating!

Donation Trains is the perfect plugin for you if you want to provide a new and unique incentive for players to donate!
What does it do?
Simply put: whenever a person donates to your server, the cost of their package will count towards the Donation Train. From configurable donation train goals, you are able to run commands when a certain goal is reached.
Let's say you create two goals, one at $10 which gives a Vote Crate to all online players and one at $50 which gives an Epic Crate to all online players. If you've accumulated over $50 once the Donation Train timer expires, the server will be rewarded with an Epic Crate! If you only managed to get $15, they'll get a Vote Crate instead.
Get it? Awesome right! 

Plugin Images

- PlaceholderAPI support
- Create an unlimited amount of donation goals
- Configure how long a donation train should last for, how the broadcasts in chat should look, if there should be a bossbar; everything is configurable!

Setting the plugin up
- Install Donation Train on the server
- Setup the config as you wish
- Make sure the command /donationtrain add <amount> is ran when a player donates. This can be done by adding it to the Tebex / CraftingStore commands.
The permission for the command is donationtrain.command.add
config.yml
general-settings:
###How long should the Donation Train last (in seconds)
duration: 1800
###Should the Donation Train timer reset when a new donation comes
reset-on-new-donation: true
###The donation goals, threshold is the amount required.
goals:
vote:
displayName: "&a1 Vote Crate"
threshold: 5.00
commands:
- "crate giveall Vote 1"
rare:
displayName: "&91 Rare Crate"
threshold: 10.00
commands:
- "crate giveall Rare 1"
epic:
displayName: "&51 Epic Crate"
threshold: 20.00
commands:
- "crate giveall Epic 1"
bossbar-settings:
###Should there be a bossbar?
enabled: true
###How often should the bossbar update in seconds?
interval: 5
###How should the bossbar look?
format: "&a&lDONATION TRAIN&7: &7the server has made &2$&f%amount% &7(&f%time_remaining% &7remaining)"
###What style should the bossbar have?
style: "SOLID"
###What color should the bossbar be in?
color: "GREEN"
broadcast-settings:
###Should scheduled broadcasts be enabled?
enabled: true
###How often should it broadcast? (in seconds)
interval: 300
###Should it broadcast in chat when a new donation comes?
announce-on-new-donation: true
formats:
###How should the message look on the scheduled broadcasts?
interval:
- "&7&m "
- "&a&lDONATION TRAIN"
- "&7The server has made &2$&f%amount%&7 with &f%time_remaining% &7time left."
- " "
- "&eCurrent Goal&7: &f%goal_display_name% &7($%goal_amount%)"
- "&eNext Goal&7: &f%next_goal_display_name% &7($%next_goal_amount%)"
- "&7&oDonate at &f&oshop.example.com"
- "&7&m "
###How should the message look when a goal has been surpassed?
goal-surpassed:
- "&7&m "
- "&a&lDONATION TRAIN"
- "&7The server has made &2$&f%amount%&7."
- "&7All players will receive %goal_display_name% &7in &f%time_remaining%&7."
- " "
- "&eNext Goal&7: &f%next_goal_display_name% &7($%next_goal_amount%)"
- "&7&oDonate at &f&oshop.example.com"
- "&7&m "
###How should the message look when the Donation Train ends and there is a goal?
goal-reached:
- "&7&m "
- "&a&lDONATION TRAIN"
- "&7The server made &2$&f%amount%&7."
- "&7All players have received %goal_display_name%&7!"
- "&7&m "
Placeholders
%amount% - the current donated amount (%donationtrain_amount% for PlaceholderAPI)
%time_remaining% - how long time until the Donation Train ends (%donationtrain_time_remaining% for PlaceholderAPI)
%goal_display_name% - the display name of the current goal reached (%donationtrain_goal_displayname% for PlaceholderAPI)
%goal_amount% - the threshold of the current goal reached (%donationtrain_goal_amount% for PlaceholderAPI)
%next_goal_display_name% - the display name of the next goal to reach (%donationtrain_nextgoal_displayname% for PlaceholderAPI)
%next_goal_amount% - the threshold of the next goal to reach (%donationtrain_nextgoal_amount% for PlaceholderAPI)
