提供: Minecraft Modding Wiki
(→dan200.computercraft.api.lua: ILuaTask解説追加) |
細 (→dan200.computercraft.api.lua: 記述修正) |
||
27行目: | 27行目: | ||
*;ILuaTask | *;ILuaTask | ||
*:メインスレッドで実行させるタスクを'''''実装'''する'' | *:メインスレッドで実行させるタスクを'''''実装'''する'' | ||
− | *:ILuaContext.executeMainThreadTask() や ILuaContext. | + | *:ILuaContext.executeMainThreadTask() や ILuaContext.issueMainThreadTask() で実行 |
*例外 | *例外 |
2015年4月23日 (木) 19:19時点における版
この記事は"Minecraft Forge Universal 10.13.0.x~"及び"ComputerCraft 1.73~"を前提MODとしています。 |
目次
ComputerCraft 1.73のAPIクラス構成
「実装する」と書かれているものは追加したい機能に応じて実装する必要のあるインターフェース。
以下「Computer」は特に断りのない限りComputerとTurtleを指す。
dan200.computercraft.api
- クラス
- ComputerCraftAPI
- ComputerCraft APIへの静的エントリーポイント。ComputerCraftへの各種登録等
dan200.computercraft.api.filesystem
- インターフェース
- IMount
- Computerへマウント可能な架空のファイルシステム(読み込み専用)
- ComputerCraftAPI.createResourceMount() で取得。IComputerAccess.mount() でComputerへマウント
- IWritableMount
- Computerへマウント可能な架空のファイルシステム(読み書き可能)。IMount のサブインターフェース
- ComputerCraftAPI.createSaveDirMount() で取得。IComputerAccess.mountWritable() や IComputerAccess.mount() でComputerへマウント
dan200.computercraft.api.lua
- インターフェース
- ILuaContext
- Computerから周辺機器やILuaObjectへ渡され、タスクを実行したり、処理を中断してイベントを待ったりすることが可能なメソッドを提供する
- ILuaObject
- IPeripheral.callMethod()等で返されるカスタムオブジェクトを実装する
- ILuaTask
- メインスレッドで実行させるタスクを実装する
- ILuaContext.executeMainThreadTask() や ILuaContext.issueMainThreadTask() で実行
- 例外
- LuaException
- Lua内での例外。指定メソッド内でthrowすると処理を中断してComputerにエラーメッセージを表示できる
dan200.computercraft.api.media
- インターフェース
- IMedia
- Disk DriveなどにセットしてComputerから利用可能なメディアを実装する
- createDataMount() で IMount を返せば記録メディアとなり、getAudioRecordName() でリソース名を返せば音楽メディアとなる
- Itemのサブクラスで実装した場合、ComputerCraftのデフォルトMediaProviderを利用できるためIMediaProvider(後述)の実装が不要になる
- IMediaProvider
- Disk DriveなどにセットされたアイテムのItemStackから対応した IMedia を提供するために実装する
- ComputerCraftAPI.registerMediaProvider() でComputerCraftに登録する
dan200.computercraft.api.peripheral
- インターフェース
- IComputerAccess
- Computerから周辺機器へ渡され、周辺機器から呼出し可能なメソッドを提供する
- IPeripheral
- 周辺機器の動作を実装する
- 実装クラスのインスタンスを返すように実装した IPeripheralProvider のインスタンスを ComputerCraftAPI.registerPeripheralProvider() でComputerCraftに登録する
- IPeripheralProvider
- 特定のブロックを周辺機器として扱うための IPeripheral を提供するために実装する
- ComputerCraftAPI.registerPeripheralProvider() でComputerCraftに登録する
dan200.computercraft.api.redstone
- インターフェース
- IBundledRedstoneProvider
- 16チャンネル(ON/OFFのみ)のレッドストーン出力を提供するために実装する
- ComputerCraftAPI.registerBundledRedstoneProvider() でComputerCraftに登録する
dan200.computercraft.api.turtle
- インターフェース
- ITurtleAccess
- TurtleからTurtle Upgradeへ渡され、Turtle Upgradeから呼出し可能なメソッドを提供する
- ITurtleCommand
- カスタム・タートル・コマンドを実行するために実装する
- ITurtleAccess.executeCommand() で使用する
- ITurtleUpgrade
- Turtle Upgradeの定義を実装する
- ComputerCraftAPI.registerTurtleUpgrade() でComputerCraftに登録する
- クラス
- TurtleCommandResult
- Turtleが実行したコマンドの成否を表す
- ITurtleUpgrade.useTool() や ITurtleCommand.execute() の戻り値として使う
- 列挙型
- TurtleAnimation
- Turtle行動時のアニメーションの種類
- { None, MoveForward, MoveBack, MoveUp, MoveDown, TurnLeft, TurnRight, SwingLeftTool, SwingRightTool, Wait }
- TurtleSide
- Turtle Upgradeが装着されるTurtleの方向を表す
- { Left, Right }
- TurtleUpgradeType
- Turtle Upgradeのタイプ
- { Tool, Peripheral }
- TurtleVerb
- ToolタイプのTurtle UpgradeにおけるTurtleの行動の種類
- { Dig, Attack }