Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

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

Jers

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

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

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

Java:
    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;
    }

Соответственно для игрока проверяем так

Java:
if (isColdBiome (player.getLocation().getBlock().getBiome())) {.........
 
Сейчас попробую. Вряд ли это будет работать. Не работает :(

Вы в процессе разработки себе в чат выводите значение того чего с чем сравнивается. Сразу увидите, где вы ищете тайгу, а находите что-то другое ;)
 
Вы в процессе разработки себе в чат выводите значение того чего с чем сравнивается. Сразу увидите, где вы ищете тайгу, а находите что-то другое ;)
Я так и делаю :) Мне будет выводить и понижать температуру тела когда я буду в холодных биомах. Спасибо большое!
 
@Jers, тогда можно вообще сделать удобно: HashMap со всеми типами биомов в качестве ключа - значение модификатор температуры. Скажем в тайге будет замерзать не так быстро как в океане, а в лесах отогреваться не так быстро как в пустыне ;)
 
Да нет, никуда он не делся. Я только что проверил - работает.
Устаревшие биомы: RAINFOREST, SEASONAL_FOREST, SAVANNA, SHRUBLAND, ICE_DESERT, TUNDRA

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

Java:
    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;
    }

Соответственно для игрока проверяем так

Java:
if (isColdBiome (player.getLocation().getBlock().getBiome())) {.........
Да? Странно... У меня на 1.2 с подобными значениями плагин вылетал.
 

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

Назад
Верх