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

Туториал [1.7.10-1.8] [Vanilla + Forge] Minecraft Coder Pack. Как сделать красивые прозрачные кнопки.

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем EvilEnginer, 29 июн 2014.

  1. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Подключи библиотеки, которых нет.
    А вообще, MCP баганый и не работает с Eclipse с недавних пор. Т.е. ты можешь редактировать клиент, но не можешь его скомпилировать. Юзай recompile.bat и startclient.bat для проверки сделанного. А для коддинга - эклипс, так как там подсветка синтаксиса
     
  2. eLencie

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

    Баллы:
    88
    Имя в Minecraft:
    eLencie
    Подскажите. Скачал forgegrandle, запустил gradlew.bat, подождал, пока скачаются необходимые данные. Вроде, все скачалось, консоль закрылась. Также выбрал рабочую область в эклипсе (как и с ванильным майном - та же папка), но эклипс теперь показывает мне одну папку minecraft, с которой у меня никак взаимодействовать не получается. Что я сделал не так?
    ps. На клиенте стоял не только фордж, но и оптифайн
     

    Вложения:

  3. gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Нужно не запускать gradlew.bat, а использовать команду gradlew setupDecompWorkspace eclipse.
     
  4. eLencie

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

    Баллы:
    88
    Имя в Minecraft:
    eLencie
    Создал батник с таким содержанием, запустил, все готово. Выбрал в качестве рабочей области в эклипсе ту же папку eclipse из директории с распакованным forgegrandle. Но эклипс снова показывает папку, взаимодействовать с которой я также не могу. В чем проблема?
     
  5. Radviger

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

    Баллы:
    88
    Имя в Minecraft:
    Radviger
    Указывайте коренную папку Forge Gradle в меню Import Existing Project.
     
  6. eLencie

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

    Баллы:
    88
    Имя в Minecraft:
    eLencie
    С этой проблемой разобрался: у меня скорость инета невысока, просто не все скачивалось.
    Подскажите вот что: попросил человека скинуть мне исходники клиента с форджем (всю .gradlew папку), заменил у себя все пути на верные в .classpath, .project (из org.eclipse.jdt.core), но при открытии папки minecraft в эклипсе вылетает ошибка "Missing .project file", если добавлять проект вашим способом - вылетает
    "Invalid project description.
    C:\Users\User\Desktop\newFG overlaps the workspace location: C:\Users\User\Desktop\newFG\eclipse". В чем проблема? .project лежит и в gradlew, и в .gradlew\...\org.jdt.eclipse.
     
  7. PWNEDSX

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

    Баллы:
    66
    Имя в Minecraft:
    Skrylax
    Измените код , который двигает опции и выход из игры на вот этот. Тот уже не работает

    this.buttonList.add(new GuiButton(0, this.width / - 200 + 15, var3 + 45, 130, 20, I18n.format("menu.options", new Object[0])));
    this.buttonList.add(new GuiButton(4, this.width / - 200 + 15, var3 + 70, 130, 20, I18n.format("menu.quit", new Object[0])));
    // this.buttonList.add(new GuiButtonLanguage(5, this.width / 2 - 124, var3 + 72 + 12));
     
  8. Yanuari

    Yanuari Активный участник

    Баллы:
    61
    Имя в Minecraft:
    Yanuari
    Ошибка, а почему? :С

    Версия: 1.7.2 FORGE
    [​IMG]
     
  9. animnex

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

    Баллы:
    78
    Уважаемые коллеги. У меня есть готовый клиент 1.6.4 с форджем, оптифайном, модлоадером. Как мне его разобрать что бы эти все дополнения остались? Если нельзя а я так понимаю нельзя то прошу пояснить в кратце как эти все дополнения добавить в чистую версию при компиляции? Спасибо.
     
  10. gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    1. Деобфусцировать клиент.
    2. Декомпилировать клиент.
    3. Найти нужные классы.
    4. Найти все изменения с помощью Diff (для этого нужен ещё и исходник оригинального класса).
    P.S. Раз уж тему апнули, то вот новый код рендера кнопки для 1.7.10:
    Код:
    public void drawButton(Minecraft p_146112_1_, int p_146112_2_, int p_146112_3_)
    {
       if (this.visible)
       {
          GL11.glColor4f(1F, 1F, 1F, 1F);
          boolean changed = p_146112_2_ >= this.xPosition && p_146112_3_ >= this.yPosition && p_146112_2_ < this.xPosition + this.width && p_146112_3_ < this.yPosition + this.height;
          GL11.glEnable(GL11.GL_BLEND);
          OpenGlHelper.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, 1, 0);
          int color = changed ? 0x90000000 : 0x60000000; // changed;not_changed
          this.drawBorderedRect(this.xPosition, this.yPosition, this.xPosition + this.width, this.yPosition + this.height, 1, 0x90FFFFFF, color);
          color = this.enabled ? (changed ? 0x00FF00 : 0xFFCCCC) : 0xFF0000; // changed;not_changed;not_enabled
          this.drawCenteredString(p_146112_1_.fontRenderer, this.displayString, this.xPosition + this.width / 2, this.yPosition + (this.height - 8) / 2, color);
          this.mouseDragged(p_146112_1_, p_146112_2_, p_146112_3_);
       }
    }
     
  11. animnex

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

    Баллы:
    78
    Это чистый клиент так делать? А добавлять как Фордж, моадлодер. оптифайн?
     
  12. gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Без разницы, что за клиент разбирается. Хоть с Forge, хоть без.
    P.S. ModLoader уже давно не нужно ставить. Куда более совершенный аналог встроен в Forge.
     
  13. animnex

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

    Баллы:
    78
    Качаю MCP для версии 1.6.4. Кладу файл minecraft.jar в папку jars и запускаю файл reobfuscate.bat, потом decompile.bat, а далее смотрю в папке src нужные мне классы через NetBeans IDE или eclipse. Сам клиент у меня построен под лаунчер Sashok724. Есть ли в интернете нормальный мануал по работе с MCP?
    Методом проб и ошибок понял что при запуске файла reobfuscate.bat все файлы должны находится по пути:
    C:\Users\Максим\AppData\Roaming\.minecraft\versions\1.6.4
    Но теперь выдает ошибку:
    > Creating Retroguard config files
    !! Can not find client md5s !!
    !! Can not find server md5s !!
    Для продолжения нажмите любую клавишу . . .

    Далее я разобрался, положил значит в папу jars папки assets libraries versions и запустил decompile.bat. Классы я нашел по пути C:\mcp811\src\minecraft\net\minecraft\src.
    Поясни пожалуйста что это такое?

    Впрочем добрался я до кода. А вот появилась проблема. Где найти код для версии 1.6.4 по изменению кнопок. Да и вообще, может ли кто то помочь в этом вопросе? Отплачу пивом.
     
    Последнее редактирование: 20 май 2015
  14. dirt34

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

    Баллы:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    не понимаю зачем так всё усложнять... Поставить CustomMainMenu, сделать кнопки в фотошопе или найти готовые и тоже самое получается!
     
  15. animnex

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

    Баллы:
    78
    Ну ты человек даёшь! Где же ты раньше был. Пойду смотреть что и как. Но очень хотелось бы разобраться уже с начатой проблемой. С Mcp все равно больше возможностей.
     
  16. dirt34

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

    Баллы:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    возможностей то больше, но и гемора больше + ко всему нужно знать Java.
     
  17. animnex

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

    Баллы:
    78
    Поставлю пиво за сделанную работу. Пример могу кинуть как должно быть.
     
  18. dirt34

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

    Баллы:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    кинь.
     
  19. animnex

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

    Баллы:
    78
    Только на версию 1.6.4
     

    Вложения:

  20. dirt34

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

    Баллы:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    с CMM легче простого такое сделать...
     

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