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

Плагин [MECH] BiomeTemp v1.30 - Холодно? Сделай костер и согрейся! [1.7.10 & 1.8.7]

Тема в разделе "Релизы плагинов", создана пользователем baksovic111, 2 июн 2015.

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

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Temperature.jpg
    BiomeTemp - Температура в нашем любимом Minecraft!
    Version: 1.30
    Плагин добавляет в игровую механику температуру!
    Учитывая почти все существующие факторы которые влияют на температуру. От времени дня до источников света(тепла)!

    Дополнения:
    BiomeTempAddonThirst - Теперь не только температура но еще и потребность пить воду чтобы утолить жажду
    Version: 1.0

    Скачать:
    [1.8.7 || v1_8_R3] https://yadi.sk/d/5Zun4iuUgzXZd [v 1.30]
    Есть поддержка более старых версий сервера.
    Но в них не работает ActionBar!


    Скачать дополнение:
    [BiomeTemp v 1.30] https://yadi.sk/d/vzGGvsrohT5qs [v 1.0]


    Особенности:
    - Различная температура в разных биомах.
    - Железная и кожаная броня влияет на температуру.
    - Все источники света являются источниками тепла.
    - Вода является источником холода.
    - Тень так же влияет на температуру
    - На температуру влияет время дня.
    - На температуру так же влияет высота вашего нахождения(Чем выше вы в горах тем вам холоднее).
    - Погода является источником холода(В дождь температура воздуха меньше чем обычно, а в шторм еще меньше)
    - Различные эффекты от переохлаждения и перегрева.
    - Сообщение с температурой воздуха и игрока в экшен баре(Меняется цвет температуры в зависимости от опасности температуры).
    - Сообщения с отладкой в консоли
    - Градусник отображающий температуру воздуха и игрока
    - Все сообщения можно перевести в конфиге
    - Крафт холодной воды и молока.
    - Воду и молоко можно подогреть в печи.
    Collage.jpg
    Команды:
    /biometemp - выводит список команд
    /biometemp reload - перезагрузить конфиг
    /biometemp gettherm - получить термометр

    Конфиг:
    PluginAsynchronously: false - Установите true если у вас больше 2х ядер для лучшего быстродействия
    ActionBar:
    Enable: true - Включить сообщение над активным баром
    ActionBarThirst: true - Отображать ли Жажду над активным баром если есть дополнение
    ActionMessageSettings: 1 - Режим сообщения над активным баром
    ##Данный параметр работает только если EnableActionMessage: true
    #1 - Температура воздуха + Температура игрока
    #2 - Температура воздуха
    #3 - Температура игрока
    EnableScoreboard: true - Включить сообщения в Scoreboard
    IgnorePermission: true - Включить игнор Permissions. Температура будет и у админов
    Lang: - Перевод
    ...

    Permission:
    biometemp.getthermometr - Право на получение термометра
    biometemp.reload - Право перезагружать конфиг
    biometemp.pass - Право на отмену проверки температуры

    Лог изменений:
    *Code Clean Up*
    BigFix
    Плагин значительно переделан.
    Новая механика + новая структура плагина.
    Добавлено дополнение к плагину - Жажда
    Добавлена поддержка сообщений в Scoreboard
    Удалена версия плагина для 1.7
    Теперь версия для 1.8 поддерживает более старые версии включая 1.7
    И куча всего что я уже забыл -_-
    *Code Clean Up*
    Плагин обновлен до версии 1.8.7 [v1_8_R3]
    Можно настроить сообщение в Action Bar
    Увеличение производительности за счет обработки кода в отдельном потоке
    (Можно вкл/выкл в конфиге)
    Улучшения и переработки механики!
    Так же добавлена версия для 1.7+!
    Исправлены некоторые ошибки и баги!
    Баг фиксы, исправления, улучшения.
    Добавлены крафты!
    Температура игрока так же отображается в экшен баре!
    Обновлен градусник! Пкм - Температура воздуха / Лкм - Температура игрока
    Не много обновлены команды.
    В конфиг добавлены новые переводы.
    Что-то еще. Забыл пока делал)
    Плагин сильно обновлен!
    Добавлена температура игрока!
    Переделана некоторая механика плагина!
    Плагин больше не проверяет температуру у игрока в креативе. Так же есть permission который отменяет проверку температуры biometemp.pass
    Переделана система эффектов под температуру игрока.
    (Теперь если вы в холодном биоме у вас постепенно снижается температура тела. И если вы хотите согреться нужно будет посидеть некоторое время чтобы поднять температуру тела.
    Обновлен Debug в консоли так же добавлен новый Debug2 который отображает температуру тела игрока в консоли
    Исправлена ошибка в консоли при взаимодействии игрока с чем либо
    Теперь выпив воды, молока можно понизить температуру тела
    Скушав золотое яблоко можно поднять температуру тела.
    Так же можно взять склянку с водой и указать ей название указанное ранее в конфиге. Такой предмет повысит/понизит температуру тела.
    Обновлены команды, сделана отдельная версия плагина под 1.7+ [На 1.7 не работает сообщение в экшен баре]
    Обновлен конфиг, добавлены сообщения с переводом.
    Мелкие фиксы и доработки.
    Добавлен градусник(Стержень ифрита. Имя предмета настраивается в конфиге), небольшие доработки, возможность отключать сообщение в экшен баре. [1.8+]
    Релиз плагина. [1.8+]
     
    Последнее редактирование: 25 июн 2015
  2. Хостинг MineCraft
    <
  3. _EnderWorld_

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

    Баллы:
    78
    Имя в Minecraft:
    Steve
    Ставлю тебе лайк, потому что ты смог сделать температуру на Action Bar, сейчас протестирую сам плагин. :good: Кстати, я конечно не прошу вас это делать так как может быть трудно, но просто предлагаю сделать предмет похожий на Градусник, выдаваемый командой. Когда нажимаешь ПКМ то в чате высвечивается сообщение где показывается ваша температура. [Это всего лишь предложение]
     
  4. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Сделаю)
     
  5. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Простите, но нет
    Код:
     public static double time(long time)
      {
        double ModTemp = 0.0D;
        if ((time >= 0L) && (time <= 1000L)) {
          ModTemp = -0.07000000000000001D;
        } else if ((time >= 1000L) && (time <= 2000L)) {
          ModTemp = -0.05D;
        } else if ((time >= 2000L) && (time <= 3000L)) {
          ModTemp = -0.01D;
        } else if ((time >= 3000L) && (time <= 4000L)) {
          ModTemp = 0.03D;
        } else if ((time >= 4000L) && (time <= 5000L)) {
          ModTemp = 0.05D;
        } else if ((time >= 5000L) && (time <= 6000L)) {
          ModTemp = 0.05D;
        } else if ((time >= 6000L) && (time <= 7000L)) {
          ModTemp = 0.06D;
        } else if ((time >= 7000L) && (time <= 8000L)) {
          ModTemp = 0.07000000000000001D;
        } else if ((time >= 8000L) && (time <= 9000L)) {
          ModTemp = 0.09D;
        } else if ((time >= 9000L) && (time <= 10000L)) {
          ModTemp = 0.1D;
        } else if ((time >= 10000L) && (time <= 11000L)) {
          ModTemp = 0.13D;
        } else if ((time >= 11000L) && (time <= 12000L)) {
          ModTemp = 0.1D;
        } else if ((time >= 12000L) && (time <= 13000L)) {
          ModTemp = 0.09D;
        } else if ((time >= 13000L) && (time <= 14000L)) {
          ModTemp = 0.08D;
        } else if ((time >= 14000L) && (time <= 15000L)) {
          ModTemp = 0.05D;
        } else if ((time >= 15000L) && (time <= 16000L)) {
          ModTemp = 0.03D;
        } else if ((time >= 16000L) && (time <= 17000L)) {
          ModTemp = 0.01D;
        } else if ((time >= 17000L) && (time <= 18000L)) {
          ModTemp = -0.02D;
        } else if ((time >= 18000L) && (time <= 19000L)) {
          ModTemp = -0.05D;
        } else if ((time >= 19000L) && (time <= 20000L)) {
          ModTemp = -0.08D;
        } else if ((time >= 20000L) && (time <= 21000L)) {
          ModTemp = -0.1D;
        } else if ((time >= 21000L) && (time <= 22000L)) {
          ModTemp = -0.13D;
        } else if ((time >= 22000L) && (time <= 23000L)) {
          ModTemp = -0.1D;
        }
        return ModTemp;
      }
    [DOUBLEPOST=1433321750,1433321617][/DOUBLEPOST]Про это я даже писать не хочу(
    Код:
      public static double CheckSkyLight(Location loc)
      {
        loc.add(0.0D, 1.0D, 0.0D);
        double temp = loc.getBlock().getTemperature();
        double ModLightSky = 0.0D;
        int LightSky = loc.getBlock().getLightFromSky();
        if (temp > 0.8D)
        {
          if (LightSky == 0) {
            ModLightSky = -0.65D;
          }
          if (LightSky == 1) {
            ModLightSky = -0.6D;
          }
          if (LightSky == 2) {
            ModLightSky = -0.55D;
          }
          if (LightSky == 3) {
            ModLightSky = -0.45D;
          }
          if (LightSky == 4) {
            ModLightSky = -0.4D;
          }
          if (LightSky == 5) {
            ModLightSky = -0.35D;
          }
          if (LightSky == 6) {
            ModLightSky = -0.3D;
          }
          if (LightSky == 7) {
            ModLightSky = -0.25D;
          }
          if (LightSky == 8) {
            ModLightSky = -0.21D;
          }
          if (LightSky == 9) {
            ModLightSky = -0.19D;
          }
          if (LightSky == 10) {
            ModLightSky = -0.15D;
          }
          if (LightSky == 11) {
            ModLightSky = -0.13D;
          }
          if (LightSky == 12) {
            ModLightSky = -0.1D;
          }
          if (LightSky == 13) {
            ModLightSky = -0.08D;
          }
          if (LightSky == 14) {
            ModLightSky = -0.05D;
          }
          if (LightSky == 15) {
            ModLightSky = -0.03D;
          }
        }
        if ((temp > 0.5D) && (temp < 0.8D))
        {
          if (LightSky == 0) {
            ModLightSky = -0.3D;
          }
          if (LightSky == 1) {
            ModLightSky = -0.27D;
          }
          if (LightSky == 2) {
            ModLightSky = -0.25D;
          }
          if (LightSky == 3) {
            ModLightSky = -0.21D;
          }
          if (LightSky == 4) {
            ModLightSky = -0.18D;
          }
          if (LightSky == 5) {
            ModLightSky = -0.15D;
          }
          if (LightSky == 6) {
            ModLightSky = -0.13D;
          }
          if (LightSky == 7) {
            ModLightSky = -0.11D;
          }
          if (LightSky == 8) {
            ModLightSky = -0.09D;
          }
          if (LightSky == 9) {
            ModLightSky = -0.07000000000000001D;
          }
          if (LightSky == 10) {
            ModLightSky = -0.06D;
          }
          if (LightSky == 11) {
            ModLightSky = -0.05D;
          }
          if (LightSky == 12) {
            ModLightSky = -0.04D;
          }
          if (LightSky == 13) {
            ModLightSky = -0.03D;
          }
          if (LightSky == 14) {
            ModLightSky = -0.02D;
          }
          if (LightSky == 15) {
            ModLightSky = -0.01D;
          }
        }
        if ((temp > 0.3D) && (temp < 0.5D))
        {
          if (LightSky == 0) {
            ModLightSky = 0.3D;
          }
          if (LightSky == 1) {
            ModLightSky = 0.27D;
          }
          if (LightSky == 2) {
            ModLightSky = 0.25D;
          }
          if (LightSky == 3) {
            ModLightSky = 0.21D;
          }
          if (LightSky == 4) {
            ModLightSky = 0.18D;
          }
          if (LightSky == 5) {
            ModLightSky = 0.15D;
          }
          if (LightSky == 6) {
            ModLightSky = 0.13D;
          }
          if (LightSky == 7) {
            ModLightSky = 0.11D;
          }
          if (LightSky == 8) {
            ModLightSky = 0.09D;
          }
          if (LightSky == 9) {
            ModLightSky = 0.07000000000000001D;
          }
          if (LightSky == 10) {
            ModLightSky = 0.06D;
          }
          if (LightSky == 11) {
            ModLightSky = 0.05D;
          }
          if (LightSky == 12) {
            ModLightSky = 0.04D;
          }
          if (LightSky == 13) {
            ModLightSky = 0.03D;
          }
          if (LightSky == 14) {
            ModLightSky = 0.02D;
          }
          if (LightSky == 15) {
            ModLightSky = 0.01D;
          }
        }
        if (temp < 0.3D)
        {
          if (LightSky == 0) {
            ModLightSky = 0.65D;
          }
          if (LightSky == 1) {
            ModLightSky = 0.6D;
          }
          if (LightSky == 2) {
            ModLightSky = 0.55D;
          }
          if (LightSky == 3) {
            ModLightSky = 0.45D;
          }
          if (LightSky == 4) {
            ModLightSky = 0.4D;
          }
          if (LightSky == 5) {
            ModLightSky = 0.35D;
          }
          if (LightSky == 6) {
            ModLightSky = 0.3D;
          }
          if (LightSky == 7) {
            ModLightSky = 0.25D;
          }
          if (LightSky == 8) {
            ModLightSky = 0.21D;
          }
          if (LightSky == 9) {
            ModLightSky = 0.19D;
          }
          if (LightSky == 10) {
            ModLightSky = 0.15D;
          }
          if (LightSky == 11) {
            ModLightSky = 0.13D;
          }
          if (LightSky == 12) {
            ModLightSky = 0.1D;
          }
          if (LightSky == 13) {
            ModLightSky = 0.08D;
          }
          if (LightSky == 14) {
            ModLightSky = 0.05D;
          }
          if (LightSky == 15) {
            ModLightSky = 0.03D;
          }
        }
        return ModLightSky;
      }
    Почитайте на досуге
    https://ru.wikipedia.org/wiki/Функция_(математика)
     
  6. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Что не так?)
    Лучше обьясни чем критиковать..
     
  7. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    У вас тонны однотипного кода который куда логичнее представить в несколько строк какой-то зависимостью
     
  8. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Прошу прощения но у меня еще не так много опыта. И если хотите помочь, лучше объясните как реализовать по другому мой код.
     
  9. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Чтож, давайте рассмотрим длинный кусок:
    Код:
      public static double CheckSkyLight(Location loc)
      {
        loc.add(0.0D, 1.0D, 0.0D);
        double temp = loc.getBlock().getTemperature();
        double ModLightSky = 0.0D;
        int LightSky = loc.getBlock().getLightFromSky();
        if (temp > 0.8D)
        {
          if (LightSky == 0) {
            ModLightSky = -0.65D;
          }
          if (LightSky == 1) {
            ModLightSky = -0.6D;
          }
          if (LightSky == 2) {
            ModLightSky = -0.55D;
          }
          if (LightSky == 3) {
            ModLightSky = -0.45D;
          }
          if (LightSky == 4) {
            ModLightSky = -0.4D;
          }
          if (LightSky == 5) {
            ModLightSky = -0.35D;
          }
          if (LightSky == 6) {
            ModLightSky = -0.3D;
          }
          if (LightSky == 7) {
            ModLightSky = -0.25D;
          }
          if (LightSky == 8) {
            ModLightSky = -0.21D;
          }
          if (LightSky == 9) {
            ModLightSky = -0.19D;
          }
          if (LightSky == 10) {
            ModLightSky = -0.15D;
          }
          if (LightSky == 11) {
            ModLightSky = -0.13D;
          }
          if (LightSky == 12) {
            ModLightSky = -0.1D;
          }
          if (LightSky == 13) {
            ModLightSky = -0.08D;
          }
          if (LightSky == 14) {
            ModLightSky = -0.05D;
          }
          if (LightSky == 15) {
            ModLightSky = -0.03D;
          }
        }
        if ((temp > 0.5D) && (temp < 0.8D))
        {
          if (LightSky == 0) {
            ModLightSky = -0.3D;
          }
          if (LightSky == 1) {
            ModLightSky = -0.27D;
          }
          if (LightSky == 2) {
            ModLightSky = -0.25D;
          }
          if (LightSky == 3) {
            ModLightSky = -0.21D;
          }
          if (LightSky == 4) {
            ModLightSky = -0.18D;
          }
          if (LightSky == 5) {
            ModLightSky = -0.15D;
          }
          if (LightSky == 6) {
            ModLightSky = -0.13D;
          }
          if (LightSky == 7) {
            ModLightSky = -0.11D;
          }
          if (LightSky == 8) {
            ModLightSky = -0.09D;
          }
          if (LightSky == 9) {
            ModLightSky = -0.07000000000000001D;
          }
          if (LightSky == 10) {
            ModLightSky = -0.06D;
          }
          if (LightSky == 11) {
            ModLightSky = -0.05D;
          }
          if (LightSky == 12) {
            ModLightSky = -0.04D;
          }
          if (LightSky == 13) {
            ModLightSky = -0.03D;
          }
          if (LightSky == 14) {
            ModLightSky = -0.02D;
          }
          if (LightSky == 15) {
            ModLightSky = -0.01D;
          }
        }
        if ((temp > 0.3D) && (temp < 0.5D))
        {
          if (LightSky == 0) {
            ModLightSky = 0.3D;
          }
          if (LightSky == 1) {
            ModLightSky = 0.27D;
          }
          if (LightSky == 2) {
            ModLightSky = 0.25D;
          }
          if (LightSky == 3) {
            ModLightSky = 0.21D;
          }
          if (LightSky == 4) {
            ModLightSky = 0.18D;
          }
          if (LightSky == 5) {
            ModLightSky = 0.15D;
          }
          if (LightSky == 6) {
            ModLightSky = 0.13D;
          }
          if (LightSky == 7) {
            ModLightSky = 0.11D;
          }
          if (LightSky == 8) {
            ModLightSky = 0.09D;
          }
          if (LightSky == 9) {
            ModLightSky = 0.07000000000000001D;
          }
          if (LightSky == 10) {
            ModLightSky = 0.06D;
          }
          if (LightSky == 11) {
            ModLightSky = 0.05D;
          }
          if (LightSky == 12) {
            ModLightSky = 0.04D;
          }
          if (LightSky == 13) {
            ModLightSky = 0.03D;
          }
          if (LightSky == 14) {
            ModLightSky = 0.02D;
          }
          if (LightSky == 15) {
            ModLightSky = 0.01D;
          }
        }
        if (temp < 0.3D)
        {
          if (LightSky == 0) {
            ModLightSky = 0.65D;
          }
          if (LightSky == 1) {
            ModLightSky = 0.6D;
          }
          if (LightSky == 2) {
            ModLightSky = 0.55D;
          }
          if (LightSky == 3) {
            ModLightSky = 0.45D;
          }
          if (LightSky == 4) {
            ModLightSky = 0.4D;
          }
          if (LightSky == 5) {
            ModLightSky = 0.35D;
          }
          if (LightSky == 6) {
            ModLightSky = 0.3D;
          }
          if (LightSky == 7) {
            ModLightSky = 0.25D;
          }
          if (LightSky == 8) {
            ModLightSky = 0.21D;
          }
          if (LightSky == 9) {
            ModLightSky = 0.19D;
          }
          if (LightSky == 10) {
            ModLightSky = 0.15D;
          }
          if (LightSky == 11) {
            ModLightSky = 0.13D;
          }
          if (LightSky == 12) {
            ModLightSky = 0.1D;
          }
          if (LightSky == 13) {
            ModLightSky = 0.08D;
          }
          if (LightSky == 14) {
            ModLightSky = 0.05D;
          }
          if (LightSky == 15) {
            ModLightSky = 0.03D;
          }
        }
        return ModLightSky;
      }
    К примеру блок 0.8
    Минимальное значение -0.65(0), максимальное -0.03(15)
    Самое простое что приходит в голову это -0.65 * (15 - LightSky) / 15, но таким образом в случае 15 - мы получим 0
    Нам такой вариант не очень подходит. Можно конечно придумать что-то более умное, но в крайнем случае просто обойтись
    ModLightSky = -0.65 * (15 - LightSky) / 15 + (LightSky==15 ? 0.03 : 0);[DOUBLEPOST=1433325528,1433325400][/DOUBLEPOST]При желании, если подумать - можно вывести подобные зависимости для максимальных значений (типа 0.65) и вообще оформить весь этот код одной строкой, но тут надо подумать, а я сейчас занят немного другим

    Либо переосмыслить температуру в зависимость от чего-то другого

    И еще, не помешает: http://en.wikipedia.org/wiki/Naming_convention_(programming)#Java
     
    Последнее редактирование: 3 июн 2015
  10. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    @ql_Nik_lp не хватит мне опыта и мозгов чтобы переделать это таким образом)
    Не судите строго)
    Успею еще набраться опыта.
    Максимум что я смог так это переделать тот отрывок кода под switch.
    Так же добавил градусник по просьбе _EnderWorld_
     
    Последнее редактирование: 3 июн 2015
  11. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    А скриншотик? :D
     
  12. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    public static double CheckSkyLight(Location loc){

    double temp = loc.getBlock().getTemperature();
    double ModLightSky = 0;
    int LightSky = loc.getBlock().getLightFromSky();

    if (temp > 0.8){
    switch(LightSky){

    case 0:
    ModLightSky = -0.65;
    break;

    case 1:
    ModLightSky = -0.60;
    break;

    case 2:
    ModLightSky = -0.55;
    break;

    case 3:
    ModLightSky = -0.45;
    break;

    case 4:
    ModLightSky = -0.40;
    break;

    case 5:
    ModLightSky = -0.35;
    break;

    case 6:
    ModLightSky = -0.30;
    break;

    case 7:
    ModLightSky = -0.25;
    break;

    case 8:
    ModLightSky = -0.21;
    break;

    case 9:
    ModLightSky = -0.19;
    break;

    case 10:
    ModLightSky = -0.15;
    break;

    case 11:
    ModLightSky = -0.13;
    break;

    case 12:
    ModLightSky = -0.10;
    break;

    case 13:
    ModLightSky = -0.08;
    break;

    case 14:
    ModLightSky = -0.05;
    break;

    case 15:
    ModLightSky = -0.03;
    break;
    }
    }
    else if (temp > 0.5 && temp < 0.8){
    switch(LightSky){

    case 0:
    ModLightSky = -0.30;
    break;

    case 1:
    ModLightSky = -0.27;
    break;

    case 2:
    ModLightSky = -0.25;
    break;

    case 3:
    ModLightSky = -0.21;
    break;

    case 4:
    ModLightSky = -0.18;
    break;

    case 5:
    ModLightSky = -0.15;
    break;

    case 6:
    ModLightSky = -0.13;
    break;

    case 7:
    ModLightSky = -0.11;
    break;

    case 8:
    ModLightSky = -0.09;
    break;

    case 9:
    ModLightSky = -0.07;
    break;

    case 10:
    ModLightSky = -0.06;
    break;

    case 11:
    ModLightSky = -0.05;
    break;

    case 12:
    ModLightSky = -0.04;
    break;

    case 13:
    ModLightSky = -0.03;
    break;

    case 14:
    ModLightSky = -0.02;
    break;

    case 15:
    ModLightSky = -0.01;
    break;
    }
    }
    else if (temp > 0.3 && temp < 0.5){
    switch(LightSky){

    case 0:
    ModLightSky = 0.30;
    break;

    case 1:
    ModLightSky = 0.27;
    break;

    case 2:
    ModLightSky = 0.25;
    break;

    case 3:
    ModLightSky = 0.21;
    break;

    case 4:
    ModLightSky = 0.18;
    break;

    case 5:
    ModLightSky = 0.15;
    break;

    case 6:
    ModLightSky = 0.13;
    break;

    case 7:
    ModLightSky = 0.11;
    break;

    case 8:
    ModLightSky = 0.09;
    break;

    case 9:
    ModLightSky = 0.07;
    break;

    case 10:
    ModLightSky = 0.06;
    break;

    case 11:
    ModLightSky = 0.05;
    break;

    case 12:
    ModLightSky = 0.04;
    break;

    case 13:
    ModLightSky = 0.03;
    break;

    case 14:
    ModLightSky = 0.02;
    break;

    case 15:
    ModLightSky = 0.01;
    break;
    }
    }
    else if (temp < 0.3){
    switch(LightSky){

    case 0:
    ModLightSky = -0.65;
    break;

    case 1:
    ModLightSky = -0.60;
    break;

    case 2:
    ModLightSky = -0.55;
    break;

    case 3:
    ModLightSky = -0.45;
    break;

    case 4:
    ModLightSky = -0.40;
    break;

    case 5:
    ModLightSky = -0.35;
    break;

    case 6:
    ModLightSky = -0.30;
    break;

    case 7:
    ModLightSky = -0.25;
    break;

    case 8:
    ModLightSky = -0.21;
    break;

    case 9:
    ModLightSky = -0.19;
    break;

    case 10:
    ModLightSky = -0.15;
    break;

    case 11:
    ModLightSky = -0.13;
    break;

    case 12:
    ModLightSky = -0.10;
    break;

    case 13:
    ModLightSky = -0.08;
    break;

    case 14:
    ModLightSky = -0.05;
    break;

    case 15:
    ModLightSky = -0.03;
    break;
    }
    }
    return ModLightSky;
    }
    [DOUBLEPOST=1433334532,1433334459][/DOUBLEPOST]Код стал более длинный но более читабельный и в плане производительности он будет быстрее чем if
     
  13. _EnderWorld_

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

    Баллы:
    78
    Имя в Minecraft:
    Steve
    Спасибо, сейчас проверю эту версию. Конечно за сообщение и настройку конфига я нечего не говорю, это и так на высшем уровне.[DOUBLEPOST=1433342962,1433342350][/DOUBLEPOST]А вот смотрите если вы сказали, то что броня действует на температуру, то если игрок в кожаной броне начнёт ходить по пустыне, то ему будет написано что ему жарко, а вот можно сделать "Минералку", как пузырек воды, которую надо будет покупать, я знаю что там нужно API Vault (Как-то так, библиотека для монет), и тогда когда игрок выпьет его, то с него снимутся все негативные эффекты. Ну конечно можно сделать покупку через openGUI. В которой будет 2 кнопки: Отмена и Купить.

    P.S. - Это всего-лишь предложение автору, не нужно воспринимать его в серьёз, я просто предлагаю, если автор не захочет, то это его право.
     
  14. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Я думал в дальнейшем реализовать нечто подобное.
    Вода понижает температуру
    Спирт повышает температуру
    Но для этого нужно доделывать серьезно плагин. По мимо температуры биомов и других факторов, нужно будет еще и температуру самого игрока делать.
    В дальнейшем я попробую реализовать нечто подобное
     
  15. _EnderWorld_

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

    Баллы:
    78
    Имя в Minecraft:
    Steve
    А вот в этом плагине, будет что-то связано с GUI? Как вы сказали можно в GUI сделать покупку или спирта или воды.
     
  16. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Делать gui в моем плагине я не буду. Это бессмысленно.
    Воду или спирт можно будет скрафтить, либо поставить на продажу в любом другом плагине с магазином. С gui или без уже не важно будет)
     
  17. _EnderWorld_

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

    Баллы:
    78
    Имя в Minecraft:
    Steve
    Можно сделать, когда игрок будет крафтить, то у воды или спирта будет своего имя и описание. Например: Спирт имеет описание что с при выпивании будет повышаться температура. Можно будет настроить в config все сообщения.
     
  18. Автор темы
    baksovic111

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

    Баллы:
    88
    Skype:
    Baksovic2
    Имя в Minecraft:
    Baksovic
    Так и будет если конечно у меня дойдут руки до реализации температуры тела.
    Это не так просто)
     
  19. _EnderWorld_

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

    Баллы:
    78
    Имя в Minecraft:
    Steve
    Вообще написание какого-либо плагина это не просто, нужно же учить Event'ы, и всякое такое.
     
  20. DarKillers54

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

    Баллы:
    88
    Имя в Minecraft:
    DarKillers54
    1.7.10 ядро, а если играю с 1.7+, будет отображатся текст над инвентарем?
     
  21. Лаваш

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

    Баллы:
    78
    Слушай,а на 1.7.2 это не как не сделать?(
     

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