欢迎光临散文网 会员登陆 & 注册

[澪Ultimate]如何使用自定义主菜单 (Custom Main Menu)上

2022-02-21 17:03 作者:今朝有酒今朝醉仄  | 我要投稿

首先:到百科里去下的对应的版本[自定义主菜单 (Custom Main Menu)]推荐搭配Resource Loader使用。

①主页:自定义主菜单是一个MOD,允许你使用json文件编辑minecraft主菜单。它允许你添加或删除元素,如按钮和标签,也增加了一些新的东西,你可以添加到你的菜单,如幻灯片或整个自定义gui。然而,如果你只是想做一些简单的事情,如添加或更改一些文本,你甚至不必进入这一切,MOD附带一个原版的json文件。

写代码的位置:《点击:config》如图所示!

《点击:config》

《然后点击:CustomMainMenu》如图片所示!

《然后点击:CustomMainMenu》

《然后再点击:mainmenu.json》如图所示!

《然后再点击:mainmenu.json》

注意点的是,首先把自定义主界面mod加上,然后进游戏。再然后退出游戏。才会,出我这样的文件夹!

《己写好的效果》

②对齐

什么是对齐方式?

一个元素的对齐方式指定了它在菜单屏幕上的相对位置。为了方便起见,定义了几个对齐方式的预设,不过如果需要的话,你也可以创建一个自定义的对齐方式。

预设排列方式:

1"bottom_left", "bottom_right", "top_left", 

2"top_right", "center", "top_center", 

3"left_center", "bottom_center", "right_center"

4"左下"、"右下"、"左上"、

5"右上"、"中心"、"上中"、

6"左中"、"下中"、"右中" 

③按钮

按钮在被按下时执行动作。它们可以打开gui(也可以是自定义的gui),例如连接到一个服务器,打开一个链接或加载一个特定的世界。 

可选属性:

posX:按钮的X坐标

posY:按钮的Y坐标 

width:按钮的宽度

height:按钮的高度。

imageWidth:按钮在图像中的宽度(默认为高度)。 

imageHeight:按钮在图像中的高度(默认为宽度)。

texture : (可选)一个资源位置,它将被用作这个按钮的自定义纹理。该图像必须包含一个正常的和一个悬停版本的按钮。这是一个200x20按钮的例子。

text : 按钮上显示的文本(一个语言键(即lang中的条目)或只是普通文本)

hoverText : 当用户悬停在按钮上时显示的文本(一个语言键或只是普通文本)。

normalTextColor : (可选)一个rgb颜色的整数,用于显示按钮的正常文本颜色。 

hoverTextColor : (可选)一个rgb颜色的整数,用于显示鼠标在按钮上方时的文本颜色。 

pressSound : (可选)一个资源位置,指向该按钮在被按下时发出的声音

hoverSound : (可选) 指向该按钮在悬停时发出的声音的资源位置

tooltip : (可选)当用户悬停在此按钮上时,将显示的工具提示文本。

action : (可选) 当按钮被点击时将做什么,更多信息见Actions。 

wrappedButton :(可选) 按钮ID,更多信息请参考Wrapped Buttons。

alignment : (可选) 参见对齐方式的信息

textOffsetX/Y(可选)。按钮的文字将被偏移这个数量。

④按钮动作:

当用户点击一个按钮或一个文本时,就会执行动作。有各种不同的,可以简单地打开GUI,连接到服务器,或加载一个世界。

它的格式如下:

  1"action": {

    2"type": "类型",

    3"属性": "值"

    4}

属性:

type:动作的类型,有效值是:

openLink, openGui, quit, refresh, connectToServer, loadWorld, openFolder

其余的动作属性由动作的类型决定。

openLink:

-link:要打开的链接

openGui:

-gui:应该打开的GUI(界面)。这可以是一个自定义的GUI例如(custom.CUSTOM_GUI_NAME),也可以是一个原版的gui如

(mainmenu, mods, singleplayer, singleplayer.createworld, multiplayer, credits, languages, realms, options, options.ressourcepacks, options.skinsettings, options.snooper, options.sounds, options.video, options.controls, options.manyplayer)

connectToServer:

-ip:要连接的服务器的IP

loadWorld:

-dirName: 保存的目录名称(在saves文件夹中)。

-saveName: 并非真正必要,在加载世界时可能会在某些对话框中出现保存的名称。

openFolder:

-folderName:然后是应该被打开的文件夹的名字。(使用.minecraft文件夹作为根文件夹)

quit和refresh不需要任何额外的属性。

其他mod按钮:

自定义主菜单默认删除了所有由其他mods(Open Eye、Version Checker、Tabula)添加的按钮,因为无法像原版按钮那样控制它们。

使用包裹的按钮,你可以创建模仿其功能的按钮。为了让它们发挥作用,你需要找出你想重新添加的按钮的ID,查看你最新的fml客户端日志并搜索 "wrapped button",所有被移除的mod按钮都被记录了它们各自的按钮ID。

⑤文本:

一般来说,所有在gui上可见的文本(标签、按钮、闪光文本)都可以用3种不同的方式定义。

 1.从一个资源中加载

"splash-text": { "posX": 90, "posY": 70, "color": -256, "alignment": "top_center", "text": "file:minecraft:text/splashes.txt" }

file: 后面是文本应该被加载的文件的资源位置。 

2.从一个URL中加载(web: 后面是文本应该被加载的URL)

"changelog": { "text": "web:http://pastebin.com/raw.php?i=MmSCr6zV", "posX": 2, "posY": 0, "color": -1, "alignment": "left_center" }

⑥静态文本:

 "mojang": { "text": "Copyright Mojang AB. 请勿分发!", "posX": -197, "posY": -10, "color": -1, "alignment": "bottom_right" }

如果你想为你所使用的文本类型指定额外的属性(比如网络文本的刷新时间间隔文本的刷新间隔是以刻度为单位的,必须>=60(3秒)。

"label": { "text": { "type": "web", "url

变量:

#date# :当地日期 

#time# :当地时间 

#mcversion# :我的世界版本 

#fmlversion# :FML版本 

#mcpversion# :我的世界 Coder Pack 版本 

#modsloaded# :加载的mod数量 

#modsactive# :mod数量 

#forgeversion# :Forge版本 

#username# :玩家名称 

标签

可以显示各种文字的标签。

属性:

posX:标签的X坐标

posY:标签的Y坐标

color:文本颜色的rgb整数(颜色代码覆盖这个)。

hoverColor:(可选)一个rgb整数,当用户将鼠标悬停在文本上时,该文本的颜色(颜色代码覆盖此)。

text: 应该显示的文本(可以包含颜色代码)。

hoverText:用户在其上悬停时的文本(可以包含颜色代码

anchor:(可选)可以是 "开始"(默认)、"中间 "或 "结束"。使得文本向左、向中或向右对齐。

action: (可选)当用户点击标签时,将执行什么动作?

alignment(对齐):(可选)参见对齐方式的信息

fontSize(字体大小):(可选)文本的大小,1是默认的,2是2倍的大小。

pressSound: (可选)一个资源位置,指向该文本在按下时发出的声音

hoverSound: (可选)指向该文本在悬停时发出的声音的资源位置。

⑦图片

它们可以是来自本地文件夹或来自网络。 

属性:

posX : 图像的X坐标 

posY:图像的Y坐标 

width:图像的宽度 

height:图像的高度 

image:实际图像的资源位置 

hoverImage : 当用户悬停在图像上时,该图像的资源位置 

alignment : (可选)参见对齐方式的信息 

slideshow:(可选),见Slideshow 

重要提示

要使用本地图片,你需要使用Resource Loader mod!

ps:其实使用压缩包打开modassets\custommainmenu\textures\gui\放这里就可以

ps:如果你要修改字为中文或者使用§,你必须要将编码转为ANSI,否则会乱码。

⑧动态图片:

{

"other":{

    "background":{

            "image" : "",

            "slideshow":{

                "images" : ["mainmenu:001.png","mainmenu:002.png","mainmenu:003.png"],

                "displayDuration" : 100,

                "fadeDuration" : 40

            }

        }

    }

}

image:此时为空,但是不可略去不写。

slideshow:添加循环的图片背景。

images:添加循环的图片地址。

displayDuration:图片停留时间,单位为tick。

fadeDuration:转换图片时间,单位为tick。

推荐一个好用的,制作minecraft样式文字图标的网站:textcraft。

  推荐两个使用的颜色代码网站:

Color Hex Color Codes:能够查询颜色的RGB码等诸多信息。

Calculate RGB Int:可以将RGB码专为10进制。

本期教程就到这里。下期教程,敬请期待。

记得三连点赞!

你学会了吗?








[澪Ultimate]如何使用自定义主菜单 (Custom Main Menu)上的评论 (共 条)

分享到微博请遵守国家法律