Solved Problems with Vault economy

Discussion in 'Plugin Development' started by rob1998@, May 20, 2012.

Thread Status:
Not open for further replies.
  1. this is my code:
    Show Spoiler
    Code:
    package com.gmail.grob1998.Economy;
     
    import java.util.logging.Logger;
     
    import net.milkbowl.vault.Vault;
    import net.milkbowl.vault.economy.EconomyResponse;
     
    import org.bukkit.ChatColor;
    import org.bukkit.Material;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.BlockBreakEvent;
    import org.bukkit.plugin.Plugin;
    import org.bukkit.plugin.PluginDescriptionFile;
    import org.bukkit.plugin.java.JavaPlugin;
     
    public class Economy extends JavaPlugin implements Listener {
    public Logger log;
    public final Logger logger = Logger.getLogger("Minecraft");
        privatestatic Vault vault = null;
     
    @EventHandler
    public void onEnable()
    {
    log = getLogger();
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + pdfFile.getVersion() + " has been Enabled");
    getServer().getPluginManager().registerEvents(this, this);
    }
     
    @EventHandler
        public void onDisable(){
            Plugin x = this.getServer().getPluginManager().getPlugin("Vault");
            if(x != null & x instanceof Vault) {
                vault = (Vault) x;
                log.info(String.format("[%s] Hooked %s %s", getDescription().getName(), vault.getDescription().getName(), vault.getDescription().getVersion()));
            } else {
                log.warning(String.format("[%s] Vault was _NOT_ found! Disabling plugin.", getDescription().getName()));
                getPluginLoader().disablePlugin(this);
                return;
            }
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + pdfFile.getVersion() + " has been Disabled");
        }
     
    @EventHandler()
    public void onBlockBreak(BlockBreakEvent event)
    {
        if (event.getBlock().getType().equals(Material.DIRT))
        {
            {
           Player P = event.getPlayer();
                P.sendMessage(event.getPlayer().getName()+ ChatColor.GREEN+ " You got 1.05 money for breaking Dirt!");
     
                EconomyResponse r = vault.getEconomy().depositPlayer(P.getName(), 1.05);
                if(r.transactionSuccess()) {
               Player p = event.getPlayer();
                    p.sendMessage(String.format("You were given %s and now have %s", vault.getEconomy().format(r.amount), vault.getEconomy().format(r.balance)));
                } else {
               Player p = event.getPlayer();
                    p.sendMessage(String.format("An error occured: %s", r.errorMessage));
                }
            }
        }
    }
    }
    


    and this is the part with the problem:
    Show Spoiler
    Code:
    @EventHandler()
    public void onBlockBreak(BlockBreakEvent event)
    {
        if (event.getBlock().getType().equals(Material.DIRT))
        {
            {
           Player P = event.getPlayer();
                P.sendMessage(event.getPlayer().getName()+ ChatColor.GREEN+ " You got 1.05 money for breaking Dirt!");
     
                EconomyResponse r = vault.getEconomy().depositPlayer(P.getName(), 1.05);
                if(r.transactionSuccess()) {
               Player p = event.getPlayer();
                    p.sendMessage(String.format("You were given %s and now have %s", vault.getEconomy().format(r.amount), vault.getEconomy().format(r.balance)));
                } else {
               Player p = event.getPlayer();
                    p.sendMessage(String.format("An error occured: %s", r.errorMessage));
                }
            }
        }
    


    eclipse says that the method get.Economy() is undefined for the type Vault


    Please help
     
  2. Did you even read Vaults description? There is no getEconomy cause Vault uses bukkits service manager. Hint:
    RegisteredServiceProvider<Economy> economyProvider = getServer().getServicesManager().getRegistration(Economy.class);
     
Thread Status:
Not open for further replies.

Share This Page