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

Туториал Делаем кнопки "Зайти на сервер", "Обновить" и отображение кол-ва игроков в гл. меню.

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

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

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Красота-а-а... Надо будет у себя сделать так. Правда много места будет занимать, но что-нибудь придумаю. :)
     
  2. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Дашь исходный код в личные сообщения, пожалуйста?
     
  3. alexandrage

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

    Баллы:
    173
    Для этого есть перелистывание.
     
  4. kirr9999

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

    Баллы:
    103
    А где можно поиграть на сервере с таким замечательным таб-листом?)
     
  5. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Хотите декомпилировать клиент и извлечь код (лично у меня есть такая мысль)? Сомневаюсь, что получится.
     
  6. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Ну, в 1.8 почти также сделано. Можно декомпилировать 1.8 fernFlower'ом (без деобфускации) и вынуть оттуда этот код, пингер переделать можно и самому.
     
  7. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Да? Это интересно.
    P.S. Для 1.8 давно есть MCP.
     
  8. kirr9999

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

    Баллы:
    103
    Я тоже сомневаюсь, что у меня получится это осуществить, ибо @alexandrage любит всё обфусцировать... Хотя, скажем, стрингер снять я смогу)
     
  9. Radviger

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

    Баллы:
    88
    Имя в Minecraft:
    Radviger
    @alexandrage, нужна ваша помощь!
    Я собрал свой фордж 1.7.10, с нужными патчами, запустил установщик, и он установившись в папку .minecraft стабильно работает, но при установке его в ваш модифицированный лаунчер сашка выбивает следующий краш:
    Running Minecraft
    ERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger
    ERROR FML FML appears to be missing any signature data. This is not a good thing
    ERROR LaunchWrapper Unable to launch java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at net.launcher.components.Game.<init>(Game.java:230)
    at net.launcher.utils.UpdaterThread.run(UpdaterThread.java:101)
    at net.launcher.utils.ThreadUtils.runUpdater(ThreadUtils.java:172)
    at net.launcher.utils.ThreadUtils$2.run(ThreadUtils.java:127)
    Caused by: java.lang.NoClassDefFoundError: net/minecraftforge/client/event/GuiOpenEvent
    at net.minecraft.client.main.Main.main(SourceFile:72)
    ... 14 more
    Caused by: java.lang.ClassNotFoundException: net.minecraftforge.client.event.GuiOpenEvent
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 15 more
    Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.tree.MethodInsnNode.<init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
    at cpw.mods.fml.common.asm.transformers.EventSubscriptionTransformer.buildEvents(EventSubscriptionTransformer.java:144)
    at cpw.mods.fml.common.asm.transformers.EventSubscriptionTransformer.transform(EventSubscriptionTransformer.java:63)
    at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279)
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176)
    ... 17 more

    P.S. Классы проверил, все присутствуют, либы тоже пересобрал (форжевские).
    Может аргументов для JVM не хватает, что вряд ли...
    Help!!

    Спасибо всем, разобрался сам, пересобрав библиотеки под новый форж.
     
    Последнее редактирование: 11 окт 2014
  10. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Можно же найти нужный класс)
    Можно ссылку, плиз??? Просто его нет на официальном сайте MCP. Ну, http://mcp.ocean-labs.de/
     
  11. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
  12. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Ох батеньки мои)
     
  13. Sirse

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

    Баллы:
    173
    Имя в Minecraft:
    Sirse
    Вопрос автору: как будет работать условие
    Код:
    if(this.pinger.isAlive()) {
    , если пингер ранее не инициализирован? Код не компилил, но вроде же вывалится NullPointer, не?

    UP: Ошибка только в туторе для 1.6.4
     
  14. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Блин, постоянно забываю добавить проверку на null в туториал для 1.6.4. Спасибо, что напомнили. :)
     
  15. LisyFOX

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

    Баллы:
    123
    Skype:
    evgexa_ranger777
    Имя в Minecraft:
    LisyFOX
    Как загрузить текстуру кнопки обновить?
    В файле GuiButtonLanguage.java ничего такого не нашёл.
     
  16. MrGiperCreeper

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

    Баллы:
    78
    Имя в Minecraft:
    Ivan_Alone
    Так, начну.... с начала! Все кнопки (текстуры) хранятся в файле widgets.png и надеваются через GuiButton.java.
    Т.е. разработчики не дают способа поменять текстуру именно для кнопки языка. Но ее можно установить довольно-таки простыми методами:
    1. Редактирование файла widgets.png. Тут все просто - берешь Photoshop или Paint.net и редактируешь, потом редактированный файл заменяешь. Но есть проблема: поставив ресурспак, кнопка языка, скорее всего, станет не твоей задуманной, а... кнопкой языка! Поэтому рекомендую второй метод.
    2. Впиши этот код в начало тела класса GuiButtonLanguage.java:
    Код:
      protected static final ResourceLocation buttonTextures = new ResourceLocation("textures/gui/my_best_widgets.png");
    Здесь все просто: данный метод переназначает ресурс файла кнопки языка на тот, что указан в кавычках. Таким образом, ресурспаку не удастся заменить ваш файл! Далее вам остается лишь перерисовать кнопку языка в widgets.png и, переименовав этот файл в my_best_widgets.png, закинуть в minecraft.jar (условно назвал))) ).
     
  17. Teror2

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

    Баллы:
    103
    Имя в Minecraft:
    Teror2
  18. Автор темы
    gamerforEA

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

    Баллы:
    143
    Skype:
    sk2000sk1
    Имя в Minecraft:
    gamerforEA_MCPC
    Предполагаю, что у вас MCP. Вместо width попробуйте использовать field_146120_f.
     
  19. Teror2

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

    Баллы:
    103
    Имя в Minecraft:
    Teror2
    Да, mcp
    field_146120_f не особо помогло, т.к. первая кнопка слева нормального размера в половину а вторая полного и при изменениях там всё еще хуже становиться.
    Не парился с этой темой и сделал так
    Код:
            this.buttonList.add(new GuiButton(0, this.width / 2 - 100, var3 + 72 + 12, 98, 20, I18n.format("menu.options", new Object[0])));
            this.buttonList.add(new GuiButton(4, this.width / 2 + 2, var3 + 72 + 12, 98, 20, I18n.format("menu.quit", new Object[0])));
            this.buttonList.add(new GuiButton(100, this.width / 2 - 100, var3 + 42 + 12, 98, 20, "Наш сайт"));
            this.buttonList.add(new GuiButton(101, this.width / 2 + 2, var3 + 42 + 12, 98, 20, "Донат"));


    [​IMG]
     
  20. dirt34

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

    Баллы:
    143
    Skype:
    alucid2
    Имя в Minecraft:
    dirt34
    Как убрать кнопку одиночная игра?
     

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