//Property
|  (Created page with "'''第四行''': ''要设置的属性的值''") |  (Updating to match new version of source page) | ||
| (61 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
| <languages/> | <languages/> | ||
| == 介绍 == | == 介绍 == | ||
| ''' | '''属性牌'''可以执行与指令相同的任务,但比指令更强,能够实现全自动化。属性牌需要红石激活才能运行,并且会忽略矿车的所有权,因此如果你只想定位某个你拥有的矿车,请与转辙器的检测矿车拥有者的功能相结合来使用。 | ||
| Line 13: | Line 10: | ||
| ''' | '''第二行:'''''property'' | ||
| ''' | '''第三行:'''''要更改的属性名称。'' | ||
| ''' | '''第四行:'''''要设置的属性的值。'' | ||
| === 布尔语句 === | |||
| [[File:Tc_property_statement.png|thumb|300px|属性 'playerenterexit'(玩家进出)由拉杆控制。]] | |||
| [[File:Tc_property_statement.png|thumb|300px| | 布尔属性(如玩家进入和列车减速)可以使用[[Special:MyLanguage/TrainCarts/Signs/Statements|语句]]来判定 true 还是 false。这使得使用红石或基于列车的其他属性来打开或关闭某些功能时变得更加容易。 | ||
| === 远程控制 === | |||
| ===  | |||
| 你可以[[Special:MyLanguage/TrainCarts/Signs#远程控制|远程设置]]列车属性。假设你的列车名为'''train01''',那么控制牌上应该这样写: | |||
| [[Special:MyLanguage/TrainCarts/Signs# | |||
| {{sign|[train train01]|property|maxspeed|0.4}} | {{sign|[train train01]|property|maxspeed|0.4}} | ||
| == 属性 == | |||
| = | |||
| 可以使用 '''[cart] 和 [train]''' 设置以下属性: | |||
| {| class="wikitable" | {| class="wikitable" | ||
| |- | |- | ||
| !  | ! 属性 | ||
| !  | ! 示例值  | ||
| !  | ! 释义 | ||
| |- | |- | ||
| | addtag | | addtag | ||
| | tag1 | | tag1 | ||
| |  | | 添加一个标签。 | ||
| |- | |- | ||
| | settag | | settag | ||
| | taga | | taga | ||
| |  | | 设置一个标签。 | ||
| |- | |- | ||
| | remtag | | remtag | ||
| | a | | a | ||
| |  | | 移除一个标签。 | ||
| |- | |||
| | addticket | |||
| | expresstrain | |||
| | 为列车创建一个车票。 | |||
| |- | |||
| | setticket | |||
| | expresstrain | |||
| | 为列车设置只允许的车票。 | |||
| |- | |||
| | remticket | |||
| | expresstrain | |||
| | 为列车移除一个车票。 | |||
| |- | |- | ||
| | addowner | | addowner | ||
| | Maxxue | | Maxxue | ||
| |  | | 为列车添加一个车主。 | ||
| |- | |- | ||
| | setowner | | setowner | ||
| | Maxxue | | Maxxue | ||
| |  | | 清除所有的车主并设置车主为设置的玩家。 | ||
| |- | |- | ||
| | remowner | | remowner | ||
| | Maxxue | | Maxxue | ||
| |  | | 为列车移除一个车主。 | ||
| |- | |- | ||
| | destination | | destination | ||
| | station2 | | station2 | ||
| |  | | 设置目的地。 | ||
| |- | |- | ||
| | mobenter | | mobenter | ||
| | false | | false | ||
| |  | | 设置是否允许生物进入。 | ||
| |- | |- | ||
| | playerenter | | playerenter | ||
| | true | | true | ||
| |  | | 设置是否允许玩家进入。 | ||
| |- | |- | ||
| | playerexit | | playerexit | ||
| | yes | | yes | ||
| |  | | 设置是否允许玩家离开。 | ||
| |- | |- | ||
| | playerenterexit<br>playerexitenter | | playerenterexit<br>playerexitenter | ||
| | yes | | yes | ||
| |  | | 同时设置是否允许玩家进入和玩家离开。 | ||
| |- | |- | ||
| | spawnitemdrops<br>spawndrops<br>killdrops | | spawnitemdrops<br>spawndrops<br>killdrops | ||
| | true | | true | ||
| |  | | 设置矿车被销毁时是否掉落物品。<br>当设置为 false 时,运输矿车或漏斗矿车里储存的物品也不会掉落。 | ||
| |- | |||
| | viewdistance | |||
| | 10 | |||
| | (只支持 Paper 端!)设置矿车/列车上的乘客有一定的区块/实体视野距离。可用来为世界减少高占用区块的卡顿。 | |||
| |} | |} | ||
| 只能使用 '''[train]''' 设置以下属性: | |||
| {| class="wikitable" | {| class="wikitable" | ||
| |- | |- | ||
| !  | ! 属性 | ||
| !  | ! 示例值 | ||
| !  | ! 释义 | ||
| |- | |- | ||
| | name<br>setname<br>rename | | name<br>setname<br>rename | ||
| | Intercity#A | | Intercity#A | ||
| |  | | 为列车设置新的名称。# 会被替换为 1 至无穷大的数字。 | ||
| |- | |- | ||
| | dname<br>setdname<br>displayname<br>setdisplayname | | dname<br>setdname<br>displayname<br>setdisplayname | ||
| | Trainname | | Trainname | ||
| |  | | 设置 trigger(触发器)控制牌显示的名称(%triggernameN%)。 | ||
| |- | |- | ||
| | exitoffset<br>exitlocation<br>exityaw<br>exitpitch<br>exitrotation | | exitoffset<br>exitlocation<br>exityaw<br>exitpitch<br>exitrotation | ||
| | 2/0/0<br>200/45/-2333<br>30<br>0<br>90 | | 2/0/0<br>200/45/-2333<br>30<br>0<br>90 | ||
| |  | | 修改玩家离开时的偏移、偏航、俯仰和旋转。离开位置使用绝对坐标,离开时的偏移则相对于矿车。 | ||
| |- | |- | ||
| | speedlimit<br>maxspeed | | speedlimit<br>maxspeed | ||
| | 0.6 | | 0.6 | ||
| |  | | 设置列车的最大速度。 | ||
| |- | |- | ||
| | <s>pushing</s><ref name="collision"> | | <s>pushing</s><ref name="collision">旧语法,用于兼容。由碰撞 ''type''(类型)替换,更多请参阅[[Special:MyLanguage/TrainCarts/Physical/Collision|碰撞模式]]。</ref> | ||
| | false | | false | ||
| |  | | 设置列车能否推动生物、玩家、列车和其他。 | ||
| |- | |- | ||
| | <s>pushmobs</s><ref name="collision"/> | | <s>pushmobs</s><ref name="collision"/> | ||
| | true | | true | ||
| |  | | 设置列车能否推动生物。 | ||
| |- | |- | ||
| | <s>pushplayers</s><ref name="collision"/> | | <s>pushplayers</s><ref name="collision"/> | ||
| | no | | no | ||
| |  | | 设置列车能否推动玩家。 | ||
| |- | |- | ||
| | <s>pushmisc</s><ref name="collision"/> | | <s>pushmisc</s><ref name="collision"/> | ||
| | yes | | yes | ||
| |  | | 设置列车能否推动其他(如物品、船等)。 | ||
| |- | |- | ||
| | playercollision<br>mobcollision<br>traincollision<br>misccollision | | playercollision<br>mobcollision<br>traincollision<br>misccollision | ||
| | default<br>cancel<br>kill<br>killnodrops<br>push<br>enter<br>link | | default<br>cancel<br>kill<br>killnodrops<br>push<br>enter<br>link | ||
| |  | | 设置列车与玩家、生物、列车或其他类型实体的[[Special:MyLanguage/TrainCarts/Physical/Collision|碰撞模式]]。 | ||
| |- | |- | ||
| | slowdown | | slowdown | ||
| | false | | false | ||
| |  | | 设置列车是否因重力和摩擦力减速。 | ||
| |- | |- | ||
| |slowfriction | | slowfriction | ||
| |false | | false | ||
| | | | 设置列车是否因摩擦力减速。 | ||
| |- | |- | ||
| |slowgravity | | slowgravity | ||
| |false | | false | ||
| | | | 设置列车是否因重力减速或加速。 | ||
| |- | |- | ||
| |gravity | | gravity | ||
| |1.0 | | 1.0 | ||
| | | | 修改重力加速度和减速度(乘数,默认值为1.0)。 | ||
| |- | |- | ||
| | linking | | linking | ||
| | deny | | deny | ||
| |  | | 设置列车能否与其他列车相连。 | ||
| |- | |- | ||
| | collision | | collision | ||
| | allow | | allow | ||
| |  | | 设置列车能否与其他实体发生碰撞。 | ||
| |- | |- | ||
| | keepcloaded<br>loadchunks<br>keeploaded | | keepcloaded<br>loadchunks<br>keeploaded | ||
| | true | | true | ||
| |  | | 设置列车是否保持附近的区块加载。 | ||
| |- | |- | ||
| | default<br>setdefault | | default<br>setdefault | ||
| | stat1def | | stat1def | ||
| |  | | 将<br>DefaultTrainProperties.yml 里其中一个默认属性加载到所填写的列车上。 | ||
| |- | |- | ||
| |banking | | banking | ||
| |1 0 | | 1 0 | ||
| | | | 修改列车过弯时的倾斜程度(第一个数字:强度;第二个数字:平滑度)。 | ||
| |- | |- | ||
| |godmode | | godmode<br>invincible | ||
| invincible | | true | ||
| |true | | 设置列车是否是无法破坏的,如果为 true,则玩家不能打掉矿车。<br>拥有 ''train.break.any'' 权限的玩家(OP 默认拥有)可以破坏矿车。 | ||
| | | |||
| |- | |- | ||
| |waitdistance<br>waitdelay<br>waitacceleration<br>waitpredicted | |waitdistance<br>waitdelay<br>waitacceleration<br>waitpredicted | ||
| | | | | ||
| | | |请参阅[[#Wait_Property|等待属性]]章节。 | ||
| |- | |- | ||
| | route add<br>route set<br>route remove<br>route clear | | route add<br>route set<br>route remove<br>route clear | ||
| | destination_name | | destination_name | ||
| |  | | 为列车[[TrainCarts/PathFinding#Route_Manager|路线]]添加/移除/清除/设置目的地。目的地要最后添加。 | ||
| |- | |- | ||
| | route load<br>loadroute | | route load<br>loadroute | ||
| | my_saved_route | | my_saved_route | ||
| |  | | 通过名称加载之前保存的[[TrainCarts/PathFinding#Route_Manager|路线]]。 | ||
| |} | |} | ||
| === 设置名称 === | |||
| </ | 名称属性会更改列车的名称。考虑到多列车重命名,且每列车都需要一个唯一的名称,因此会添加“#”来计数。例如,经过名称值为 ''Intercity#A'' 的属性牌时,第一辆列车将被命名为 ''Intercity1A'',第二辆列车将被命名为 ''Intercity2A'',以此类推。你可以与生成器结合,系统化生成并命名列车。之后还可以通过此命名,进行系统化远程控制,用于控制特定生成器或类别的所有列车。 | ||
| === 保持区块加载 === | |||
| 列车可以像玩家一样保持其周围的区块加载。这允许它们在附近没有玩家时在不被卸载并保持移动。此功能需要为列车启用<code>keepchunksloaded</code>或<code>keeploaded</code> 属性。可以使用传统的布尔值或是加载模式和半径进行设置。 | |||
| 在高版本的Minecraft中,[https://zh.minecraft.wiki/w/区块#加载等级 区块加载等级] 也是生效的,可以是<code>full</code>、<code>redstone</code> 或 <code>minimal</code>。'''full'''将更新加载的区块中的实体;'''redstone'''不会更新实体,但会计算红石行为;'''minimal'''不会运行。要[[Special:MyLanguage/TrainCarts/Lag|提高服务器性能]] 当列车长距离行驶且不需要世界运行时,将模式切换到半径较小的<code>minimal</code>模式会有所帮助。 | |||
| {| class="wikitable" | |||
| |- | |||
| ! 值 | |||
| ! 释义 | |||
| |- | |||
| | false | |||
| | 禁用区块加载。列车周围没有玩家时会被卸载。 | |||
| |- | |||
| | true | |||
| | 启用区块加载,以列车所在区块为中央区块,5×5范围的区块以“方块计算”等级加载。实际会加载9×9范围的区块。与<code>full 2</code>等效 | |||
| |- | |||
| | minimal 0 | |||
| | 启用区块加载,但只加载列车所在区块。实体(除了列车自己)和红石不会计算。性能最高,适合长途旅行。 | |||
| |- | |||
| | redstone 2 | |||
| | 启用区块加载,以列车所在区块为中央区块,5×5范围的区块以“方块计算”等级加载、7×7范围的区块以“完全加载”等级加载。适用于需要红石计算但无需实体计算的站点。 | |||
| |- | |||
| | full 10 | |||
| | 启用区块加载,以列车所在区块为中央区块,21×21范围的区块以“实体计算”等级加载、23×23范围的区块以“方块计算”等级加载,25×25范围的区块以“完全加载”等级加载。因此这实际加载了25×25范围的区块。若你想要类似于玩家的区块加载行为,这就是你要的。 | |||
| |}<!--This paragraph is not faithful to the original text. I have optimized the text here based on the content in the Chinese MCwiki. 这一段并不忠实于原文,我根据中文MCwiki中的内容优化了此处的文本--> | |||
| ==== 例子 ==== | |||
| <code>/train keepchunksloaded true</code> | |||
| {{sign|[train]|property|keeploaded|true}} | |||
| <code>/train keepchunksloaded minimal --radius 0</code> | |||
| {{sign|[train]|property|keeploaded|minimal 0}} | |||
| ===  | === 等待属性 === | ||
| 等待属性控制列车的减速机制。当前方有列车阻挡时会自动减速。这项功能很大程度上会替代[[Special:MyLanguage/TrainCarts/Signs/Waiter|waiter 等待牌]],并且更加智能: | |||
| *  | * 与前方列车保持距离。 | ||
| *  | * 减速靠近[[Special:MyLanguage/TrainCarts/Signs/Mutex|闭塞区间]]。 | ||
| *  | * 使当前列车减速靠近[[Special:MyLanguage/TrainCarts/Signs/Blocker|阻挡器]]。 | ||
| 存在以下'等待'属性: | |||
| {| class="wikitable" | {| class="wikitable" | ||
| |- | |- | ||
| !  | ! 属性 | ||
| !  | ! 值 示例 | ||
| !  | ! 描述 | ||
| |- | |- | ||
| | waitdistance | | waitdistance | ||
| | 20.5 | | 20.5 | ||
| |  | | 列车与列车之间保持的距离(方块距离)。列车会减速甚至在到达距离时完全停止。 | ||
| |- | |- | ||
| | waitacceleration | | waitacceleration | ||
| | 20kmh/s | | 20kmh/s | ||
| |  | | 当前方障碍出现或消失时列车的[[Special:MyLanguage/TrainCarts/Acceleration|加速度和减速度]]。当指定两个数值时,第一个数值表示列车加速度,第二个数值表示减速度。没有设置等待距离也可以使用,并且列车减速接近 blocker(阻挡器)控制牌或 mutex(区间闭塞)控制牌时也会使用该配置。 | ||
| |- | |- | ||
| | waitdelay | | waitdelay | ||
| | 30 | | 30 | ||
| |  | | 列车因前方障碍需要等待而完全停止时,障碍消失后列车启动的延迟(以秒为单位)。 | ||
| |- | |- | ||
| | waitpredicted | | waitpredicted | ||
| | false | | false | ||
| |  | | 预测并控制列车的路线。默认启用。如果启用,会考虑[[Special:MyLanguage/TrainCarts/Signs/Switcher|转辙器]]并检测列车预期路线上的障碍。 | ||
| |} | |} | ||
| 它们也可以通过指令<code>/train wait <属性> <值></code>进行配置。 | |||
Latest revision as of 09:37, 12 October 2025
介绍
属性牌可以执行与指令相同的任务,但比指令更强,能够实现全自动化。属性牌需要红石激活才能运行,并且会忽略矿车的所有权,因此如果你只想定位某个你拥有的矿车,请与转辙器的检测矿车拥有者的功能相结合来使用。
语法
第二行:property
第三行:要更改的属性名称。
第四行:要设置的属性的值。
布尔语句
布尔属性(如玩家进入和列车减速)可以使用语句来判定 true 还是 false。这使得使用红石或基于列车的其他属性来打开或关闭某些功能时变得更加容易。
远程控制
你可以远程设置列车属性。假设你的列车名为train01,那么控制牌上应该这样写:
属性
可以使用 [cart] 和 [train] 设置以下属性:
| 属性 | 示例值 | 释义 | 
|---|---|---|
| addtag | tag1 | 添加一个标签。 | 
| settag | taga | 设置一个标签。 | 
| remtag | a | 移除一个标签。 | 
| addticket | expresstrain | 为列车创建一个车票。 | 
| setticket | expresstrain | 为列车设置只允许的车票。 | 
| remticket | expresstrain | 为列车移除一个车票。 | 
| addowner | Maxxue | 为列车添加一个车主。 | 
| setowner | Maxxue | 清除所有的车主并设置车主为设置的玩家。 | 
| remowner | Maxxue | 为列车移除一个车主。 | 
| destination | station2 | 设置目的地。 | 
| mobenter | false | 设置是否允许生物进入。 | 
| playerenter | true | 设置是否允许玩家进入。 | 
| playerexit | yes | 设置是否允许玩家离开。 | 
| playerenterexit playerexitenter | yes | 同时设置是否允许玩家进入和玩家离开。 | 
| spawnitemdrops spawndrops killdrops | true | 设置矿车被销毁时是否掉落物品。 当设置为 false 时,运输矿车或漏斗矿车里储存的物品也不会掉落。 | 
| viewdistance | 10 | (只支持 Paper 端!)设置矿车/列车上的乘客有一定的区块/实体视野距离。可用来为世界减少高占用区块的卡顿。 | 
只能使用 [train] 设置以下属性:
| 属性 | 示例值 | 释义 | 
|---|---|---|
| name setname rename | Intercity#A | 为列车设置新的名称。# 会被替换为 1 至无穷大的数字。 | 
| dname setdname displayname setdisplayname | Trainname | 设置 trigger(触发器)控制牌显示的名称(%triggernameN%)。 | 
| exitoffset exitlocation exityaw exitpitch exitrotation | 2/0/0 200/45/-2333 30 0 90 | 修改玩家离开时的偏移、偏航、俯仰和旋转。离开位置使用绝对坐标,离开时的偏移则相对于矿车。 | 
| speedlimit maxspeed | 0.6 | 设置列车的最大速度。 | 
| false | 设置列车能否推动生物、玩家、列车和其他。 | |
| true | 设置列车能否推动生物。 | |
| no | 设置列车能否推动玩家。 | |
| yes | 设置列车能否推动其他(如物品、船等)。 | |
| playercollision mobcollision traincollision misccollision | default cancel kill killnodrops push enter link | 设置列车与玩家、生物、列车或其他类型实体的碰撞模式。 | 
| slowdown | false | 设置列车是否因重力和摩擦力减速。 | 
| slowfriction | false | 设置列车是否因摩擦力减速。 | 
| slowgravity | false | 设置列车是否因重力减速或加速。 | 
| gravity | 1.0 | 修改重力加速度和减速度(乘数,默认值为1.0)。 | 
| linking | deny | 设置列车能否与其他列车相连。 | 
| collision | allow | 设置列车能否与其他实体发生碰撞。 | 
| keepcloaded loadchunks keeploaded | true | 设置列车是否保持附近的区块加载。 | 
| default setdefault | stat1def | 将 DefaultTrainProperties.yml 里其中一个默认属性加载到所填写的列车上。 | 
| banking | 1 0 | 修改列车过弯时的倾斜程度(第一个数字:强度;第二个数字:平滑度)。 | 
| godmode invincible | true | 设置列车是否是无法破坏的,如果为 true,则玩家不能打掉矿车。 拥有 train.break.any 权限的玩家(OP 默认拥有)可以破坏矿车。 | 
| waitdistance waitdelay waitacceleration waitpredicted | 请参阅等待属性章节。 | |
| route add route set route remove route clear | destination_name | 为列车路线添加/移除/清除/设置目的地。目的地要最后添加。 | 
| route load loadroute | my_saved_route | 通过名称加载之前保存的路线。 | 
设置名称
名称属性会更改列车的名称。考虑到多列车重命名,且每列车都需要一个唯一的名称,因此会添加“#”来计数。例如,经过名称值为 Intercity#A 的属性牌时,第一辆列车将被命名为 Intercity1A,第二辆列车将被命名为 Intercity2A,以此类推。你可以与生成器结合,系统化生成并命名列车。之后还可以通过此命名,进行系统化远程控制,用于控制特定生成器或类别的所有列车。
保持区块加载
列车可以像玩家一样保持其周围的区块加载。这允许它们在附近没有玩家时在不被卸载并保持移动。此功能需要为列车启用keepchunksloaded或keeploaded 属性。可以使用传统的布尔值或是加载模式和半径进行设置。
在高版本的Minecraft中,区块加载等级 也是生效的,可以是full、redstone 或 minimal。full将更新加载的区块中的实体;redstone不会更新实体,但会计算红石行为;minimal不会运行。要提高服务器性能 当列车长距离行驶且不需要世界运行时,将模式切换到半径较小的minimal模式会有所帮助。
| 值 | 释义 | 
|---|---|
| false | 禁用区块加载。列车周围没有玩家时会被卸载。 | 
| true | 启用区块加载,以列车所在区块为中央区块,5×5范围的区块以“方块计算”等级加载。实际会加载9×9范围的区块。与 full 2等效 | 
| minimal 0 | 启用区块加载,但只加载列车所在区块。实体(除了列车自己)和红石不会计算。性能最高,适合长途旅行。 | 
| redstone 2 | 启用区块加载,以列车所在区块为中央区块,5×5范围的区块以“方块计算”等级加载、7×7范围的区块以“完全加载”等级加载。适用于需要红石计算但无需实体计算的站点。 | 
| full 10 | 启用区块加载,以列车所在区块为中央区块,21×21范围的区块以“实体计算”等级加载、23×23范围的区块以“方块计算”等级加载,25×25范围的区块以“完全加载”等级加载。因此这实际加载了25×25范围的区块。若你想要类似于玩家的区块加载行为,这就是你要的。 | 
例子
/train keepchunksloaded true
/train keepchunksloaded minimal --radius 0
等待属性
等待属性控制列车的减速机制。当前方有列车阻挡时会自动减速。这项功能很大程度上会替代waiter 等待牌,并且更加智能:
存在以下'等待'属性:
| 属性 | 值 示例 | 描述 | 
|---|---|---|
| waitdistance | 20.5 | 列车与列车之间保持的距离(方块距离)。列车会减速甚至在到达距离时完全停止。 | 
| waitacceleration | 20kmh/s | 当前方障碍出现或消失时列车的加速度和减速度。当指定两个数值时,第一个数值表示列车加速度,第二个数值表示减速度。没有设置等待距离也可以使用,并且列车减速接近 blocker(阻挡器)控制牌或 mutex(区间闭塞)控制牌时也会使用该配置。 | 
| waitdelay | 30 | 列车因前方障碍需要等待而完全停止时,障碍消失后列车启动的延迟(以秒为单位)。 | 
| waitpredicted | false | 预测并控制列车的路线。默认启用。如果启用,会考虑转辙器并检测列车预期路线上的障碍。 | 
它们也可以通过指令/train wait <属性> <值>进行配置。

