Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Идея Плагин для счета игроков и выдачи привилегий

Тема в разделе "Запросы на разработку плагинов", создана пользователем elnat08, 10 авг 2016.

  1. Автор темы
    elnat08

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

    Баллы:
    78
    Категория плагина: Admin|Fun

    Предлагаемое название: Любое

    Версия сервера: 1.8+

    Что я хочу: Плагин должен выполнять несколько следующее:
    1. Счет игроков,т.е. зашел на сервер игрок и будет написано: "На сервер зашел игрок,его номер ***".Номер игрока и его ник/UUID хотелось бы хранить в файле,либо же MySQL
    2. Игрок заходит и,если он будет,допустим, 50 по счету(Указывается в конфиге),то выполняется команда,например, "/pex user %player% group add VIP"(Указывается в конфиге)


    Идеи для команд: /checkplayers - посмотреть кол-во игроков


    Идеи пермишенов: - checkplayers - право на команду

    Когда мне это нужно? Не принципиально,но хотелось бы по быстрее.

    P.s. @fromgate @Dereku @Shevchik @alexandrage кого вспомнил
     
  2. Хостинг MineCraft
    <
  3. Mr_RoboMan

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

    Баллы:
    123
    fromgate? Shvchik? Едрить ты губу раскатил!
    :eek::eek::eek::eek::eek:
     
  4. CoolBoy

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

    Баллы:
    96
    Skype:
    thecoolboy2070
    Имя в Minecraft:
    CoolBoy
    Понаделают твинков и будет тебе счастье. Не перспективно.
     
  5. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    https://www.dropbox.com/s/5b3x1a8886pqx8z/JoinCmd.jar?dl=0
    Не тестировал. Команд нет.
    Исходник:
    Код:
    package ru.leymooo.join;
    
    import java.util.HashMap;
    
    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.PlayerJoinEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class Main extends JavaPlugin implements Listener {
        HashMap<Integer, String> cmd = new HashMap<Integer, String>();
        int c;
        String joinmsg;
        public void onEnable() {
            this.saveDefaultConfig();
            for (String a : getConfig().getConfigurationSection("number").getKeys(false)) {
                cmd.put(Integer.valueOf(a), getConfig().getString("number."+a));
            }
            c = getConfig().getInt("last");
            joinmsg = ChatColor.translateAlternateColorCodes('&', getConfig().getString("joinmsg"));
            getServer().getPluginManager().registerEvents(this, this);
        }
        public void onDisable() {
            this.saveConfig();
        }
        @EventHandler
        public void onJoin(PlayerJoinEvent e) {
            if (!e.getPlayer().hasPlayedBefore()) {
                c = c+1;
                this.getConfig().set("last", c);
                for (Player p : Bukkit.getOnlinePlayers()) {
                    p.sendMessage(joinmsg.replace("%player%", e.getPlayer().getName()).replace("%number%", String.valueOf(c)));
                }
                if (cmd.containsKey(c)) {
                    Bukkit.dispatchCommand(Bukkit.getConsoleSender(), cmd.get(c));
                }
            }
        }
    }
    
     
    Последнее редактирование: 10 авг 2016
  6. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Регистрировать слушатели надо в конце, чтобы не вылетел NPE.
    И за "net.md_5.bungee.api.ChatColor" пора сажать. Прекращайте использовать spigot как библиотеку, если не следите за своими импортами.
     
  7. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    Я даже хз откуда он там. Скорее всего из старого проекта этот импорт остался.
     
  8. Derovi

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

    Баллы:
    76
    Имя в Minecraft:
    DeROvI
    К чему этих четыре лишних знака?)
     
  9. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    нельзя чтоли? (
     
  10. Mr_RoboMan

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

    Баллы:
    123
    емнип, в ~4 раза больше памяти жрет..[DOUBLEPOST=1470856110,1470856054][/DOUBLEPOST]Хотя может и не в 4..
    Кароче лень читать мне.[DOUBLEPOST=1470856180][/DOUBLEPOST]Во:
     
  11. Derovi

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

    Баллы:
    76
    Имя в Minecraft:
    DeROvI
    Да вообще памяти он много не сожрет. Был бы он основой крупного контейнера - вот это другое дело. Тут даже дело в оформлении кода :D
     
  12. Mr_RoboMan

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

    Баллы:
    123
    Да я прост тип выпендриться что я чет знаю)00))0))
     
  13. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    Ну ладно изменил на int.
     
  14. Derovi

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

    Баллы:
    76
    Имя в Minecraft:
    DeROvI
    Не зря же книжки по 1к страниц читал :D
     
  15. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Используй Integer.valueOf(String) завернув в try catch. Это исключит вероятность падения загрузки конфигурации из-за кривых ручек администратора.
     
  16. Derovi

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

    Баллы:
    76
    Имя в Minecraft:
    DeROvI
    А так же лучше сохранять конфиг после каждого изменения, а то кривые ручки администраторов крашнут сервер, и все сохранения за всю работу сервера от включения уйдут в никуда.[DOUBLEPOST=1470900117,1470900014][/DOUBLEPOST]Раскритиковали как могли xD
     
  17. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    Ну подумаешь 20 игроков откатиться.
     
  18. _MCMaster_

    _MCMaster_ Участник Пользователь

    Баллы:
    36
    Skype:
    protsanin2005
    Имя в Minecraft:
    MineMasterMC
    Согласен
     

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