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

Помогите PlayerFishEvent

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

Статус темы:
Закрыта.
  1. Автор темы
    Sirfluffs

    Sirfluffs Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xSirfluffsXx
    Здравствуйте! Как сделать в PlayerFishEvent определить поймал ли игрок рыбу или нет? (пишу плагин ивент)
     
  2. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    Код:
    e.getHook() == null
    И, вообще-то, в доках все есть
     
  3. Автор темы
    Sirfluffs

    Sirfluffs Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xSirfluffsXx
    я хз где доки :D
     
  4. Автор темы
    Sirfluffs

    Sirfluffs Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xSirfluffsXx
    Код:
    e.getHook() == null
    значит то что не поймал тип?
     
  5. TheZefirrkka

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

    Баллы:
    76
    e.getItem() != null
     
  6. alhimikix

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

    Баллы:
    66
    Имя в Minecraft:
    alhimkix
    e.getItem().equals(null)
     
  7. TheZefirrkka

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

    Баллы:
    76
    Ору... Хватит набивать сообщения, пожалуйста....
     
  8. alexandrage

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

    Баллы:
    173
    ХромосомаБубликЕксепшен.
     
  9. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Защита от NullPointer - уровень Бог
     
  10. Dan_Ender

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

    Баллы:
    76
    +1
     
  11. SecDet

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

    Баллы:
    76
    Имя в Minecraft:
    d3ever
    Решить проблему ручками - легко.
     

    Вложения:

  12. Дмитрий keka_VAC

    Дмитрий keka_VAC Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Cake_progress
    package net.k773.freemode;

    import java.util.HashMap;
    import java.util.List;
    import java.util.Map.Entry;
    import java.util.TreeMap;
    import org.bukkit.Bukkit;
    import org.bukkit.Material;
    import org.bukkit.configuration.ConfigurationSection;
    import org.bukkit.entity.Item;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.player.PlayerFishEvent;
    import org.*********ventory.ItemStack;
    import org.*********ventory.PlayerInventory;

    public class FishingEvent
    extends RandomEvent
    implements Listener
    {
    public FishingEvent(String name, ConfigurationSection conf)
    {
    super(name, conf);
    }

    HashMap<String, Integer> fishs = new HashMap();

    @EventHandler
    public void onPlayerFish(PlayerFishEvent e)
    {
    if ((e.getCaught() instanceof Item))
    {
    Item item = (Item)e.getCaught();
    if (item.getItemStack().getType().equals(Material.RAW_FISH)) {
    if (this.fishs.containsKey(e.getPlayer().getName())) {
    this.fishs.put(e.getPlayer().getName(), Integer.valueOf(((Integer)this.fishs.get(e.getPlayer().getName())).intValue() + 1));
    } else {
    this.fishs.put(e.getPlayer().getName(), Integer.valueOf(1));
    }
    }
    }
    }

    public void onFinish()
    {
    super.onFinish();
    ValueComparator bvc = new ValueComparator(this.fishs);
    TreeMap<String, Integer> sorted_map = new TreeMap(bvc);
    sorted_map.putAll(this.fishs);
    int i = 1;
    for (Map.Entry<String, Integer> e : sorted_map.entrySet())
    {
    String pname = (String)e.getKey();
    List<ItemStack> g = this.goods.containsKey(Integer.valueOf(i)) ? (List)this.goods.get(Integer.valueOf(i)) : null;
    if (g != null)
    {
    Player p = Bukkit.getPlayer(pname);
    if (p != null) {
    for (ItemStack stack : g) {
    p.getInventory().addItem(new ItemStack[] { stack });
    }
    }
    }
    int money = this.money.containsKey(Integer.valueOf(i)) ? ((Integer)this.money.get(Integer.valueOf(i))).intValue() : 0;
    giveMoney(pname, money);
    i++;
    }
    this.fishs.clear();
    }

    public String table()
    {
    return table(this.fishs);
    }

    public String getResult(Player p)
    {
    return getResult(this.fishs, p);
    }
    }
    Полный код для ивента рыбалки игрок словил рыбу ему дались монеты (Переделай под себя если хочешь)
     
  13. TheZefirrkka

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

    Баллы:
    76
    А что может быть кроме предмета?...
     
  14. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    Любая сущность кроме, вроде как, рамки и картины
     
  15. xDark

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

    Баллы:
    96
    if (e.getState() == PlayerFishEvent.State.CAUGHT_ENTITY)
     
  16. Автор темы
    Sirfluffs

    Sirfluffs Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    xSirfluffsXx
    спасибо!
     
Статус темы:
Закрыта.

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