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

Туториал CustomMainMenu

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем Sparksys, 21 фев 2016.

?

Туториал был полезен?

  1. Да

  2. Нет

  3. Мне пофиг

Результаты будут видны только после голосования.
  1. Автор темы
    Sparksys

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

    Баллы:
    76
    На просторах нашего интернета обнаружил мод под названием CustomMainMenu, данный мод поваляет изменять главное меню игры простым изменением файла конфигурации. Дак вот как и на RuBukkit, так и на просторах интернета очень мало туториалов на этот мод (В основном на не русском) и я решил разобрать этот мод и рассказать о нем, а именно рассказать как изменять главное меню с помощью данного мода.

    Ну что же. Приступим.
    Немного остановимся на том, что после установки мода в игре возле кнопки выбора языка появится кнопка обновить. То есть после изменения конфигурации, не нужно перезагружать игру, а достаточно нажать на эту кнопочку.

    Для начала, установка. Установка у мода обычная как и у всех других. Для работы мода требуется FORGE. А сам мод нужно положить в папку mods.

    Ну а теперь настройка. После установки мода в папке "config" появится папка "CustomMainMenu" в котором вы найдете файл "mainmenu.json".

    Код:
    {
        "images":
        {
            "title":
            {
                "image" : "custommainmenu:textures/gui/minecraft.png",
                "posX" : -137,
                "posY" : 30,
                "width" : 512,
                "height" : 512,
                "alignment" : "top_center"
            }
        },
    
        "buttons":
        {
            "singleplayer":
            {
                "text" : "menu.singleplayer",
                "posX" : -100,
                "posY" : 48,
                "width" : 200,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "singleplayer"
                }
            },
    
            "multiplayer":
            {
                "text" : "menu.multiplayer",
                "posX" : -100,
                "posY" : 72,
                "width" : 200,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "multiplayer"
                }
            },
    
            "mods":
            {
                "text" : "Mods",
                "posX" : -100,
                "posY" : 96,
                "width" : 200,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "mods"
                }
            },
        
            "options":
            {
                "text" : "menu.options",
                "posX" : -100,
                "posY" : 132,
                "width" : 98,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "options"
                }
            },
    
            "quit":
            {
                "text" : "menu.quit",
                "posX" : 2,
                "posY" : 132,
                "width" : 98,
                "height" : 20,
                "action" :
                {
                    "type" : "quit"
                }
            },
    
            "language":
            {
                "text" : "",
                "posX" : -124,
                "posY" : 132,
                "width" : 20,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "languages"
                }
            },
    
            "refresh":
            {
                "text" : "",
                "posX" : -154,
                "posY" : 132,
                "width" : 20,
                "height" : 20,
                "texture" : "custommainmenu:textures/gui/buttons.png",
                "action" :
                {
                    "type" : "refresh"
                }
            }
        },
    
        "texts":
        {
            "mojang":
            {
                "text" : "Copyright Mojang AB. Do not distribute!",
                "posX" : -197,
                "posY" : -10,
                "color" : -1,
                "alignment" : "bottom_right"
            },
    
            "fml":
            {
                "text" : "",
                "posX" : 2,
                "posY" : -50,
                "color" : -1,
                "alignment" : "bottom_left"
            }
        },
    
        "other":
        {
            "splash-text":
            {
                "posX" : 90,
                "posY" : 70,
                "color" : -256,
                "alignment" : "top_center",
                "file" : "texts/splashes.txt"
            },
    
            "panorama":
            {
                "images" : "minecraft:textures/gui/title/background/panorama_%c.png",
                "animate" : true,
                "animationSpeed" : 1,
                "blur" : true,
                "gradient" : true
            }
        }
    }
    
    В этом файле есть 4 группы, в каждой из которых есть свои параметры, которые я сейчас перечислю и разберу.
    1. Группа "image", где вы можете размещать изображения. Тут уже есть блок "title" который содержит изображение логотипа Minecraft. Сразу говорю блоки во всех группах могут иметь абсолютно любое уникальное название (Желательно на англ. языке (Еще есть и фиксированные названия)) и если я переменю блок "title" в "titles", то ничего не изменится. Блоки принимают следующие параметры:
    • image - Содержит путь до картинки. Например "custommainmenu:textures/gui/minecraft.png", где "custommainmenu" это идентификатор мода, а "textures/gui/minecraft.png", это сам путь до файла изображения.
    • poxX и PosY - Это координаты расположения картинки.
    • height и width - Соответственно высота и ширина картинки.
    • alignment - Выравнивание картинки на экране.
    • hoverImage - Так же как и с "image" содержит путь до картинки, но не изменяет картинку пока не наведешь курсор на картинку.
    2. Группа "Button", где можно изменить вид, размер, поведение кнопки, а так же добавить свои. Группа уже содержит блоки которые добавляют в ваше меню уже привычные кнопки (Одиночная игра, мультиплеер, настройки и тд.) которые вы можете изменить или вовсе удалить. Блоки принимают следующие параметры:
    • text - Содержит ваш текст который будет в следствие написан на кнопке.
    • normalTextColor - цвет текста.
    • hoverTextColor - цвет текста при наведении курсора.
    • wrappedButton - цвет текста при нажатии на кнопку.
    • shadow - Тень текста.
    • imageWidth и imageHeight - Ширина и высота изображения.

    • tooltip - Содержит текст описание кнопки и выводится при наведение на неё.
    • hoverText - Содержит текст который будет вставятся в кнопку при наведение на неё.
    • pressSound - Воспроизводит указанный звук при нажатие на кнопку.
    • hoverSound - На сколько я понял воспроизводит мелодию при наведение.
    • action - Изменяет поведение кнопки. Тут уже есть небольшая под настройка.
      • type - Указывает тип поведение, а второй параметр зависит от того что указанно в этом.
        • openLink - Открывает определенный веб сайт, который указан в параметре "link".
        • loadWorld - Открывает карту одиночной игры, имя папки которой указывается в "dirName", а название сохранения в "saveName".
        • connectToServer - Заходит на сервер IP и ПОРТ которого указаны в "ip".
        • openGui - Открывает указанный GUI интерфейс (Настроки, список серверов и тд.) адреса которых указываются в "gui". Сами же адреса (все которые известны) видны в исходном фале конфигурации.
        • quit - Выход из игры.
        • refresh - Обновить меню.
    • poxX и PosY - Это координаты расположения кнопки.
    • height и width - Соответственно высота и ширина кнопки.
    • alignment - Выравнивание кнопки на экране.

    3. Группа "texts", которая выводит на экран различного рода текстовую информацию. Группа уже содержит 2 блока, один из которых информация о модах из forge, а другой копирайт Mojang, которые так же можно менять или удалять. Блоки принимают следующие параметры:
    • text - Сам текст который будет выводится.
    • color и hoverColor - Точно так же точно неизвестно для чего.
    • action - Изменяет поведение текста при нажатие на него. Тут уже есть небольшая под настройка.
      • type - Указывает тип поведение, а второй параметр зависит от того что указанно в этом.
        • openLink - Открывает определенный веб сайт, который указан в параметре "link".
        • loadWorld - Открывает карту одиночной игры, имя папки которой указывается в "dirName", а название сохранения в "saveName".
        • connectToServer - Заходит на сервер IP и ПОРТ которого указаны в "ip".
        • openGui - Открывает указанный GUI интерфейс (Настроки, список серверов и тд.) адреса которых указываются в "gui". Сами же адреса (все которые известны) видны в исходном фале конфигурации.
        • quit - Выход из игры.
        • refresh - Обновить меню.
    • hoverText - Текст на который будет заменятся при наведение.
    • alignment - Выравнивание текста на экране.
    • poxX и PosY - Это координаты расположения текста.
    4. Ну и последняя группа. Группа "other", в ней расположены все другие элементы. В этой группе я так думаю расположены уже фиксированные элементы панорамы и текста над логотипом.
    • Слеш текст "splash-text".
      • poxX и PosY - Это координаты расположения кнопки.
      • alignment - Выравнивание текста на экране.
      • file - Путь до текстового файла с фразами который находится в minecraft.jar
    • Панорама "panorama".
      • images - Путь до картинок. Например "minecraft:textures/gui/title/background/panorama_%c.png", где %c обозначает порядковый номер картинки. Больше сказать не могу.
      • animate - Включить анимацию (true) или выключить (false).
      • animationSpeed - Скорость анимации.
    Ну вот. На этом кажется все. Надеюсь понятно все объяснил.

    Сам мод можно качнуть тут: [1.7.10] - [1.8.*]

    Ах да, чуть не забыл. Идентификатор мода - это название папки которая находится в jar или zip файле мода в папке assets.

    Жду комментариев и дополнений.
     
    Последнее редактирование: 15 апр 2016
  2. Хостинг MineCraft
    <
  3. KsuKsu

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

    Баллы:
    66
    normalTextColor - цвет текста
    hoverTextColor - цвет текста при наведении курсора
    wrappedButton - цвет текста при нажатии на кнопку, вродь
    shadow - ну тень как бы

    Последние два, судя по названию, должны быть ширина и высота изображения.

    А что делать, если такой артефакт вылезает? Картинки в текстурпаке лежат и он выбран. Кнопки не жмутся....
    [​IMG]
     
  4. Автор темы
    Sparksys

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

    Баллы:
    76
    Спасибо за помощь с некоторыми обозначениями. Добавил в тутариал.[DOUBLEPOST=1460679970,1460679920][/DOUBLEPOST]
    Саму текстуру и файл конфигурации мне =).
     
  5. KsuKsu

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

    Баллы:
    66
  6. Автор темы
    Sparksys

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

    Баллы:
    76
    Эмм кстати я с текстурами не проверял. Я проверял только картинки которые лежат в файле мода или в minecraft.jar, они отлично выходят.
     
  7. KsuKsu

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

    Баллы:
    66
    Скинь рабочий пример конфига со стандартными картинками, пожалуйста.
     
  8. Elivion

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

    Баллы:
    61
    Имя в Minecraft:
    Elivion_ST
    Такая же фигня...как ее решить?
     
  9. CamedoZ

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

    Баллы:
    61
    Имя в Minecraft:
    CamedoZ
    Код:
    {
        "images":
        {
            "title":
            {
                "image" : "custommainmenu:textures/gui/minecraft.png",
                "posX" : -137,
                "posY" : 30,
                "width" : 512,
                "height" : 512,
                "alignment" : "top_center"
            }
        },
       
        "buttons":
        {
            "multiplayer":
            {
                "text" : "menu.multiplayer",
                "posX" : -85,
                "posY" : 48,
                "width" : 150,
                "height" : 20,
                "action" :
                {
                    "type" : "connectToServer",
                    "ip" : "178.206.92.194"
                }
            },
            "options":
            {
                "text" : "menu.options",
                "posX" : -85,
                "posY" : 82,
                "width" : 128,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "options"
                }
            },
           
            "quit":
            {
                "text" : "menu.quit",
                "posX" : -85,
                "posY" : 106,
                "width" : 150,
                "height" : 20,
                "action" :
                {
                    "type" : "quit"
                }
            },
           
           
            "language":
            {
                "text" : "",
                "posX" : 45,
                "posY" : 82,
                "width" : 20,
                "height" : 20,
                "action" :
                {
                    "type" : "openGui",
                    "gui" : "languages"
                }
            }
        },
       
        "texts":
        {
        },
       
        "other":
        {
            "panorama":
            {
                "images" : "minecraft:textures/gui/title/background/panorama_%c.png",
                "animate" : true,
                "animationSpeed" : 1,
                "blur" : true,
                "gradient" : false
            }
        }
    }
    
     
  10. sprey

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

    Баллы:
    68
    Имя в Minecraft:
    NoVa41
    Давно использую этот мод, очень полезный, не нужно юзать MCP :eek:
    1111.png
     
  11. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    :good:
     
  12. CamedoZ

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

    Баллы:
    61
    Имя в Minecraft:
    CamedoZ
    Как сделать в зади фон а не понараму ?[DOUBLEPOST=1467464623,1464554362][/DOUBLEPOST]
    Как сделать фон а не понапраму ?
     
  13. SkillDie

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

    Баллы:
    76
    Skype:
    speedfor34
    Имя в Minecraft:
    BlackGamer99
    Код:
    "other":
        {
            "background":
            {
                "image" : "minecraft:textures/gui/title/background/bg.png",
                "mode" : "fill"
            }
        }
     
  14. PlaledGames

    PlaledGames Участник

    Баллы:
    31
    Имя в Minecraft:
    _PlaledGames_
    Как исправить ошибку? 2016-08-11_18.05.56.png ( Я пытался сделать кнопки, в которых по нажатию, одна переносила на сервер, другая на сайт ) Если есть 2 кода(при нажатии переносит на сайт/сервер),дайте их мне плиз.
     
  15. SkillDie

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

    Баллы:
    76
    Skype:
    speedfor34
    Имя в Minecraft:
    BlackGamer99
    Есть, сейчас дам[DOUBLEPOST=1471010657,1471010551][/DOUBLEPOST]
    Код:
            "local":
            {
                "text" : "Зайти на сервер",
                "posX" : 2,
                "posY" : 72,
                "width" : 98,
                "height" : 20,
                "action" : 
                {
                    "type" : "connectToServer",
                    "ip" : "localhost:25565"
                }
            },
           
            "site":
            {
                "text" : "Наш сайт",
                "posX" : -100,
                "posY" : 96,
                "width" : 98,
                "height" : 20,
                "action" : 
                {
                    "type" : "openLink",
                    "link" : "http://вашсайт.ру"
                }
            },
    
     
  16. Автор темы
    Sparksys

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

    Баллы:
    76
    Эта ошибка вылезает при том случае, если не верно составлен файл настройки. Учтите это.
     
  17. PlaledGames

    PlaledGames Участник

    Баллы:
    31
    Имя в Minecraft:
    _PlaledGames_
    Код выдаёт ошибку.
     
  18. SkillDie

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

    Баллы:
    76
    Skype:
    speedfor34
    Имя в Minecraft:
    BlackGamer99
    Скринщот предоставьте, у меня все нормально работает без ошибок[DOUBLEPOST=1471208203,1471208032][/DOUBLEPOST]
    И вообще фон находиться на таком пути: minecraft.jar!/assets/minecraft/textures/gui/title/background/ и сюда кинуть ваш фон и называйте как хотите но в конфиге указать "image" : "minecraft:textures/gui/title/background/Ваше название.png",
     
  19. Baton2000

    Baton2000 Новичок Пользователь

    Баллы:
    16
    Имя в Minecraft:
    Maximen2000
    Ребят,а почему выходят иероглифы если ввести свой текст на русском?
     
  20. Автор темы
    Sparksys

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

    Баллы:
    76
    Поправь кодировку на "ANSI" и пиши под ней. Тут не подходит кодировка "UTF-8" или "UTF-8 без BOM".
     
    Последнее редактирование: 20 авг 2016
  21. Baton2000

    Baton2000 Новичок Пользователь

    Баллы:
    16
    Имя в Minecraft:
    Maximen2000
    Ага,спасибо.
     

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