package me.xastraah.welcomemoney; import java.util.ArrayList; import java.util.List; import net.milkbowl.vault.economy.Economy; import net.milkbowl.vault.economy.EconomyResponse; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.AsyncPlayerChatEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.plugin.RegisteredServiceProvider; import org.bukkit.plugin.java.JavaPlugin; public class WelcomeMoney extends JavaPlugin implements Listener { List ps = new ArrayList(); public static Economy econ = null; /** * Setup WelcomeMoney & Code PlayerJoin and Money Response. */ public void onEnable() { Bukkit.getServer().getPluginManager().registerEvents(this, this); if (!setupEconomy() ) { getLogger().severe(String.format("[%s] - Disabled due to no Vault dependency found!", getDescription().getName())); getServer().getPluginManager().disablePlugin(this); return; } } @EventHandler public void onPlayerJoin(PlayerJoinEvent event) { final Player p = event.getPlayer(); ps.add(p.getName()); Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() { ps.remove(p.getName()); } }, 140L); } @EventHandler public void onPlayerChat(AsyncPlayerChatEvent event) { final Player p = event.getPlayer(); if(event.getMessage().contains("Welcome") || event.getMessage().contains("welcome") && ps.isEmpty() == false) { EconomyResponse r = econ.depositPlayer(p.getName(), 75); if(r.transactionSuccess()) { Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() { p.sendMessage(ChatColor.GREEN + "You have recieved $75!"); } }, 20L); } else { Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() { p.sendMessage(ChatColor.RED + "An error has occured please contact the developer!"); } }, 20L); } } } /** * Setup Vault. */ private boolean setupEconomy() { RegisteredServiceProvider economyProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class); if (economyProvider != null) { econ = economyProvider.getProvider(); } return (econ != null); } }