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

Помогите Как получить item которым ударили

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

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

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Всем привет, ну вопрос виден: как получить item которым кого-нибудь или что-нибудь ударили.
     
  2. Хостинг MineCraft
    <
  3. Gamer3455

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

    Баллы:
    103
    Meta-Id после основного id добавь.
     
  4. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Так а мне нужно именно тот itemstack которым ударили получить в плагине.
     
  5. Gamer3455

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

    Баллы:
    103
    Возьми меч, ударь им. И после этого посмотри его Id. И уже от этого опирайся.
     
  6. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Вы не поняли моего вопроса.
     
  7. musel70

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

    Баллы:
    88
    Что ты имеешь в виду? Тобой написан бред(ИМХО).
    По вопросу EntityDamageByEntityEvent вроде как то так пишется
    и из него брать e.getDamager().getItemInHand
     
    Последнее редактирование: 1 мар 2014
    ПриветОтЛайки нравится это.
  8. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    getDamager(), а потом уже берёшь предмет.
     
    musel70 нравится это.
  9. Hilgert

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

    Баллы:
    123
    Skype:
    mixa2258
    Имя в Minecraft:
    Hilgert
    Код:
       
        @EventHandler
        public void onClick(PlayerInteractEvent e){
            e.getPlayer().getItemInHand(); //Предмет которым что-то ударили.
        }
       
        @EventHandler
        public void onClick2(PlayerInteractEntityEvent e){
            e.getPlayer().getItemInHand(); //Предмет которым кликнули по ентити
        }
       
        @EventHandler
        public void onClick3(EntityDamageByEntityEvent e){
            ((Player) e.getDamager()).getItemInHand(); //Предмет которым кого-то ударили
        }
    
    Ловлю лойсы :3
     
    RunFMe, makssof и vovvaan96 нравится это.
  10. BeYkeR

    BeYkeR Старожил Девелопер Пользователь

    Баллы:
    173
    Лучше сделать так:

    PHP:
    @EventHandler
    public void onClick3(EntityDamageByEntityEvent e){
    if(
    e.getDamager() instanceof Player){
    Player player = (Playere.getDamager();
    player.getItemInHand(); //Предмет которым кого-то ударили
    }
        }
    Чтобы ошибок в консоле не было :)
     
  11. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Т.е предлагаете делать в лоб, ну хорошо, просто думал может есть стандартный event'ы возвращающие этот предмет.
     
  12. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Каким образом?
     
  13. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    По ходу дела у меня возник еще один вопрос, какой класс в bukkit'e отвечает за мотыги, просто я хочу его наследовать и немного переделать(превратить мотыгу в оружие).
    P.S.Искал на jd bukkit, не нашел(
     
  14. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Item. Каким образом вы хотите сделать её оружием?
     
  15. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Ну класс мотыги переписать)
     
  16. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Каким образом? Что вы хотите, чтобы она делала?
     
  17. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Ну дамажила как меч и при ударах тратилась прочность, можно в принципе и без классов сделать(в event'ах прослеживать мотыгу), но с классами правильней будет.
     
  18. JustBlender

    JustBlender Старожил Девелопер Пользователь

    Баллы:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Что именно переписать? Разве так сложно PlayerInteractEvent использовать, чем переписать "класс" мотыги? Или я не так понял?

    PS. setDamage + setDurability = PROFIT
     
  19. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Чем правильный?
     
  20. JustBlender

    JustBlender Старожил Девелопер Пользователь

    Баллы:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Чуваки, чтобы не засорять форум глупой темой, я задам тут :) Мне кажется или PlayerRespawnEvent не работает, пробовал дебагнуть, отправить сообщение игроку.. Ничего. :\

    Идти писать о баге?
     
    Последнее редактирование: 2 мар 2014
  21. Автор темы
    CraftCoder

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

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    Мне и MaxDurability изменить надо, просто будет удобней если с классом сделать, хочу еще классы деревянного каменного и золотого мечей переписать(под щиты(они уже работают но с durability проблемы)).
     

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