API > Term

「API/Term」の編集履歴(バックアップ)一覧はこちら

API/Term」(2013/07/28 (日) 12:21:51) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

このページでは Term API について解説する。 参考資料: -[[Term API>http://computercraft.info/wiki/index.php?title=Term_(API)]] 執筆時のバージョン: -ComputerCraft 1.55 for Minecraft 1.6.2 ---- #contents ---- *Term API コンピュータやタートル、モニターの画面への出力を制御する。 出力文字列のフォーマットを整えるだけでなく、アスキーアートを描くのにも使える。 term.redirect関数で出力先をモニターへ切り替えた場合は、[[Peripheral API>API/Peripheral]]で呼び出せる[[モニターのメソッド>API/Peripheral#id_ffee119b]]のラッパーAPIとして働く。 **write -term.write( &i(){text} ) -&i(){text}(文字列)を画面へ出力する -戻り値:nil 文字列 &i(){text} は画面のカーソル位置から出力される。 term.write関数は、print関数と違い文字列末尾では自動的に改行をせず、次の文字列は文字列 &i(){text} の直後から表示される。表示位置は後述のterm.setCursorPos関数などで指定する。 例: term.write( "Hello, World!" ) 画面に文字列「Hello, World!」を出力する。 **clear -term.clear() -画面をクリアする -戻り値:nil カーソル位置は変わらない。 例: term.clear() term.setCursorPos( 1 , 1 ) 画面をクリアし、カーソル位置を 1, 1(初期位置)へ移動する。 **clearLine -term.clearLine() -カーソルのある行をクリアする -戻り値:nil カーソル位置は変わらない。 **getCursorPos -term.getCursorPos() -カーソル位置を取得する -戻り値:数値型(&i(){x}), 数値型(&i(){y})。カーソル位置の座標(&i(){x}, &i(){y}) 画面の左上は 1, 1。 例: print( term.getCursorPos() ) カーソル位置を取得し画面に表示する。 **setCursorPos -term.setCursorPos( &i(){x} , &i(){y} ) -カーソル位置を整数の座標 &i(){x}(数値) , &i(){y}(数値)にセットする -戻り値:nil 例: term.setCursorPos( 1 , 1 ) カーソルを画面左上へ移動する。 local oldx, oldy = term.getCursorPos() term.setCursorPos( 1 , oldy ) 現在のカーソル位置を取得し、カーソルを現在の行の先頭へ移動する。 **setCursorBlink -term.setCursorBlink( &i(){state} ) -&i(){state}(ブーリアン)がtrueの場合はカーソルの点滅をONにし、falseの場合はOFFにする -戻り値:nil 例: term.setCursorBlink(true) sleep(3) term.setCursorBlink(false) sleep(3) カーソルの点滅を3秒間ONにし、さらに3秒間OFFにする。 **getSize -term.getSize() -画面のサイズ(右下の座標)を取得する -戻り値:数値型(&i(){x}), 数値型(&i(){y})。画面のサイズ(&i(){x}, &i(){y}) 例: local w, h = term.getSize() term.setCursorPos(w,1) 画面のサイズを取得し、カーソルを1行目の右端へ移動する **scroll -term.scroll( &i(){n} ) -画面を整数&i(){n}(数値)行だけスクロールする -戻り値:nil **redirect -term.redirect( &i(){monitor} ) -出力画面を&i(){monitor}([[peripheral.wrap関数>API/Peripheral#id_65259010]]で取得したモニターのオブジェクト)に切り替える -戻り値:nil 【1.48-】切り替えたモニターがAdvanced Monitorの場合、モニター画面に対してクリックなどを行うと、通常のmonitor_touchイベントに加えてmouse系イベントも発生する。ちなみに、モニターへ出力しているのがAdvanced Computer/Turtleの場合、その状態でGUIに対してクリックなどを行ってもmouse系イベントが発生する。 例: term.redirect( peripheral.wrap( "right" ) ) print("Hello World!") 出力先を右にあるモニターへ切り替えて、文字列「Hello World!」を表示する。 **restore -term.restore() -出力先を元へ戻す -戻り値:nil 出力先をモニターへ切り替た後、出力先を元(コンピュータやタートルの画面)に戻すために使う。 例: term.redirect( peripheral.wrap( "right" ) ) -- この間、文字はモニターの方へ出力される -- term.restore() 出力先を右にあるモニターへ切り替えた後、出力先を元に戻す。 **isColor 【1.45-】 -term.isColor() -現在の表示デバイス(コンピュータ、モニター)がカラーに対応しているかを取得する。 -戻り値:ブーリアン型。カラーに対応しているならtrue、していないならfalseが返る。 関数名は term.isColour(イギリス綴り)でも可。 CC1.45現在でtrueを返すのはAdvanced ComputerとAdvanced Monitorのみである。 **setTextColor 【1.45-】 -term.setTextColor( &i(){color} ) -以降の文字色を色定数&i(){color}(数値)に変更する -戻り値:nil 関数名は term.setTexColour(イギリス綴り)でも可。 &i(){color}は[[Colors APIの色定数>API/Redstone & Colors#id_3d3f6f8b]]。 colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。 複数のビットが1の場合は最上位ビットの色になる。&i(){color}の値が正しくない場合はエラーとなり、色はデフォルト(白)に戻る。 **setBackgroundColor 【1.45-】 -term.setBackgroundColor( &i(){color} ) -以降の背景色を色定数&i(){color}(数値)に変更する -戻り値:nil 関数名は term.setBackgroundColour(イギリス綴り)でも可。 &i(){color}は[[Colors APIの色定数>API/Redstone & Colors#id_3d3f6f8b]]。 colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。 複数のビットが1の場合は最上位ビットの色になる。&i(){color}の値が正しくない場合はエラーとなり色は変わらないが、文字色がデフォルト(白)に戻る。
このページでは Term API について解説する。 参考資料: -[[Term API>http://computercraft.info/wiki/index.php?title=Term_(API)]] 執筆時のバージョン: -ComputerCraft 1.55 for Minecraft 1.6.2 ---- #contents ---- *Term API コンピュータやタートル、モニターの画面への出力を制御する。 出力文字列のフォーマットを整えるだけでなく、アスキーアートを描くのにも使える。 term.redirect関数で出力先をモニターへ切り替えた場合は、[[Peripheral API>API/Peripheral]]で呼び出せる[[モニターのメソッド>API/Peripheral#id_ffee119b]]のラッパーAPIとして働く。 **write -term.write( &i(){text} ) -&i(){text}(文字列)を画面へ出力する -戻り値:nil 文字列 &i(){text} は画面のカーソル位置から出力される。 term.write関数は、print関数と違い文字列末尾では自動的に改行をせず、次の文字列は文字列 &i(){text} の直後から表示される。表示位置は後述のterm.setCursorPos関数などで指定する。 例: term.write( "Hello, World!" ) 画面に文字列「Hello, World!」を出力する。 **clear -term.clear() -画面をクリアする -戻り値:nil カーソル位置は変わらない。 例: term.clear() term.setCursorPos( 1 , 1 ) 画面をクリアし、カーソル位置を 1, 1(初期位置)へ移動する。 **clearLine -term.clearLine() -カーソルのある行をクリアする -戻り値:nil カーソル位置は変わらない。 **getCursorPos -term.getCursorPos() -カーソル位置を取得する -戻り値:数値型(&i(){x}), 数値型(&i(){y})。カーソル位置の座標(&i(){x}, &i(){y}) 画面の左上は 1, 1。 例: print( term.getCursorPos() ) カーソル位置を取得し画面に表示する。 **setCursorPos -term.setCursorPos( &i(){x} , &i(){y} ) -カーソル位置を整数の座標 &i(){x}(数値) , &i(){y}(数値)にセットする -戻り値:nil 例: term.setCursorPos( 1 , 1 ) カーソルを画面左上へ移動する。 local oldx, oldy = term.getCursorPos() term.setCursorPos( 1 , oldy ) 現在のカーソル位置を取得し、カーソルを現在の行の先頭へ移動する。 **setCursorBlink -term.setCursorBlink( &i(){state} ) -&i(){state}(ブーリアン)がtrueの場合はカーソルの点滅をONにし、falseの場合はOFFにする -戻り値:nil 例: term.setCursorBlink(true) sleep(3) term.setCursorBlink(false) sleep(3) カーソルの点滅を3秒間ONにし、さらに3秒間OFFにする。 **getSize -term.getSize() -画面のサイズ(右下の座標)を取得する -戻り値:数値型(&i(){x}), 数値型(&i(){y})。画面のサイズ(&i(){x}, &i(){y}) 例: local w, h = term.getSize() term.setCursorPos(w,1) 画面のサイズを取得し、カーソルを1行目の右端へ移動する **scroll -term.scroll( &i(){n} ) -画面を整数&i(){n}(数値)行だけスクロールする -戻り値:nil **redirect -term.redirect( &i(){monitor} ) -出力画面を&i(){monitor}([[peripheral.wrap関数>API/Peripheral#id_65259010]]で取得したモニターのオブジェクト)に切り替える -戻り値:nil 【1.48-】切り替えたモニターがAdvanced Monitorの場合、モニター画面に対してクリックなどを行うと、通常のmonitor_touchイベントに加えてmouse系イベントも発生する。ちなみに、モニターへ出力しているのがAdvanced Computer/Turtleの場合、その状態でGUIに対してクリックなどを行ってもmouse系イベントが発生する。 例: term.redirect( peripheral.wrap( "right" ) ) print("Hello World!") 出力先を右にあるモニターへ切り替えて、文字列「Hello World!」を表示する。 **restore -term.restore() -出力先を元へ戻す -戻り値:nil 出力先をモニターへ切り替た後、出力先を元(コンピュータやタートルの画面)に戻すために使う。 例: term.redirect( peripheral.wrap( "right" ) ) -- この間、文字はモニターの方へ出力される -- term.restore() 出力先を右にあるモニターへ切り替えた後、出力先を元に戻す。 **isColor 【1.45-】 -term.isColor() -現在の表示デバイス(コンピュータ、モニター)がカラーに対応しているかを取得する。 -戻り値:ブーリアン型。カラーに対応しているならtrue、していないならfalseが返る。 関数名は term.isColour(イギリス綴り)でも可。 CC1.55現在でtrueを返すのはAdvanced ComputerとAdvanced Turtle、Advanced Monitorのみである。 **setTextColor 【1.45-】 -term.setTextColor( &i(){color} ) -以降の文字色を色定数&i(){color}(数値)に変更する -戻り値:nil 関数名は term.setTexColour(イギリス綴り)でも可。 &i(){color}は[[Colors APIの色定数>API/Redstone & Colors#id_3d3f6f8b]]。 colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。 複数のビットが1の場合は最上位ビットの色になる。&i(){color}の値が正しくない場合はエラーとなり、色はデフォルト(白)に戻る。 **setBackgroundColor 【1.45-】 -term.setBackgroundColor( &i(){color} ) -以降の背景色を色定数&i(){color}(数値)に変更する -戻り値:nil 関数名は term.setBackgroundColour(イギリス綴り)でも可。 &i(){color}は[[Colors APIの色定数>API/Redstone & Colors#id_3d3f6f8b]]。 colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。 複数のビットが1の場合は最上位ビットの色になる。&i(){color}の値が正しくない場合はエラーとなり色は変わらないが、文字色がデフォルト(白)に戻る。

表示オプション

横に並べて表示:
変化行の前後のみ表示: