1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Samopis.jar не видит Vault

Тема в разделе "Разработка плагинов для новичков", создана пользователем ВukkitPrоfi, 7 дек 2018.

  1. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    Копипастнул код из Vault API (сам Vault присутствует в папке plugins, версия - последняя):
    PHP:
    package org.ya.samopis;

    import java.util.logging.Logger;

    import net.milkbowl.vault.chat.Chat;
    import net.milkbowl.vault.economy.Economy;
    import net.milkbowl.vault.economy.EconomyResponse;
    import net.milkbowl.vault.permission.Permission;

    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.plugin.RegisteredServiceProvider;
    import org.bukkit.plugin.java.JavaPlugin;

    public class 
    Main extends JavaPlugin {
       
        private static final 
    Logger log Logger.getLogger("Minecraft");
        private static 
    Economy econ null;
        private static 
    Permission perms null;
        private static 
    Chat chat null;

        @
    Override
        
    public void onDisable() {
            
    log.info(String.format("[%s] Disabled Version %s"getDescription().getName(), getDescription().getVersion()));
        }

        @
    Override
        
    public void onEnable() {
            if (!
    setupEconomy() ) {
                
    log.severe(String.format("[%s] - Disabled due to no Vault dependency found!"getDescription().getName()));
                
    getServer().getPluginManager().disablePlugin(this);
                return;
            }
            
    setupPermissions();
            
    setupChat();
        }
       
        private 
    boolean setupEconomy() {
            if (
    getServer().getPluginManager().getPlugin("Vault") == null) {
                return 
    false;
            }
            
    RegisteredServiceProvider<Economyrsp getServer().getServicesManager().getRegistration(Economy.class);
            if (
    rsp == null) {
                return 
    false;
            }
            
    econ rsp.getProvider();
            return 
    econ != null;
        }
       
        private 
    boolean setupChat() {
            
    RegisteredServiceProvider<Chatrsp getServer().getServicesManager().getRegistration(Chat.class);
            
    chat rsp.getProvider();
            return 
    chat != null;
        }
       
        private 
    boolean setupPermissions() {
            
    RegisteredServiceProvider<Permissionrsp getServer().getServicesManager().getRegistration(Permission.class);
            
    perms rsp.getProvider();
            return 
    perms != null;
        }
       
        public 
    boolean onCommand(CommandSender senderCommand commandString commandLabelString[] args) {
            if(!(
    sender instanceof Player)) {
                
    log.info("Only players are supported for this Example Plugin, but you should not do this!!!");
                return 
    true;
            }
           
            
    Player player = (Playersender;
           
            if(
    command.getLabel().equals("test-economy")) {
                
    // Lets give the player 1.05 currency (note that SOME economic plugins require rounding!)
                
    sender.sendMessage(String.format("You have %s"econ.format(econ.getBalance(player.getName()))));
                
    EconomyResponse r econ.depositPlayer(player1.05);
                if(
    r.transactionSuccess()) {
                    
    sender.sendMessage(String.format("You were given %s and now have %s"econ.format(r.amount), econ.format(r.balance)));
                } else {
                    
    sender.sendMessage(String.format("An error occured: %s"r.errorMessage));
                }
                return 
    true;
            } else if(
    command.getLabel().equals("test-permission")) {
                
    // Lets test if user has the node "example.plugin.awesome" to determine if they are awesome or just suck
                
    if(perms.has(player"example.plugin.awesome")) {
                    
    sender.sendMessage("You are awesome!");
                } else {
                    
    sender.sendMessage("You suck!");
                }
                return 
    true;
            } else {
                return 
    false;
            }
        }
       
        public static 
    Economy getEconomy() {
            return 
    econ;
        }
       
        public static 
    Permission getPermissions() {
            return 
    perms;
        }
       
        public static 
    Chat getChat() {
            return 
    chat;
        }
    }
    plugin.yml:
    Код:
    name: samopis
    main: org.ya.samopis.Main
    version: 1.0
    api-version: 1.12
    commands:
       test-economy:
          description: description
          usage: 'Usage: /kit'
       test-permission:
          description: description
          usage: 'Usage: /kit'
    
    При запуске пишет в консоль:
    [samopis] - Disabled due to no Vault dependency found!
    то есть, samopis не увидел Vault и вырубается. Что не так?
     
  2. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    depend: [Vault]
     
  3. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    присутствует, и итог тот же
     
  4. LuckyZeeRo

    LuckyZeeRo Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    i0xHeX
    Ну а ты уверен что Vault врубается?
     
  5. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Что то я сразу не доглядел. Вот так нужно.
    Код:
        private boolean setupEconomy() {
            RegisteredServiceProvider<Economy> economyProvider = getServer().getServicesManager()
                    .getRegistration(Economy.class);
            if (economyProvider != null) {
                economy = economyProvider.getProvider();
            }
            return economy != null;
        }
     
  6. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    Код:
    [22:01:08 INFO]: Starting minecraft server version 1.12.2
    [22:01:08 INFO]: Loading properties
    [22:01:08 INFO]: Default game type: SURVIVAL
    [22:01:08 INFO]: This server is running CraftBukkit version git-Spigot-3d850ec-809c399 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT)
    [22:01:08 INFO]: Debug logging is disabled
    [22:01:08 INFO]: Using 4 threads for Netty based IO
    [22:01:08 INFO]: Server Ping Player Sample Count: 12
    [22:01:08 INFO]: Generating keypair
    [22:01:08 INFO]: Starting Minecraft server on localhost:25565
    [22:01:08 INFO]: Using default channel type
    [22:01:08 INFO]: Set PluginClassLoader as parallel capable
    [22:01:08 INFO]: [PermissionsEx] Loading PermissionsEx v1.23.4
    [22:01:09 WARN]: [PermissionsEx] This server is in offline mode. Unless this server is configured to integrate with a supported proxy (see http://dft.ba/-8ous), UUIDs *may not be stable*!
    [22:01:09 INFO]: [Vault] Loading Vault v1.7.1-b91
    [22:01:09 INFO]: [samopis] Loading samopis v1.0
    [22:01:09 INFO]: [Vault] Enabling Vault v1.7.1-b91
    [22:01:09 INFO]: [Vault] [Permission] PermissionsEx found: Waiting
    [22:01:09 INFO]: [Vault] [Permission] SuperPermissions loaded as backup permission system.
    [22:01:09 INFO]: [Vault] [Chat] PermissionsEx found: Waiting
    [22:01:09 INFO]: [Vault] Enabled Version 1.7.1-b91
    
    ...
    
    [22:01:12 INFO]: [PermissionsEx] Enabling PermissionsEx v1.23.4
    [22:01:12 INFO]: [PermissionsEx] Initializing file backend
    [22:01:12 INFO]: [PermissionsEx] Permissions file successfully reloaded
    [22:01:12 INFO]: [Vault][Permission] PermissionsEx hooked.
    [22:01:12 INFO]: [Vault][Chat] PermissionsEx_Chat hooked.
    [22:01:12 INFO]: [samopis] Enabling samopis v1.0
    [22:01:12 ERROR]: [samopis] - Disabled due to no Vault dependency found!
    [22:01:12 INFO]: [samopis] Disabling samopis v1.0
    [22:01:12 INFO]: [samopis] Disabled Version 1.0
    [22:01:12 INFO]: Server permissions file permissions.yml is empty, ignoring it
    [22:01:12 INFO]: Done (3,702s)! For help, type "help" or "?"
    [22:01:12 INFO]: [Vault] Checking for Updates ...
    [22:01:15 INFO]: [Vault] No new version available
    
     
  7. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    не работает. все так же
     
  8. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Быть не может.
     
  9. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    PHP:

    ...

    public class 
    Main extends JavaPlugin {
       
        private static final 
    Logger log Logger.getLogger("Minecraft");
        private static 
    Economy econ null;
        private static 
    Permission perms null;
        private static 
    Chat chat null;

        @
    Override
        
    public void onDisable() {
            
    log.info(String.format("[%s] Disabled Version %s"getDescription().getName(), getDescription().getVersion()));
        }

        @
    Override
        
    public void onEnable() {
            if (!
    setupEconomy() ) {
                
    log.severe(String.format("[%s] - Disabled due to no Vault dependency found!"getDescription().getName()));
                
    getServer().getPluginManager().disablePlugin(this);
                return;
            }
            
    setupEconomy();
            
    setupPermissions();
            
    setupChat();
        }
       
        private 
    boolean setupEconomy() {
            
    RegisteredServiceProvider<EconomyeconomyProvider getServer().getServicesManager()
                    .
    getRegistration(Economy.class);
            if (
    economyProvider != null) {
                
    econ = (EconomyeconomyProvider.getProvider();
            }
            return 
    econ != null;
        }
       
        private 
    boolean setupChat() {
            
    RegisteredServiceProvider<Chatrsp getServer().getServicesManager().getRegistration(Chat.class);
            
    chat rsp.getProvider();
            return 
    chat != null;
        }
       
        private 
    boolean setupPermissions() {
            
    RegisteredServiceProvider<Permissionrsp getServer().getServicesManager().getRegistration(Permission.class);
            
    perms rsp.getProvider();
            return 
    perms != null;
        }
       
        public 
    boolean onCommand(CommandSender senderCommand commandString commandLabelString[] args) {
            if(!(
    sender instanceof Player)) {
                
    log.info("Only players are supported for this Example Plugin, but you should not do this!!!");
                return 
    true;
            }
           
         ...
     
  10. EnderBro3D

    EnderBro3D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    Должен присутствовать плагин на экономику, например iConomy, Essentials и т.д
    В логах я не заметил его
     
  11. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    И точно. Провайдер не зареган никем.
     
  12. Автор темы
    ВukkitPrоfi

    ВukkitPrоfi Активный участник Пользователь

    Баллы:
    76
    а если я хочу зарегать лишь пермишены через ваулт, не экономику и прочее, без еще доп. плагина не обойтись?
     
  13. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Ну так отключи остановку сервера при отсутствии провайдера экономики.
    Или поменяй на пермишены свои.
    Чего тормозишь-то? )
     

Поделиться этой страницей