Помогите Дать деньги

  • Автор темы Автор темы Kurumi
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Kurumi

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Kurumi
Если человек убил свинью, с него должны сниматься деньги. Я это реализовал с помощью метода
PHP:
public static EconomyResponse minusBabki(Player p, double amount, String msg)
    {
        EconomyResponse minus = Main.economy.withdrawPlayer(p, amount);
        if(minus.transactionSuccess())
        {
            p.sendMessage(color(msg));
        }
        return minus;
    }
Но почему-то при убийстве свиньи пишет ошибку и ругается на строчку
PHP:
        EconomyResponse minus = Main.economy.withdrawPlayer(p, amount);
Вызываю так
PHP:
                    Utils.minusBabki(victim, main.getConfig().getDouble("settings.withdraw"), main.getConfig().getString("messages.withdraw"));
Помогите
 
Последнее редактирование:
Если человек убил свинью, ему должны даваться деньги. Я это реализовал с помощью конструктора
PHP:
public static EconomyResponse minusBabki(Player p, double amount, Player sender, String msg)
    {
        EconomyResponse minus = Main.economy.withdrawPlayer(p, amount);
        if(minus.transactionSuccess())
        {
            sender.sendMessage(color(msg));
        }
        return minus;
    }
Но почему-то при убийстве свиньи пишет ошибку и ругается на строчку
PHP:
        EconomyResponse minus = Main.economy.withdrawPlayer(p, amount);
Вызываю так
PHP:
                    Utils.minusBabki(victim, main.getConfig().getDouble("settings.withdraw"), (Player) sender, main.getConfig().getString("messages.withdraw"));
Помогите

Может, потому что в ивенте ты сендера каким-то боком впихиваешь? Или Main.economy = null.
Ошибку скинь хотя бы.

ПС: твой "конструктор" - это статик метод...
 
Может, потому что в ивенте ты сендера каким-то боком впихиваешь?
Ошибку скинь.

ПС: твой "конструктор" - это статик метод...
Взял конструктор из старого плагина, сразу вставил и забыл переписал. У меня нет сендера
 
В main econoy = null

PHP:
   public static Economy economy = null;
    
    public void onEnable()
    {
        PluginDescriptionFile pdf = getDescription();
        getLogger().info("Plugin "+pdf.getName() +" version "+pdf.getVersion()+" is enable!");
        this.getConfig().options().copyDefaults(true);
        this.saveConfig();
        this.reloadConfig();
        Bukkit.getPluginManager().registerEvents((Listener)new LCD(this), (Main)this);
    }
    
    public void onDisable()
    {
        PluginDescriptionFile pdf = getDescription();
        getLogger().info("Plugin "+pdf.getName() +" version "+pdf.getVersion()+" is disable!");
    }
    
    private boolean setupEconomy()
        {
            RegisteredServiceProvider<Economy> economyProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class);
            if (economyProvider != null)
            {
                economy = economyProvider.getProvider();
            }
            return (economy != null);
        }

    
}
 
Тогда оно равно null, нет?
Лол. Понял ошибку. Исправил.
Есть еще 1 вопрос. Как проверить, является ли баланс игрока меньше 60 (как пример)
Ибо когда я пишу if(Main.economy.getBalance(player)<60) эклипс выдает ошибку
 
Лол. Понял ошибку. Исправил.
Есть еще 1 вопрос. Как проверить, является ли баланс игрока меньше 60 (как пример)
Ибо когда я пишу if(Main.economy.getBalance(player)<60) эклипс выдает ошибку
Подозреваю что надо читать ошибку
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх