Component/redstone in motion/zh: Difference between revisions

From OpenComputers: Rebooted
Jump to navigation Jump to search
imported>OCDoc Import
Imported from legacy OpenComputers documentation at ocdoc.cil.li
 
Clean up Markdown artifacts from DokuWiki migration
 
Line 3: Line 3:
此组件代表了[Redstone in Motion(运动红石机构)]([[https://www.curseforge.com/minecraft/mc-mods/remain-in-motion)模组的车辆控制器方块|https://www.curseforge.com/minecraft/mc-mods/remain-in-motion)模组的车辆控制器方块]]。 <s>'''注意:'''此组件只有在安装附属模组OpenComponents的前提下才可用!</s> OpenComponents的内容已经被合并进Opencomputers内。
此组件代表了[Redstone in Motion(运动红石机构)]([[https://www.curseforge.com/minecraft/mc-mods/remain-in-motion)模组的车辆控制器方块|https://www.curseforge.com/minecraft/mc-mods/remain-in-motion)模组的车辆控制器方块]]。 <s>'''注意:'''此组件只有在安装附属模组OpenComponents的前提下才可用!</s> OpenComponents的内容已经被合并进Opencomputers内。


组件名:`carriage`。
组件名:<code>carriage</code>。


回调函数:
回调函数:


* `getAnchored(): boolean` 获取控制器方块在车辆移动时是否应保持原位。
* <code>getAnchored(): boolean</code> 获取控制器方块在车辆移动时是否应保持原位。
* `setAnchored(value: boolean): boolean` 设定控制器方块在车辆移动时是否应保持原位。返回新的值。
* <code>setAnchored(value: boolean): boolean</code> 设定控制器方块在车辆移动时是否应保持原位。返回新的值。
* `move(direction: string or number[, simulate: boolean]): boolean` 让控制器尝试移动车辆。`direction`可以为指示某方向的字符串,或[[API/sides/zh|sides(方向) API]]中的常量之一。你还可以指定是否要进行模拟运动,默认为`false`。若命令执行成功则返回`true`。 此函数不会返回移动的真正结果。 由于技术限制,移动结果将以名为`carriage_moved`的信号异步反馈给电脑。其签名为:`result[, reason: string]`,若移动失败,其中的`reason`为报错信息字符串。这是因为触发了移动的电脑可能也会进行移动,意味着电脑需要暂停运作,这必然导致电脑进入yield状态。 可用的方向字符串有:`negy`、`posy`、`negz`、`posz`、`negx`、`posx`,以及`down`、`up`、`north`、`south`、`west`、`east`。
* <code>move(direction: string or number[, simulate: boolean]): boolean</code> 让控制器尝试移动车辆。<code>direction</code>可以为指示某方向的字符串,或[[API/sides/zh|sides(方向) API]]中的常量之一。你还可以指定是否要进行模拟运动,默认为<code>false</code>。若命令执行成功则返回<code>true</code>。 此函数不会返回移动的真正结果。 由于技术限制,移动结果将以名为<code>carriage_moved</code>的信号异步反馈给电脑。其签名为:<code>result[, reason: string]</code>,若移动失败,其中的<code>reason</code>为报错信息字符串。这是因为触发了移动的电脑可能也会进行移动,意味着电脑需要暂停运作,这必然导致电脑进入yield状态。 可用的方向字符串有:<code>negy</code>、<code>posy</code>、<code>negz</code>、<code>posz</code>、<code>negx</code>、<code>posx</code>,以及<code>down</code>、<code>up</code>、<code>north</code>、<code>south</code>、<code>west</code>、<code>east</code>。


* `simulate(direction: string or number): boolean` 类似`move(direction, true)`.
* <code>simulate(direction: string or number): boolean</code> 类似<code>move(direction, true)</code>.
使用例:
使用例:


```lua local component = require("component") local event = require("event") local sides = require("sides")
<syntaxhighlight lang="lua">
local component = require("component") local event = require("event") local sides = require("sides")


local cc = component.carriage --获取首选车辆控制器组件 cc.move("up") local _, _, result, reason, x, y, z = event.pull("carriage_moved") if not result then
local cc = component.carriage --获取首选车辆控制器组件 cc.move("up") local _, _, result, reason, x, y, z = event.pull("carriage_moved") if not result then


<pre>if x then
if x then
   print(reason)
   print(reason)
   print("Block location: " .. x .. ", " .. y .. ", " .. z)
   print("Block location: " .. x .. ", " .. y .. ", " .. z)
Line 24: Line 25:
   print(reason)
   print(reason)
end
end
</pre>
 
end -- 使用sides表的值: cc.simulate(sides.west) ```
end -- 使用sides表的值: cc.simulate(sides.west)
</syntaxhighlight>


== 目录 ==
== 目录 ==


{{:Component/contents/zh}}
{{:Component/contents/zh}}

Latest revision as of 20:27, 24 August 2026

组件:运动红石机构

此组件代表了[Redstone in Motion(运动红石机构)]([[1]]。 注意:此组件只有在安装附属模组OpenComponents的前提下才可用! OpenComponents的内容已经被合并进Opencomputers内。

组件名:carriage。

回调函数:

  • getAnchored(): boolean 获取控制器方块在车辆移动时是否应保持原位。
  • setAnchored(value: boolean): boolean 设定控制器方块在车辆移动时是否应保持原位。返回新的值。
  • move(direction: string or number[, simulate: boolean]): boolean 让控制器尝试移动车辆。direction可以为指示某方向的字符串,或sides(方向) API中的常量之一。你还可以指定是否要进行模拟运动,默认为false。若命令执行成功则返回true。 此函数不会返回移动的真正结果。 由于技术限制,移动结果将以名为carriage_moved的信号异步反馈给电脑。其签名为:result[, reason: string],若移动失败,其中的reason为报错信息字符串。这是因为触发了移动的电脑可能也会进行移动,意味着电脑需要暂停运作,这必然导致电脑进入yield状态。 可用的方向字符串有:negy、posy、negz、posz、negx、posx,以及down、up、north、south、west、east。
  • simulate(direction: string or number): boolean 类似move(direction, true).

使用例:

local component = require("component") local event = require("event") local sides = require("sides")

local cc = component.carriage --获取首选车辆控制器组件 cc.move("up") local _, _, result, reason, x, y, z = event.pull("carriage_moved") if not result then

if x then
  print(reason)
  print("Block location: " .. x .. ", " .. y .. ", " .. z)
else
  print(reason)
end

end -- 使用sides表的值: cc.simulate(sides.west)

目录

< 100% 15% 15% >
组件API 3D打印机 - 抽象总线 - 无线接入点 - 区块加载器 - 电脑 - 合成 - 数据卡 - 数据库 - 调试 - 无人机 - 驱动器 - EEPROM - 经验 - 文件系统 - 发电机 - 地质分析仪 - GPU - 全息投影仪 - 因特网 - 物品栏控制器 - 拴绳 - 微控制器 - 调制解调器 - 运动传感器 - 导航 - 网络拆分器 - 活塞 - 红石 - 运动红石机构 - 机器人 - 屏幕 - 告示牌 - 储罐控制器 - 牵引光束 - 转运器 - 隧道 - 世界传感器
::: 其它 访问组件 - 信号
::: 模组联动 应用能源