提供: Minecraft Modding Wiki
移動先: 案内検索

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 編集中の文章
1行目: 1行目:
 
{{Stb}}
 
{{Stb}}
{{前提MOD|reqmod="Minecraft Forge Universal 10.13.0.x~"及び"ComputerCraft 1.65~"}}
+
{{前提MOD|reqmod="Minecraft Forge Universal 10.13.0.x~"及び"ComputerCraft 1.64~"}}
  
 
ComputerCraftのComputerから利用可能な周辺機器やTurtleに装着可能なTurtle Upgradeなどを追加することができる。
 
ComputerCraftのComputerから利用可能な周辺機器やTurtleに装着可能なTurtle Upgradeなどを追加することができる。
7行目: 7行目:
 
ComputerCraft APIを利用して以下のようなブロックやアイテムを追加できる
 
ComputerCraft APIを利用して以下のようなブロックやアイテムを追加できる
  
* ComputerやTurtleから利用可能な周辺機器ブロック
+
*ComputerやTurtleから利用可能な周辺機器ブロック
* Turtleへ装着可能なツールや周辺機器(Turtle Upgrade)
+
*Turtleへ装着可能なツールと周辺機器(Turtle Upgrade)
* Disk Driveなどからアクセス可能なメディアアイテム
+
<!-- 以下調査中
* ComputerやTurtleに対して16チャンネルのレッドストーン入出力が可能なブロック
+
*Disk Driveなどから読み込み可能なメディア
 +
*ComputerやTurtleに対して16チャンネルのレッドストーン入出力が可能なブロック
 +
-->
  
 
=== 開発環境への導入方法 ===
 
=== 開発環境への導入方法 ===
16行目: 18行目:
 
これらの導入方法は[[MOD開発環境を作る]]、[[MinecraftForge導入手順]]のページを参照。
 
これらの導入方法は[[MOD開発環境を作る]]、[[MinecraftForge導入手順]]のページを参照。
  
# ModdingするバージョンのComputerCraftをダウンロード
+
# ComputerCraftをダウンロード
 
#* http://www.computercraft.info/download/
 
#* http://www.computercraft.info/download/
 
# ダウンロードしたjarを解凍
 
# ダウンロードしたjarを解凍
 
#* 拡張子をzipに変更して解凍する
 
#* 拡張子をzipに変更して解凍する
 
# ソースコードを移動  
 
# ソースコードを移動  
#* 解凍したjar内のapi\srcファルダ内にある'''dan200'''フォルダを、(プロジェクトフォルダ)\src\api\javaフォルダ内に移動する
+
#* 解凍したjarのapi\srcフォルダ内にある「dan200」フォルダを、(プロジェクトフォルダ)\src\api\javaフォルダ内に移動する
#** 移動後は(プロジェクトフォルダ)\src\api\java\'''dan200'''となる
+
#** Eclipseで利用する場合、導入後にsrc/api/javaフォルダをビルド・パスでソース・フォルダとして使用する設定にする
#** Eclipseで利用する場合、導入後にパッケージ・エクスプローラーで「src/api/'''java'''」フォルダを右クリック→「ビルド・パス」→「ソース・フォルダとして使用」でソースフォルダに設定にする
+
#* APIをjarファイルとして導入していないので、チュートリアルでは「[[1.7でjar形式でないAPIを利用する方法]]」を参照の事
#* APIのドキュメント(英語)は解凍したjar内のapi\doc\index.html
+
#* APIのドキュメント(英語)は解凍したjarのapi\docフォルダにある
  
 
=== デバッグ方法 ===
 
