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

Помогите Биом игрока

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

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

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

    Баллы:
    153
    Сабж. Нужно получить биом игрока.
    Пытался так:
    Код:
    if(event.getPlayer().getWorld().getBiome(player.getLocation().getBlockX(), player.getLocation().getBlockZ())==Biome.ICE_PLAINS){
    ...
    } //Не вышло!
    fromgate , вы вроде бы делали такой плагин. Он у вас с биомами взаимодействовал.
     
    ITrAnEI нравится это.
  2. Ission

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

    Баллы:
    173
    Skype:
    lokivava
    ICE_PLAINS отсутствует в версиях 1.2 и выше(с какой конкретно версии - не помню).
     
    ITrAnEI нравится это.
  3. Автор темы
    Jers

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

    Баллы:
    153
    Пробовал другие. Хотя, может там был замороженный океан...
     
    ITrAnEI нравится это.
  4. Ission

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

    Баллы:
    173
    Skype:
    lokivava
    Из морозных биомов есть только тайга и горная тайга.
     
  5. Автор темы
    Jers

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

    Баллы:
    153
    Сейчас попробую. Вряд ли это будет работать. Не работает :(
    DPOH-VAR
     
  6. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Да нет, никуда он не делся. Я только что проверил - работает.
    Устаревшие биомы: RAINFOREST, SEASONAL_FOREST, SAVANNA, SHRUBLAND, ICE_DESERT, TUNDRA

    Если Вы хотите проверить "холодный биом", то подготовьте себе массив из них заранее (если не ошибаюсь холодные биомы это: ICE_PLAINS, TAIGA, ICE_MOUNTAINS, TAIGA_HILLS, FROZEN_RIVER, FROZEN_OCEAN (мог что-то пропустить)) и проверяйте.
    Допустим так:

    Код:
        public boolean isColdBiome (Biome biome){
            Biome [] coldbiomes = {Biome.ICE_PLAINS, Biome.ICE_MOUNTAINS, Biome.TAIGA, Biome.TAIGA_HILLS, Biome.FROZEN_RIVER, Biome.FROZEN_OCEAN};
            for (int i = 0; i<coldbiomes.length; i++)
                if (coldbiomes[i].equals(biome)) return true;
            return false;
        }
    Соответственно для игрока проверяем так

    Код:
    if (isColdBiome (player.getLocation().getBlock().getBiome())) {.........
     
    Black-UK-Lord, stew, DPOH-VAR и ещё 1-му нравится это.
  7. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Вы в процессе разработки себе в чат выводите значение того чего с чем сравнивается. Сразу увидите, где вы ищете тайгу, а находите что-то другое ;)
     
  8. Автор темы
    Jers

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

    Баллы:
    153
    Я так и делаю :) Мне будет выводить и понижать температуру тела когда я буду в холодных биомах. Спасибо большое!
     
  9. fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Jers, тогда можно вообще сделать удобно: HashMap со всеми типами биомов в качестве ключа - значение модификатор температуры. Скажем в тайге будет замерзать не так быстро как в океане, а в лесах отогреваться не так быстро как в пустыне ;)
     
    DPOH-VAR и Jers нравится это.
  10. Ission

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

    Баллы:
    173
    Skype:
    lokivava
    Да? Странно... У меня на 1.2 с подобными значениями плагин вылетал.
     

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