特征
- 允许使用 NPC 售票员实现火车自动化
- 允许放置触发器以指示导体如何导航
- 允许放置生成点,从而生成带有可选火车车厢的工作车
- 地下隧道的可选默认触发器
- 用于自动驾驶列车的可选地图标记
- 与 2022 年 5 月和 8 月 Rust 更新中的新火车完全兼容
- 用于创建插件的 API
介绍
这个插件的主要特点是在火车轨道上添加“触发器”。触发器是一种不可见的物体,可以检测火车何时与它接触,以执行各种功能,包括以下内容。- 向火车添加列车员
- 更改火车的速度、方向和轨道选择
- 在可配置的时间段内暂时停止列车
- 运行自定义服务器命令
- 摧毁火车
触发器还可以用作 Workcart 生成点,具有可选数量的附加货车和工作车。
导体的工作原理
自动化火车会为连接到该火车的每辆工作车添加一个售票员 NPC,并自动下车当前驾驶它们的任何玩家。- 指挥家无敌
- 作为自动化列车一部分的所有工作车和货车都是无敌的
- 自动工作车不需要燃料
- 自动列车不能与其他列车耦合,也不能分离
触发器的工作原理
每个触发器可以具有多个属性,包括方向(例如、)、速度(例如、、、)、轨迹选择(例如、、)、停止持续时间(以秒为单位)和出发速度/方向。当列车员驱动的列车触碰触发器时,其指令可能会根据触发器属性而改变。例如,如果火车当前正在按照指示 、 、 、 ,然后触摸仅指定轨道选择的触发器,则火车指示将更改为 、 、 ,导致火车在到达的每个十字路口右转,直到它接触到指示相反的触发器。FwdRevInvertHiMedLoZeroDefaultLeftRightFwdHiLeftRightFwdHiRight触发器的类型
映射特定的触发器
- 可以放置在火车轨道上的任何位置,地上或地下。
- 仅适用于使用世界坐标放置它们的地图。
- 通过配置选项启用。Enable map triggers
- 使用 or 命令添加。aw.addtriggerawt.add
- 保存在数据文件 中。oxide/data/AutomatedWorkcarts/MAP_NAME.json
- 注: 非程序贴图的文件名将排除擦除编号,以便您可以在强制擦除中重复使用触发器。
隧道触发器
- 只能放置在原版火车隧道中。
- 使用隧道相对坐标在相同类型的所有隧道中自动复制。
- 通过 -> 选项启用。Enable tunnel triggers*
- 使用 or 命令添加。aw.addtunneltriggerawt.addt
- 保存在数据文件 中。oxide/data/AutomatedWorkcarts/TunnelTriggers.json
教程
教程:自动化所有地下工作车
该插件提供了默认触发器,您可以为地下隧道启用这些触发器。此设置只需几分钟。- 在插件配置中将 -> 设置为 。Enable tunnel triggersTrainStationtrue
- 在插件配置中将 -> 设置为 。Enable tunnel triggersVerticalIntersectiontrue
- 重新加载插件。
从地图的角度来看,每个工作车都会围绕相邻的循环逆时针旋转移动,或围绕地图的外边缘顺时针旋转,具体取决于工作矿车生成的维护隧道和附近可用的循环。这种组合将覆盖大多数地图,允许玩家通过在各个站点切换方向来前往几乎任何地方。
要直观地查看触发器,请授予权限并运行命令。在 60 秒内,这将在附近的隧道中显示触发器。在这里,您可以根据自己的喜好添加、更新、移动和删除触发器。有关如何管理触发器的信息,请参阅 Commands 部分。automatedworkcarts.managetriggersawt.show
以下屏幕截图描述了具有以下属性的配置,其中火车刚才刚刚生成。
- 启用所有默认隧道触发器
- 为火车启用自动售货机和彩色地图标记,使用动态路线颜色
- 使用动态路线颜色为火车停靠点启用彩色地图标记
教程:自动化地上工作车
注意:这些说明最初是为自定义地图编写的,可能不适用于程序生成的地上轨道,因为火车的生成有些随机。相反,请参阅下面的部分或创建生成点。- 如果您是地图开发人员,请参阅下面的“地图开发人员提示”部分。合理地设计轨道将简化自动路线的设置。
- 仔细检查地图上的轨迹,以确定您希望 Workcart 使用的路线。
- 授予自己权限。automatedworkcarts.managetriggers
- 找到您希望火车自动接收售票员的火车出生位置。
- 瞄准轨道并运行命令 。任何在此触发器上生成的火车都会自动接收一名列车员,并开始以最大速度向前行驶。awt.add Conductor Fwd Hi
- 找到您希望 Automated Workcart 短暂停止的轨道部分。
- 瞄准轨道并运行命令 。任何通过此触发器的火车都会制动直到停止,等待几秒钟,然后开始向同一方向高速移动。awt.add Brake Zero 15 Hi15Hi
- 继续添加/编辑触发器并生成 workcart 以优化路线。
教程:创建生成点
工作矿车可以通过生成触发器生成。以下步骤将引导您完成一个示例来帮助您入门。- 授予自己权限。automatedworkcarts.managetriggers
- 瞄准火车轨道上的某个地方,然后运行命令(或用于隧道相对触发器)。工作车应该立即在那里生成(如果有足够的空间),但不会有指挥。awt.add Workcartawt.addt Workcart
- 如果工作车朝向错误的方向,请瞄准扳机,同时大致面向您希望工作车面对的方向,然后运行 。awt.rotate
- 要移动生成点,请瞄准要将其移动到的位置,然后运行 ,其中应替换为触发器 ID,您可以看到该 ID 浮动在触发器上方(它将有一个 )。awt.move <id><id>#
- 要将货车添加到生成点,请瞄准触发器并运行命令 。此示例命令将添加多个 vagons,并在末尾添加一个额外的 workcart。您可以根据需要按任意顺序添加任意数量的货车和工作车,只要轨道上有足够的空间即可。awt.train Workcart WagonA WagonB WagonC Workcart
- 如果您想在火车上添加售票员,请瞄准扳机并运行。awt.update Conductor Fwd Hiawt.respawn
许可
此插件使用权限系统。要分配权限,请使用 。要删除权限,请使用 。oxide.grant <user or group> <name or steam id> <permission>oxide.revoke <user or group> <name or steam id> <permission>- automatedworkcarts.toggle-- 允许使用 and 命令。aw.toggleaw.resetall
- automatedworkcarts.managetriggers-- 允许查看、添加、更新和删除触发器。
命令
此插件使用相同的语法提供聊天和控制台命令。在聊天中使用命令时,请为其添加正斜杠前缀: '/'。切换单个工作车的自动化
- aw.toggle @<optional_route_name>-- 切换您正在查看的火车的自动化。
- 如果指定了路线名称,列车将响应全局触发器(即未指定路线的触发器)和分配给该路线的触发器。列车将忽略分配给其他路线的触发器。
- 如果未指定路线名称,列车将仅响应全局触发器。
- 火车将根据 和 插件配置开始行驶。DefaultSpeedDefault track selection
- aw.resetall-- 将所有 Automated Train 重置为正常。这将移除所有导体。例外:由列车员触发器生成的火车将保留其列车员。
管理触发器
- aw.showtriggers @<optional_route_name> <optional_duration_in_seconds>(alias: ) -- 在指定持续时间内向玩家显示附近的所有触发器。默认为 60 秒。awt.show
- 这将显示每个触发器的 ID、速度、方向等。
- 当使用任何其他触发器命令或手动自动化工作车时,触发器也会自动显示至少 60 秒。
- 指定路由名称时,全局触发器和匹配该路由的触发器将以其默认颜色显示,但不同路由的触发器将以灰色显示。
- aw.addtrigger <option1> <option2> ...(alias: ) -- 使用指定的选项将触发器添加到您要瞄准的轨道位置。通过触发器的 Automated Train 将受到触发器选项的影响。awt.add
- 速度选项: | | | .HiMedLoZero
- 方向选项: | | .FwdRevInvert
- 轨道选择选项: | | | .DefaultLeftRightSwap
- 火车车厢选项: | | | | | | | | | |LocomotiveSedanWorkcartWorkcartCoveredWagonAWagonBWagonCWagonFuelWagonLootWagonResourceCaboose
- 其他选项:
- Conductor-- 向列车添加列车员(如果尚未存在)。放置触发器的好地方是工作车生成位置,例如地下维护隧道中的原版生成点。此选项还可以与火车车厢选项结合使用,以自动生成自动火车。Conductor
- 注意:玩家拥有的火车不能接收售票员。原版火车没有所有者,但大多数为玩家生成车辆的插件都会通过设置车辆的属性来分配所有权。OwnerID
- Brake-- 指示列车制动,直到达到指定速度。例如,如果火车正在行驶并进入触发器,它会暂时运行,直到它足够慢,然后它才会运行。Fwd_HiBrake MedRev_LoFwd_Med
- Destroy-- 摧毁火车。这主要用于测试和演示,但如果您不想费心进行更深思熟虑的轨道设计,它也很有用。
- @<route_name>-- 指示列车在未分配此路线时忽略此触发器(替换为您想要的名称)。<route_name>
- 如果触发器具有 属性,并且火车还没有售票员,则将为其分配此路线。Conductor
- <chance>%-- 使触发器只有百分之几率影响火车。不会影响火车接收列车员的几率。
- Enabled-- 启用触发器。
- Disabled-- 禁用触发器。禁用的触发器将被 trains 忽略,并显示为灰色。
- Conductor-- 向列车添加列车员(如果尚未存在)。放置触发器的好地方是工作车生成位置,例如地下维护隧道中的原版生成点。此选项还可以与火车车厢选项结合使用,以自动生成自动火车。Conductor
- aw.addtrunneltrigger <option1> <option2>(alias: ) -- 将触发器添加到您要瞄准的轨道位置。awt.addt
- 选项与 相同。aw.addtrigger
- 必须位于受支持的火车隧道中(在插件配置中启用的隧道)。
- 此触发器将在相同类型的所有火车隧道中复制。编辑或删除其中一个触发器将影响所有触发器。
- aw.updatetrigger <id> <option1> <option2> ...(alias: ) -- 添加或更新指定触发器的属性,而不删除任何属性。awt.update
- 选项与 相同。aw.addtrigger
- aw.replacetrigger <id> <option1> <option2> ...(alias: ) -- 将指定触发器的所有属性替换为指定的属性。awt.replace
- 选项与 相同。aw.addtrigger
- 这对于从触发器中删除属性(无需删除并重新添加)非常有用,因为不会删除属性。aw.updatetrigger
- aw.movetrigger <id>(alias: ) -- 将指定的扳机移动到玩家瞄准的轨迹位置。awt.move
- aw.rotatetrigger <id>(alias: ) -- 将指定的触发器旋转到玩家面对的位置。这仅对生成触发器有用,因为它决定了火车在生成时将面向哪个方向。如果旋转已反转,此命令将自动重生火车。awt.rotate
- aw.removetrigger <id>(alias: ) -- 删除指定的触发器。awt.remove
- aw.enabletrigger <id>(alias: ) -- 启用指定的触发器。这与 .awt.enableaw.updatetrigger <id> enabled
- aw.disabletrigger <id>(alias: ) -- 禁用指定的触发器。这与 .禁用的触发器将被 trains 忽略,并显示为灰色。awt.disableaw.updatetrigger <id> disabled
- aw.settriggertrain <id> <wagon1> <wagon2> ...(别名: ) -- 将零个或多个火车车厢分配给触发器,替换当前的火车车厢列表,使此触发器自动生成具有指定工作车和货车的火车,并按顺序连接。小车将自动耦合到工作车上。允许的值: 、 、 、要删除所有火车车厢,请在不指定任何火车车厢的情况下运行该命令。awt.trainLocomotiveSedanWorkcartWorkcartCoveredWagonAWagonBWagonCWagonFuelWagonLootWagonResourceCaboose
- aw.respawntrigger <id>(alias: ) -- 为指定的触发器取消并重新生成火车。当在隧道触发器上使用时,火车将在隧道触发器的所有实例中重新生成。awt.respawn
- aw.addtriggercommand <id> <command>(alias: ) -- 将指定的命令添加到触发器中。每当火车通过触发器时,就会执行该操作。您可以在命令中使用 magic 变量,该变量将替换为主 Workcart 的 Net ID。awt.addcmd$id
- aw.removetriggercommand <id> <number>(alias: ) -- 从触发器中删除指定的命令。命令编号为 1、2、3 等,并且在使用 时将在触发器信息上可见。awt.removecmdaw.showtriggers
命令示例
简单的例子:- awt.add Lo-- 使火车以高速向当前方向移动。示例: -> 。LoFwd_HiFwd_Lo
- awt.add Fwd Lo-- 使火车高速向前移动,而不管其当前方向如何。示例: -> 。LoRev_HiFwd_Lo
- awt.add Invert-- 使火车以当前速度反转方向。示例: -> 。Fwd_MedRev_Med
- awt.add Invert Med-- 使火车高速反转方向。示例: -> 。MedFwd_HiRev_Med
- awt.add Brake Med-- 使火车制动直到达到速度。示例: -> -> .MedFwd_HiRev_LoFwd_Med
- awt.add Left-- 使火车在以后的所有交叉路口左转。
- awt.add Conductor Fwd Hi Left-- 使列车自动接收列车员,高速前进,并始终左转。Hi
- awt.add Brake Zero 10 Hi-- 使火车刹车停止,等待 10 秒,然后沿同一方向移动速度。Hi
- awt.add Zero 20 Med-- 使火车关闭发动机几秒钟(缓慢滚动至停止),然后高速向同一方向移动。20Med
- awt.add @Route1 Conductor Fwd Hi Left-- 使列车自动接收售票员,高速前进,始终左转,并忽略分配给其他路线 (即未命名的路线) 的触发器。HiRoute1
- awt.add @Route1 Left-- 仅当为火车分配了路线时,才使火车在以后的所有交叉路口左转。Route1
- awt.update 60-- 将触发器的停止持续时间更新为秒。60
- awt.update Left-- 将触发器的轨道选择更新为 。Left
- awt.update Fwd Hi-- 将触发器的 direction 更新为 ,将 speed 更新为 。FwdHi
- awt.update @Route2-- 将触发器的路由更新为 。Route2
- awt.update 60 Left Fwd Hi @Route2-- 将上述所有更新同时应用于触发器。
- awt.add Workcart-- 创建一个将生成 workcart 的触发器。
- awt.train Workcart WagonA WagonB-- 更新触发器以生成一个工作车,其后面耦合着一个和一辆货车。WagonAWagonB
- awt.train Workcart WagonC WagonC-- 更新触发器以生成一个工作车,其后面耦合着两个货车。WagonC
- awt.train Workcart Workcart-- 更新触发器以生成两个耦合在一起的工作车。
- awt.train Locomotive Workcart WagonA WagonB WagonC WagonFuel WagonLoot WagonResource Caboose WorkcartCovered-- 更新触发器以生成一列火车,其后面耦合了所有可能的火车车厢类型。
- awt.add Conductor Brake Zero 10 Fwd Hi Left Workcart WagonA WagonB-- 创建一个触发器,该触发器将生成一个工作车,其后面耦合着一个 1 个货车。它将有一个售票员,最初会等待 10 秒,然后高速向前行驶。在回访时,它将制动至停止并等待 10 秒后再继续。WagonAWagonBHi
配置
默认配置:
- Play horn for nearby players in radius-- 自动吹奏火车喇叭所需的与附近玩家的距离。设置为 可禁用喇叭。0.0
- Default speed-- 列车开始自动化时使用的默认速度。
- 允许的值: | | | | | | ."Rev_Hi""Rev_Med""Rev_Lo""Zero""Fwd_Lo""Fwd_Med""Fwd_Hi"
- 如果列车位于指定速度的触发器上,则忽略此值。
- Default track selection-- 列车开始自动化时使用的默认轨道选择。
- 允许的值: | | ."Left""Default""Right"
- 如果列车位于指定轨道选择的触发器上,则忽略此值。
- Bulldoze offending workcarts (true或 ) -- 而 ,自动列车将摧毁其路径上的其他非自动列车。falsetrue
- Destroy barricades instantly (true或 ) -- 虽然 ,自动列车将立即摧毁列车路障,但列车仍可能减速。falsetrue
- 无论此设置如何,自动列车都可能在迎面或垂直碰撞中相互摧毁。
- Enable map triggers (true或 ) -- While ,现有的特定于地图的触发器将被禁用,并且无法添加新的地图特定的触发器。falsefalse
- Enable tunnel triggers-- 对于特定隧道类型,这些隧道中的现有触发器将被禁用,并且无法向该类型的隧道添加新触发器。false
- TrainStation (true或 ) -- 不言自明。false
- BarricadeTunnel (true或 ) -- 这会影响生成 NPC、战利品的笔直隧道,以及轨道上的路障。false
- LootTunnel (true或 ) -- 这会影响生成 NPC 和战利品的笔直隧道。false
- Intersection (true或 ) -- 这会影响 3 向交集。false
- LargeIntersection (true或 ) -- 这会影响 4 向交集。false
- Max conductors-- 地图上同时允许的自动列车的最大数量。设置为 for no limit。请注意,在一列火车上拥有多个自动工作车将仅算作一名售票员。例外:由列车员触发器生成的列车不受列车员限制的约束,也不计入列车员限制,除非设置为 。-1Spawn triggers respect conductor limittrue
- Spawn triggers respect conductor limit (true或 ) -- While ,由 conductor 触发器生成的列车受 conductor 限制的约束。falsetrue
- Disable default tunnel workcart spawn points (true或 ) -- While ,火车站维护隧道的原版工作车生成点将被禁用,并且这些生成点生成的任何现有工作车将在插件加载时被销毁。这使您能够在同一位置创建自定义生成点,从而允许您使用替代火车引擎和可选的货车。falsetrue
- Trigger display distance -- 确定在查看触发器时(例如,在运行之后)必须离触发器多近才能看到它。awt.show
- Conductor outfit-- 用于每个指挥员服装的物品。
- Map markers
- Train map markers-- 为自动列车配置地图标记。
- Map marker update interval seconds-- 地图标记更新之间的秒数。定期更新许多列车的地图标记可能会影响性能,因此您可以调整此值以在准确性和性能之间进行权衡。
- Colored map marker
- Enabled (true或 ) -- 是否为自动列车启用彩色地图标记。启用此功能会降低性能。false
- Color-- 标记颜色,使用 HTML 流行的十六进制格式。
- Alpha (0.0 - 1.0) -- 标记透明度 ( 不可见,完全不透明)。0.01.0
- Radius-- 标记半径。
- Use dynamic route color (true或 ) -- 虽然 ,则根据每列火车所走的不同路线分配颜色,而不是使用上面配置的特定颜色,该颜色由预测火车将与之交互的唯一触发器集决定。颜色将从 列表中分配。falsetrueDynamic route colors
- Vending map marker
- Enabled (true或 ) -- 是否为自动列车启用自动售货机地图标记。启用此功能会降低性能。false
- Name-- 将鼠标悬停在标记上时要显示的名称。
- Train stop map markers-- 为自动火车停靠点配置地图标记。任何具有 speed 的触发器都被视为停止。Zero
- Display only while stop is reachable (true或 ) -- 虽然 ,但仅当预测当前自动列车将在某个时间点到达触发器时,列车停靠点才会显示在地图上。而 ,所有火车站点将始终显示在地图上。falsetruefalse
- Colored map marker
- Enabled (true或 ) -- 是否启用彩色地图标记。false
- Color-- 标记颜色,使用 HTML 流行的十六进制格式。
- Alpha (0.0 - 1.0) -- 标记透明度 ( 不可见,完全不透明)。0.01.0
- Radius-- 标记半径。
- Use dynamic route color (true或 ) -- While ,将根据每列火车所走的不同路线分配颜色,由预测火车与之交互的唯一触发器集决定。颜色将从 列表中分配。如果多条不同的火车路线触及此触发器,则只会选择其中一条路线的颜色。falsetrueDynamic route colors
- Vending map marker
- Enabled (true或 ) -- 是否为火车停靠点启用自动售货机地图标记。false
- Name-- 将鼠标悬停在标记上时要显示的名称。
- Dynamic route colors-- 可应用于自动火车和火车停止地图标记的颜色列表(如果已启用)。如果不同的路由数多于颜色数,则颜色将重复用于多个路由。Use dynamic route color
- Train map markers-- 为自动列车配置地图标记。
路线(高级)
路线是一项高级功能,适用于复杂的地上轨道。使用 routes 允许列车通过忽略为其他路线指定的触发器来仅响应 select 触发器。这在多列列车需要通过共享轨道但从不同方向离开这些轨道的情况下非常有用。我需要路线吗?
可能不是。路由功能允许解决一些仅使用全局触发器根本无法解决的使用案例。但是,您可能认为需要路由的许多使用案例实际上可以使用全局触发器来实现。以下是一些示例方法,您可以避免使用 routes 功能。
- 设计地图以将轨道共享降至最低,并简化共享轨道部分以删除您不希望自动列车行驶的不必要分支。
- 将轨道选择触发器放在共享轨道分段之前。这些触发器应为来自不同源轨道的列车分配不同的轨道选择。只要共享轨道区间不需要列车改变轨道,就可以让列车从不同的方向离开共享轨道。
- 将轨道选择触发器与指示符放置,以指定火车应在 和 之间翻转其轨道选择。SwapLeftRight
如何分配路由
只有当列车收到列车员时,才能为列车分配路线。这可以通过以下两种方式之一来完成。- 通过在瞄准火车时运行命令。当此命令添加列车员时,将为列车分配指定的路线。aw.toggle @<route_name>
- 当列车通过触发器接收列车员时,如果触发器也有分配的路线,则列车将被分配该路线。
列车在使用路线时如何响应触发器
- 具有已分配路线的触发器将仅影响已分配相同路线的列车。
- 没有分配路线的触发器将影响所有列车。
常见问题
这个插件会导致延迟吗?
此插件的逻辑针对性能进行了优化,不应导致延迟。然而,沿着铁轨行驶的火车确实会产生一些开销,无论驾驶的是玩家还是 NPC。因此,拥有许多自动化列车可能会降低客户端和服务器 FPS。解决此问题的一种方法是使用 configuration 选项限制 Automated Train 的数量。Max conductors这与 Cargo Train Event 插件兼容吗?
一般来说,是的。但是,如果所有列车都是自动化的,则货运列车事件将永远不会启动,因为它需要选择一个空闲的工作车,因此建议使用配置选项限制自动列车的数量,和/或使用触发器根据其生成位置仅自动化特定列车。Max conductors允许玩家火车和自动火车在同一轨道上是否安全?
最佳做法是为玩家与自动列车提供单独的独立轨道。但是,自动火车确实具有碰撞处理逻辑,这使得它们在某种程度上与玩家轨道兼容。- 当自动列车追尾时,如果它当前正在停车或在站点等待,它将提前出发。
- 当一列自动驾驶列车与前方的另一列列车相撞时,其发动机会停止几秒钟,以便前方的列车保持一定的距离。这对于交叉路口特别有用,因为它允许一列火车尝试通过,而另一列火车后退。
- 当两列自动驾驶火车迎面相撞时,速度较慢的一列(如果它们以相同的速度行驶,则为随机的一列)会爆炸。
- 当 Automated Train 以非追尾方式与非 Automated Train 相撞时,将配置选项设置为 state 将导致非 Automated Train 被销毁。Bulldoze offending workcartstrue
地图开发人员提示
- 在设计地图时要考虑自动路线。
- 避免在主要路线上出现死胡同。
- 虽然这些方法可以工作,但由于碰撞可能性增加,它们可能需要额外的努力来设计自动化路线。
- 在地图的大部分区域中创建平行轨迹。
- 这允许火车双向移动,类似于原版地下轨道。
- 创建频繁的备用轨道。
- 在预定的停靠点创建备用轨道,让玩家驾驶的火车在指定站点轻松通过自动火车。
- 在整个地图中创建备用轨道,为玩家驾驶的火车提供避开自动驾驶火车的机会。
- 创建完全独立的轨道。
- 例如,外圆和内圆。
- 这允许此插件的用户有选择地仅自动化特定区域,同时允许其他区域拥有玩家驱动的火车,从而避免两者之间的交互。
- 对于地下隧道,请确保每个 “环路” 至少有两个火车站(或其他站点)。这与插件的默认触发器效果最好,因为它允许玩家通过在各个站点切换方向来乘坐自动火车前往任何地方。
- 如果分发地图,请使用此插件为用户创建默认触发器,并将 json 文件与地图一起分发。
- 该文件可以在 中找到。oxide/data/AutomatedWorkcarts/MAP_NAME.json
地方化
开发人员 API
API_AutomateWorkcart
自动执行指定的火车引擎以及连接到同一火车的所有火车引擎。如果成功或已自动化,则返回。如果它被另一个插件阻止,则返回。truefalse
API_StopAutomatingWorkcart
停止自动化指定的火车引擎以及连接到同一火车的所有火车引擎。
API_IsWorkcartAutomated
如果给定的火车引擎是自动化的,则返回,否则返回。truefalse
API_GetAutomatedWorkcarts
返回当前已自动化的所有 Train 引擎的数组。
开发人员 Hook
OnWorkcart自动化Start
- 当火车引擎即将实现自动化时调用
- 返回将阻止火车引擎自动化false
- 返回将导致默认行为null
OnWorkcartAutomationStarted
- 在火车引擎实现自动化后调用
- 无返回行为
OnWorkcartAutomationStopped
- 在火车引擎停止自动化后调用
- 无返回行为