=== デバッグ方法 ===
*'''プレイ環境上で行う場合''' (最終段階でのテストプレイ向き)
+
このAPIはリコンパイル時にエラーが出なくなるだけなので、modding環境上でのデバッグは「[[MinecraftForge導入手順#デバッグ]]」を参考にしつつ、modding環境のゲームフォルダ内のmodsフォルダに<u>CodeChickenCore dev版</u>とComputerCraftのjarをコピーした上で行う。
# 「[[MinecraftForge導入手順#リリース]]」を参考にmodのjarを生成する
 
# プレイ環境のゲームフォルダ内のmodsフォルダに自作modのjarとComputerCraftのjarを置く
 
# 通常のプレイと同じようにMinecraftを起動する
 
*'''Modding環境上で行う場合''' (開発段階でのトライアル・アンド・エラー向き)
 
# Modding環境のデバッグ時にComputerCraftが正しくロードされるようにする
 
#* '''1.76(Minecraft 1.8)まで''': Modding環境のゲームフォルダ内のmodsフォルダに<u>CodeChickenCore dev版</u>とComputerCraftのjarを置く
 
#** 通常のデバッグはこれでも問題ないが、配布前に一度はCodeChickenCoreのないプレイ環境上でのテストプレイを推奨(CodeChickenCoreがcatchしてしまって見落としてしまう例外がいくらか存在するため)
 
#* '''1.78(Minecraft 1.8.9)以降''':
 
#*# プロジェクトフォルダ内にlibフォルダを作成し、そのフォルダにComputerCraftのjarを置く
 
#*# build.gradle に以下の記述を追加する<source lang="groovy">dependencies { compile fileTree(dir: 'lib', include: '*.jar') }</source>
 
#*# libフォルダに置いたComputerCraftのjarを開発環境のビルドパスに追加する
 
#*# 「開発環境への導入方法」で追加した「src/api/java」をビルドパスから除去する
 
# 「[[MinecraftForge導入手順#デバッグ]]」を参考にmodding環境上でデバッグを開始する
 
  
 
=== 関連リンク ===
 
=== 関連リンク ===
* [http://www.computercraft.info/ ComputerCraft 公式]
+
*[http://www.computercraft.info/ ComputerCraft 公式]
* [http://www.computercraft.info/download/ ComputerCraft Download]
+
*[http://www.computercraft.info/download/ ComputerCraft Download]
* [http://www.computercraft.info/forums2/index.php?/forum/17- ComputerCraft Forums: Peripherals and Turtle Upgrades]
+
*[http://www.computercraft.info/forums2/index.php?/forum/17- ComputerCraft Forums: Peripherals and Turtle Upgrades]
* [http://www.computercraft.info/wiki/index.php?title=Turtle_Upgrade_IDs ComputerCraft Wiki: Turtle Upgrade IDs] - 1.75(MC 1.7.10)まで。1.76(MC 1.8)以降はUpgrade IDがResourceLocationになったため基本的に被らなくなった。
+
*[http://www.computercraft.info/wiki/index.php?title=Turtle_Upgrade_IDs ComputerCraft Wiki: Turtle Upgrade IDs]
 +
 
 +
== ComputerCraft API ==
 +
「'''''実装'''する''」と書かれているものは追加したい機能に応じて実装する必要のあるインターフェース。<br />
 +
以下「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 ===
API構成クラスの簡単な解説。詳細はAPI付属のJavadoc(英語)を参照。
+
*インターフェース
<!-- 今の所、CCのバージョンアップに伴い『APIのクラス構成・機能が変更された場合』に適宜追加しています
+
*;ILuaContext
        By NMS ( http://minecraftjp.info/modding/index.php/%E5%88%A9%E7%94%A8%E8%80%85:NMS ) -->
+
*:Computerから周辺機器やILuaObjectへ渡され、処理を中断してイベントを待つことが可能なメソッドを提供する
 +
*;ILuaObject
 +
*:IPeripheral.callMethod()で返されるカスタムオブジェクトを'''''実装'''する''
  
* [[ComputerCraft_API/CC1.76のクラス構成|ComputerCraft 1.76 (Minecraft 1.8)]] ※MC1.7からMC1.8への変更点を含む
+
*例外
* [[ComputerCraft_API/CC1.74のクラス構成|ComputerCraft 1.74 (Minecraft 1.7.10)]]
+
*;LuaException
 +
*:Lua内での例外。指定メソッド内でthrowすると処理を中断してComputerにエラーメッセージを表示できる
  
<!-- 同MCバージョン内のより新しいCCバージョンでAPIが更新されたために過去のものとなったページの項目を折り畳み -->
+
=== dan200.computercraft.api.media ===
<div class="mw-collapsible mw-collapsed wikitable">
+
*インターフェース
以下、過去のバージョン(折り畳まれています。展開ボタン→)
+
*;IMedia
<div class="mw-collapsible-content">
+
*:Disk DriveなどにセットしてComputerから利用可能なメディアを'''''実装'''する''
* [[ComputerCraft_API/CC1.73のクラス構成|ComputerCraft 1.73 (Minecraft 1.7.10)]]
+
*:createDataMount() で IMount を返せば記録メディアとなり、getAudioRecordName() でリソース名を返せば音楽メディアとなる
* [[ComputerCraft_API/CC1.65のクラス構成|ComputerCraft 1.65 (Minecraft 1.7.10)]]
+
*;IMediaProvider
</div>
+
*:Disk DriveなどでItemStackから対応した IMedia を提供するために'''''実装'''する''
</div>
+
*: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行動時のアニメーションの種類
 +
*:{ MoveBack, MoveDown, MoveForward, MoveUp, None, SwingLeftTool, SwingRightTool, TurnLeft, TurnRight, Wait }
 +
*;TurtleSide
 +
*:Turtle Upgradeが装着されるTurtleの方向を表す
 +
*:{ Left, Right }
 +
*;TurtleUpgradeType
 +
*:Turtle Upgradeのタイプ
 +
*:{ Peripheral, Tool }
 +
*;TurtleVerb
 +
*:ToolタイプのTurtle UpgradeにおけるTurtleの行動の種類
 +
*:{ Attack, Dig }
  
 
== チュートリアル ==
 
== チュートリアル ==
<!-- ページ名は ComputerCraft_API/[サンプルの動作確認をした一番古いCCバージョン]/[ページタイトル] としました(MC verだけなくCC ver単位でAPIの仕様変更に対応するため)
+
=== 周辺機器 ===
    チュートリアルは文末「です・ます」で書いています。チュートリアルの対応バージョン表示は適宜編集予定です
+
*[[ComputerCraft_API/周辺機器の追加|周辺機器の追加]]
        By NMS ( http://minecraftjp.info/modding/index.php/%E5%88%A9%E7%94%A8%E8%80%85:NMS ) -->
+
<!-- あったらいいな
 +
*リソースのマウント
  
{| class="wikitable"
+
=== タートルアップブレード ===
! scope="col"| 項目
+
*ツールタイプUpgaradeの追加
! scope="col"| バージョン別チュートリアル
+
*周辺機器タイプUpgaradeの追加
|-
 
! scope="row" colspan="2"| 周辺機器
 
|-
 
! scope="row"| 周辺機器の追加
 
|
 
* [[ComputerCraft_API/1.76/周辺機器の追加|1.76~1.79 (MC 1.8.x)]]
 
* [[ComputerCraft_API/1.65/周辺機器の追加|1.65~1.75 (MC 1.7.x)]]
 
|-
 
! scope="row"| 周辺機器メソッドの追加
 
|
 
* [[ComputerCraft_API/1.65/メソッドの追加|1.65~1.79 (MC 1.7.x~1.8.x)]]
 
|-
 
! scope="row"| 周辺機器イベントの発生
 
|
 
* [[ComputerCraft_API/1.65/イベントの発生|1.65~1.75 (MC 1.7.x)]]<br />△ MC1.8~でも参考可
 
|-
 
! scope="row" colspan="2"| TurtleUpgrade
 
|-
 
! scope="row"| ツールタイプTurtleの追加
 
|
 
* [[ComputerCraft_API/1.76/ツールタイプTurtleの追加|1.76~1.79 (MC 1.8.x)]]
 
* [[ComputerCraft_API/1.65/ツールタイプTurtleの追加|1.65~1.75 (MC 1.7.x)]]
 
|-
 
! scope="row"| 周辺機器タイプTurtleの追加
 
|
 
* [[ComputerCraft_API/1.76/周辺機器タイプTurtleの追加|1.76~1.79 (MC 1.8.x)]]
 
* [[ComputerCraft_API/1.65/周辺機器タイプTurtleの追加|1.65~1.75 (MC 1.7.x)]]
 
|-
 
! scope="row"| UpgradeNBTDataの利用
 
|
 
* [[ComputerCraft_API/1.65/UpgradeNBTDataの利用|1.65~1.79 (MC 1.7.x~1.8.x)]]
 
|-
 
! scope="row" colspan="2"| その他 CCAPI 全般
 
|-
 
! scope="row"| リソースのマウント
 
|
 
* [[ComputerCraft_API/1.65/リソースのマウント|1.65~1.79 (MC 1.7.x~1.8.x)]]
 
|-
 
! scope="row"| ILuaObjectの利用
 
|
 
* [[ComputerCraft_API/1.75/ILuaObjectの利用|1.75~1.79 (MC 1.7.x~1.8.x)]]
 
|}
 
  
<!--
+
=== メディア ===
**[[ComputerCraft_API/1.75/タスクの追加|タスクの追加]]
+
*音楽メディアの追加
-->
+
*記録メディアの追加
  
<!--
+
=== BundledRedstone ===
**[[ComputerCraft_API/1.75/TurtleCommandの追加|TurtleCommandの追加]]
+
*BundledRedstoneに入出力する周辺機器の追加
**[[ComputerCraft_API/1.75/TurtleAnimationの実行|TurtleAnimationの実行]]
 
 
-->
 
-->
{{Stb}}
 
 
[[カテゴリ:API]]
 

Minecraft Modding Wikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMinecraft Modding Wiki:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート: