一个自定义颜色表可以包含任何一张png文件,或属性文件,或两者兼而有之,这取决于你想要做什么.
所有属性都是可选的,并且实际上属性文件都可以省略,如果你不需要改变他们的任何地方.
(可选) 颜色表格式:
- format=<vanilla | grid | fixed>
复制代码
如果省略,则默认使用vanilla格式.
如果你想默认使用grid格式,你需要在assets/minecraft/mcpatcher/color.properties文件中设置全局格式:
请注意这个设置不会影响到在assets/minecraft/textures/colormap文件夹中的原版grass.png和foliage.png文件.
查看下方的"草地和树叶"章节来了解如何使用网格格式用于这些材质.
(可选) 方块及元数据值的列表:
对于用于地形(而非用于迷雾,天空,和水体)的颜色表,这将设置方块与可选元数据的列表,自定义颜色表被将应用到列表.
样本参考:
- # 等价于原版的grass.png
- blocks=grass tallgrass:1,2 reeds
- # 与上面一样,但不应用到甘蔗
- blocks=grass tallgrass:1,2
- # 等价于原版的foliage.png
- blocks=leaves:0,4,8,12 vine
- # 松树/云杉树叶
- blocks=leaves:1,5,9,13
- # 白桦树叶
- blocks=leaves:2,6,10,14
- # 丛林树叶
- blocks=leaves:3,7,11,15
- # 金合欢树叶
- blocks=leaves2:0,4,8,12
- # 深色橡树叶
- blocks=leaves2:1,5,9,13
- # 水面
- blocks=water flowing_water
复制代码
(可选) 颜色表图像:
仅用于vanilla和grid颜色表. 颜色表的路径.
(可选) 默认颜色:
对于format=fixed,这是简单的将一个固定的颜色应用到所有被匹配的方块.
如果没有赋值,则默认为白色(ffffff).(也就是颜色没有变化,这是正片叠底的算法)
对于format=vanilla或grid,这是一种用于手持方块/掉落方块/背包内方块的默认颜色.
如果没有赋值,要从一个固定位置采集默认颜色取决于方法的格式:
- format=vanilla: x=127,y=127 (位图的中心)
- format=grid: x=1,y=64 (处于海平面层数的草原生物群落)
复制代码
如何应用一个自定义颜色表:
自定义颜色表可以应用到任何一种方块或一组方块,或仅包含某些特定元数据值的方块类型.
它们也可以应用到环境颜色,如迷雾,天空,和水体.
对于基于方块的颜色表可以通过以下两种方式之一应用之: 作为在assets/minecraft/mcpatcher/color.properties中的列表,或作为assets/minecraft/mcpatcher/colormap/blocks下的单独的属性文件.
对于第一种方法,使用如下语法:
- palette.block.<颜色表图像>=<方块+可选元数据的列表>
复制代码
例如,这将为四种基本类型的树叶分配自己的颜色表:
- palette.block.~/colormap/oak.png=leaves:0,4,8,12
- palette.block.~/colormap/pine.png=leaves:1,5,9,13
- palette.block.~/colormap/birch.png=leaves:2,6,10,14
- palette.block.~/colormap/jungle.png=leaves:3,7,11,15
复制代码
这个方法有两个限制: 实际上,只有source和blocks属性可以被设置; 其他均为默认.
其次,如果玩家使用多个资源包,只有最上层的color.properties文件将被游戏读取.
另一种方法是使用位于assets/minecraft/mcpatcher/colormap/blocks下的单独属性文件.
子文件夹是允许的,这可以让你更容易地分类.
上面的例子也可以使用这个方法:
- assets/minecraft/mcpatcher/colormap/blocks/oak.properties:
- blocks=leaves:0,4,8,12
- assets/minecraft/mcpatcher/colormap/blocks/pine.properties:
- blocks=leaves:1,5,9,13
- assets/minecraft/mcpatcher/colormap/blocks/birch.properties:
- blocks=leaves:2,6,10,14
- assets/minecraft/mcpatcher/colormap/blocks/jungle.properties:
- blocks=leaves:3,7,11,15
复制代码
上面假设你有oak.png,pine.png,birch.png,和jungle.png并且在相同的目录.
单个方块
最简单的情况下,一个自定义颜色表应用到单个没有元数据值的方块,不需要属性文件.
例如,assets/minecraft/mcpatcher/colormap/blocks/sand.png将应用到沙子方块,而无需指定blocks=sand属性.
多种方块
采用相同的颜色表应用到所有石头方块和矿石方块,使用类似的属性文件:
assets/minecraft/mcpatcher/colormap/blocks/stone_and_ore.properties:
blocks=stone gold_ore iron_ore coal_ore lapis_ore diamond_ore redstone_ore lit_redstone_ore monster_egg:0 emerald_ore
如果你的颜色表图像为grid格式则添加format=grid属性.
如果颜色表也被命名stone_and_ore.png,则无需source属性.
在color.properties中可以这样写:
- palette.block.~/colormap/custom/stone.png=stone gold_ore iron_ore coal_ore lapis_ore diamond_ore redstone_ore lit_redstone_ore monster_egg:0 emerald_ore
复制代码
添加palette.format=grid属性将为所有颜色表使用grid格式的读取方式(原版的grass和foliage.png除外).
草地和树叶:
自定义颜色表将取代原版的grass.png和foliage.png.
创建一个自定义颜色表属性文件:
assets/minecraft/mcpatcher/colormap/blocks/grass.properties:
- format=grid
- # 注: blocks=grass属性是没有必要的,因为属性文件的文件名已经包含了
- yVariance=2
复制代码
assets/minecraft/mcpatcher/colormap/blocks/oak.properties:
- format=grid
- blocks=leaves:0,4,8,12
复制代码
在1.7中固定甘蔗的颜色:
从1.7开始,Minecraft将grass.png的颜色应用到甘蔗.
一个ffffff(白色)的固定颜色表将有效地将其恢复到1.6的行为.
一个256x256的全白的颜色表可以做到同样的事,但下面的方法更有效率.
做到这一点最简单的方法是创建一个只包含一行的属性文件:
assets/minecraft/mcpatcher/colormap/blocks/reeds.properties:
这样的属性文件可以工作是因为blocks属性默认为文件名(reeds)并且color属性默认为固定的颜色表ffffff.
环境颜色(迷雾,天空,和水体的颜色):
这些特殊命名的颜色表将覆盖默认的固定环境颜色:
- Overworld fog: assets/minecraft/mcpatcher/colormap/fog0.png
- Overworld sky: assets/minecraft/mcpatcher/colormap/sky0.png
- Underwater: assets/minecraft/mcpatcher/colormap/underwater.png
每一个都可以有一个相应的属性文件来指定格式或其他设置.
这些色彩表的行为就如同基于地形,那些不同之处在于,他们不关心blocks属性. |