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

Помогите отследить смерть

Тема в разделе "Разработка плагинов для новичков", создана пользователем energy455, 31 июл 2015.

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

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

    Баллы:
    78
    Skype:
    vlad_street
    Привет, пробовал искать но ничего не нашел, так же хотел в других плагинах посмотреть исходный код, но не получилось :(

    Нужно отловить от чего умер плеер, если от игрока, то имя игркоа, если от моба, то тип моба.

    Подскажите в каком евенте можно сделать?
    Хотел через playerDeathEvent, но там нету)
     
  2. Хостинг MineCraft
    <
  3. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    EntityDamageByEntityEvent
     
  4. Bleach

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

    Баллы:
    68
    PlayerDeathEvent

    EntityDamageEvent damevent = player.getLastDamageCause();
    DamageCause = damevent.getCause();

    Ответ на КАЖДЫЙ из созданных Вами тредов можно найти после пяти минут гугла/чтения доков.
    В следующий раз, создавая подобные треды, убедитесь, что приложили хоть какие-то усилия для поиска ответа самостоятельно.
    http://www.javaminecraft.com/bukkitapi/
     
  5. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    лучше расскажите, можно ли открыть чужой плагин и посомтреть исходный код?
     
  6. Bleach

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

    Баллы:
    68
     
  7. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
     
  8. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    во, спасибо!)
     
  9. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    Jd-Gui вам в помощь.
     
  10. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    допусти я отследил удар игрока ENTITY DAMAGE
    как отследить удар моба? то что я умер от руки моба
     
  11. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    Сделай проверку, если игрока убил не плеер то получай тип убийци.
     
  12. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    ентити дамаг - это же если только плеер бьет?
     
  13. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    if(damager.getType().equals(EntityType.Player)){
    System.out.println(damager.getType().toString());
    }[DOUBLEPOST=1438338764,1438338711][/DOUBLEPOST]
    EntityDamageEvent этт дамаг вообще всего.
     
  14. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    с этим понятно, спасибо. Как понять умер игрок или нет?
    if health <= 0
    ?
     
  15. Bleach

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

    Баллы:
    68
    Код:
    @EventHandler
        public void onPlayerDeath(PlayerDeathEvent e){
            Player p = e.getEntity();
            EntityDamageEvent damevent = p.getLastDamageCause();
            DamageCause cause = damevent.getCause();
           
            if (cause == DamageCause.ENTITY_ATTACK){
                LivingEntity killer = p.getKiller();
                if (killer instanceof Player){
                    Player pkiller = (Player) killer;
                    e.setDeathMessage("Игрок " + p.getName() + " был убит игроком " + pkiller.getName());
                }else{
                    e.setDeathMessage("Игрок " + p.getName() + " был убит " + killer.getType().toString());
                }
            }
        }
     
  16. Автор темы
    energy455

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

    Баллы:
    78
    Skype:
    vlad_street
    спасибо)
     
Статус темы:
Закрыта.

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