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

Помогите группы игроков

Тема в разделе "Разработка плагинов для новичков", создана пользователем asdqwertypro, 3 янв 2017.

  1. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    upload_2017-1-4_22-34-24.png
    Тыкни меня носом в метод этот...
     
  2. Хостинг MineCraft
    <
  3. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    ахха точно. соре поцик. там где save замени на saveUserFile ( у меня есть еще метод save в этом полигоне, вот эклипс его и предложил, а я проморгал)
     
  4. Автор темы
    asdqwertypro

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

    Баллы:
    76
    Код:
    package test.main;
    
    import java.io.File;
    import java.util.Collection;
    
    import org.bukkit.configuration.file.YamlConfiguration;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.PlayerDeathEvent;
    
    import net.md_5.bungee.api.ChatColor;
    import ru.tehkode.permissions.bukkit.PermissionsEx;
    
    public class EventListener implements Listener {
        private void updateKiller(Player killer) {
            plugin.econ.depositPlayer(killer, 100);
            killer.sendMessage("Вы убили киллера и получили 100$");
            YamlConfiguration killerconf = plugin.getUserConfig(killer);
            if (killerconf.getBoolean("killer")){
                killerconf.set("time", (int)killerconf.getInt("time")*0.2);
                killer.sendMessage("Т.к. вы тоже убийца то ваш срок был уменьшен на 20%");
                plugin.save(killerconf, new File(plugin.getDataFolder(), "userdata"+File.separator+killer.getName()));
            }
        }
    
    
        private void jailKilled(Player killed, int time) {
            Collection<String> jails = null;
            try {
                jails = plugin.ess.getJails().getList();
            } catch (Exception e) {
                e.printStackTrace();
            }
            if (jails==null) return;
            for (String s:jails){
                try {
                    plugin.ess.getUser(killed).setJail(s);
                    plugin.ess.getUser(killed).setJailTimeout(time*60*20);
                    killed.sendMessage("Вас поймали и посадили в тюрьму на срок "+ Integer.toString(time));
                    killed.sendMessage("Когда вас выпустят, с вас будут сняты все обвинения. Удачного времяпрепровождения ;)");
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
        private test plugin;
        public EventListener(test instance) {
            this.plugin = instance;
            }
        @EventHandler
        public void onDeath(final PlayerDeathEvent e) {
            Player killed = e.getEntity();
            Player killer = killed.getKiller();
            if (killer==null) return;
            YamlConfiguration killerconf = plugin.getUserConfig(killer);
            YamlConfiguration killedconf = plugin.getUserConfig(killed);
            if (killedconf.getBoolean("killer")){
                jailKilled(killed, killedconf.getInt("time"));
                killedconf.set("killer", "false");
                killedconf.set("time", 0);
                plugin.save(killedconf, new File(plugin.getDataFolder(), "userdata"+File.separator+killed.getName()));
                plugin.econ.depositPlayer(killer, 100);
                killer.sendMessage("Вы убили киллера поэтому его отправили в тюрьму");
                updateKiller(killer);
            }else{
                if (!killerconf.getBoolean("killer")) killer.sendMessage("Вы стали убийцей! Кровожадное животное!");
                else killer.sendMessage("Сколько можно лить крови? Бессердечная скотина! Тебе это припомнят, учти!");
                killerconf.set("killer", "true");
                killerconf.set("time", killerconf.getInt("time")+10);
                plugin.save(killerconf, new File(plugin.getDataFolder(), "userdata"+File.separator+killer.getName()));
            }  
        }
        }
     
  5. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Фуф, а то я думал что у меня голова поплыла и я не вижу метода в 100 строках кода =)[DOUBLEPOST=1483558695,1483558643][/DOUBLEPOST]
    Метод меняй на save или save меняй на saveUserFile
     
  6. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    ага. там где подчеркнуто слов save меняем его на "saveUserFile"[DOUBLEPOST=1483558814,1483558741][/DOUBLEPOST] upload_2017-1-5_0-39-42.png
    А вот в этом месте главного класса добавляем магическю строчку:

    Bukkit.getPluginManager().registerEvents(new EventListener(this), this);

    а не то не сработает. и nullom сверху шандарахнет (нет, не шанедарахнет, слушатель не зареган, значит работать не буит вообще)
     
  7. Автор темы
    asdqwertypro

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

    Баллы:
    76
    вродь всё норм... я короче в гроб. завтра потолкуем)))
     
  8. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    типа спать что ли?
     
  9. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Походу[DOUBLEPOST=1483559059,1483559026][/DOUBLEPOST]940 просмотров темы, да ладно...
     
  10. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    ждем 1337 просмотров
     
  11. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Кстати, getNearbyEntities нельзя через локацию проверять =)
    Только через энтити Entity.getNearbyEntities();
    Но я по-другому сделал, 4 строки кода
     
  12. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    а я через getWorld как бы[DOUBLEPOST=1483559334,1483559224][/DOUBLEPOST]
    где ты это откопал вообще? я же убрал вроде как это еще до того как слил коды[DOUBLEPOST=1483559380][/DOUBLEPOST]
    world.getNearblЛеньПисатьНоТыПонял
     
  13. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    И вот так низя =)
     
  14. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    с фигов?[DOUBLEPOST=1483559535,1483559460][/DOUBLEPOST]https://hub.spigotmc.org/javadocs/b...(org.bukkit.Location, double, double, double)

    (это твоя многоходовочка? опять про доки затрешь? для пиара типа?)[DOUBLEPOST=1483559591][/DOUBLEPOST]
    и отвтеть на это плз. оч интересно.
     
  15. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    upload_2017-1-4_22-54-58.png [DOUBLEPOST=1483559834][/DOUBLEPOST]Сам попробуй =)
     
  16. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
    там есть такой метод. просто не юзай древние ядра.
     
  17. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Сам попробуй =) я уже кое-как сделал, через получение всех мобов в мире и чек координат
     
  18. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooooooooooo
  19. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    upload_2017-1-5_0-58-53.png

    И где ты откопал у меня такие методы?
     
  20. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    1.8.8 Spigot, хмм
     
  21. Fenix78563

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

    Баллы:
    76
    Имя в Minecraft:
    Blc_Dragon
    когда мажор и решил усрать всё ОЗУ по п*зде
     

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