外观
线路数据
在完成了基础信息的编写之后,就可以开始创建自定义线路信息了
首先需要创建文件lines.xml
然后参考以下标准格式示范:
xml
<?xml version="1.0" encoding="UTF-8"?>
<lines>
<line>
<code>A2</code>
<name>
<zh-Hans>末地铁路</zh-Hans>
<zh-Hant>末地鐵路</zh-Hant>
<en>End Railway</en>
</name>
<colour>!rail</colour>
<route>-691,84,2552;-687,84,2552;-686,85,2552;-683,85,2552;-682,86,2552;-679,86,2552;-678,87,2552;-675,87,2552;-674,88,2552;-671,88,2552;-670,89,2552;-667,89,2552;-666,90.2552;-663,90,2552;-662,91,2552;-659,91,2552;-658,92,2552;-655,92,2552;-654,93,2552;-651,93,2552;-650,94,2552;-647,94,2552;-646,95,2552;-643,95,2552;-642,96,2552;-639,96,2552;-638,97,2552;-500,97,2552;-500,97,2556;-502,97,2556;-506,101,2556;-508,101,2556;-508,101,2552;-506,101,2552;-502,105,2552;-500,105,2552;-500,105,2556;-502,105,2556;-506,109,2556;-508,109,2556;-508,109,2552;-378,109,2552;-374,113,2552;-366,113,2552;-358,121,2552;-12,121,2552;-12,121,2548;-6,121,2548</route>
</line>
</lines>其中每个<line>标签代表一条线路的数据
<code>
全版本必填项
指定该线路在线网内的唯一确定ID
ID需为由大小写英文字母A-Z a-z或数字1-9组成的文本
不限制组合方式、文本长度、文本格式,因此下列ID都是可以被正确读取的
- 123
- A00123
- ABCabc
- A123b
- 001AbC
不过,为了方便识别编辑等,建议使用较短、易读且格式统一的ID格式
另外,这将在后续的stations.xml中被使用到
例
xml
<code>A2</code><name>
全版本必填项
指定线路的文字名称
名称可以是任何文本,但建议与语言相匹配,并不使用特殊字符
在此标签中包含三个包含实际数据的语言标签,分别是
<zh-Hans>(表示简体中文)<zh-Hant>(表示繁体中文)<en>(表示英语)
若有语言不需要或未翻译,请替换数据为其他语言的文本,必须保留标签
例
xml
<name>
<zh-Hans>末地铁路</zh-Hans>
<zh-Hant>End Railway</zh-Hant>
<!--若繁体中文没有翻译,其数据可以替换为其他语言-->
<en>End Railway</en>
</name><colour>
全版本必填项
注意不是color
指定线路的颜色或样式
数据必须是以下类型中的一个
#FFFFFF表示使用16进制颜色代码的纯色样式!rail表示使用铁路样式(黑白相间的线条)!subrail表示使用市域铁路样式(带灰色描边的白色线条)
例
xml
<colour>!rail</colour><route>
全版本必填项
指定该线路在游戏中的路径走向
该空必须由两个及以上Minecraft坐标拼接而成
每个坐标必须包含x y z三轴的整数坐标,用英文逗号,连接。坐标与坐标间的数据用英文分号;链接
请勿在数据中间任何地方插入额外的空格,这可能会导致解析错误
结尾不加任何符号
坐标格式如下
text
x1,y1,z1;x2,y2,z2;x3,y3,z3......(以此类推)该信息将会用于位置判断和地图绘制,而模组会自动直接用线段连接两点
因此,想要让模组能正确判断和绘制,则需要用多个坐标描述,模组会自动把它们按顺序连接起来成为一条折线
利用折线记录路径走向
折线是由一系列依次相连的线段组成的图形
这些线段的连接点称为顶点,最两端的点称为端点
本文中提到的折线包含首尾相连形成的多边形,即地铁中的环线,但不会以此作为普遍例子本文仅适用于原版矿车,不一定可以与例如MTR等模组搭配
一整条线路可以被分成一条或多条的线段,首尾按顺序相连,形成一条折线,因此需记录折线的每个顶点
按顺序从端点开始,然后一个接一个按上文的方法来组成完整的数据,但需要注意以下几点:
- 一般的,在水平面上的相邻的顶点数据需要
xz中有且仅有一个是相同的,除非需要表达不在正方向上的斜线 - 相邻数据中不能出现仅有
y是变化的情况,即至少需要xz有一个是变化的y才能够变化
通常来说此类数据代表一个斜坡的起终点,因此xz的变化量一般和y的变化量是相等的(在斜坡角度为45°的普遍情况下) - 不能出现两个相邻且坐标相同的数据
- 环线的首尾两个顶点数据需为同一个坐标
例
text
0,0,0;0,0,0;0,0,100......
^^^^^^^^^^^
两个相邻数据相同
0,0,0;0,0,100;100,0,100;100,0,0;0,0,0
正确的完整环线数据,首尾两个数据是相同的
0,0,0;0,100,0;0,100,100......
^^^^^^^^^^^^^
y变化了,而x与z都没有变化完整示例
xml
<route>-691,84,2552;-687,84,2552;-686,85,2552;-683,85,2552;-682,86,2552;-679,86,2552;-678,87,2552</route>
<!--此处已将数据缩短,实际可能更长-->