API > Term


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

このページでは Term API について解説する。

参考資料:
執筆時のバージョン:
  • ComputerCraft 1.55 for Minecraft 1.6.2




Term API

コンピュータやタートル、モニターの画面への出力を制御する。
出力文字列のフォーマットを整えるだけでなく、アスキーアートを描くのにも使える。

term.redirect関数で出力先をモニターへ切り替えた場合は、Peripheral APIで呼び出せるモニターのメソッドのラッパーAPIとして働く。

write

  • term.write( text )
  • text(文字列)を画面へ出力する
  • 戻り値:nil

文字列 text は画面のカーソル位置から出力される。
term.write関数は、print関数と違い文字列末尾では自動的に改行をせず、次の文字列は文字列 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()
  • カーソル位置を取得する
  • 戻り値:数値型(x), 数値型(y)。カーソル位置の座標(x, y

画面の左上は 1, 1。

例:
print( term.getCursorPos() )
カーソル位置を取得し画面に表示する。

setCursorPos

  • term.setCursorPos( x , y )
  • カーソル位置を整数の座標 x(数値) , y(数値)にセットする
  • 戻り値:nil

例:
term.setCursorPos( 1 , 1 )
カーソルを画面左上へ移動する。

local oldx, oldy = term.getCursorPos()
term.setCursorPos( 1 , oldy )
現在のカーソル位置を取得し、カーソルを現在の行の先頭へ移動する。

setCursorBlink

  • term.setCursorBlink( state )
  • state(ブーリアン)がtrueの場合はカーソルの点滅をONにし、falseの場合はOFFにする
  • 戻り値:nil

例:
term.setCursorBlink(true)
sleep(3)
term.setCursorBlink(false)
sleep(3)
カーソルの点滅を3秒間ONにし、さらに3秒間OFFにする。

getSize

  • term.getSize()
  • 画面のサイズ(右下の座標)を取得する
  • 戻り値:数値型(x), 数値型(y)。画面のサイズ(x, y

例:
local w, h = term.getSize()
term.setCursorPos(w,1)
画面のサイズを取得し、カーソルを1行目の右端へ移動する

scroll

  • term.scroll( n )
  • 画面を整数n(数値)行だけスクロールする
  • 戻り値:nil

redirect

  • term.redirect( monitor )
  • 出力画面をmonitorperipheral.wrap関数で取得したモニターのオブジェクト)に切り替える
  • 戻り値: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( color )
  • 以降の文字色を色定数color(数値)に変更する
  • 戻り値:nil

関数名は term.setTexColour(イギリス綴り)でも可。
colorColors APIの色定数
colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。
複数のビットが1の場合は最上位ビットの色になる。colorの値が正しくない場合はエラーとなり、色はデフォルト(白)に戻る。

setBackgroundColor

【1.45-】
  • term.setBackgroundColor( color )
  • 以降の背景色を色定数color(数値)に変更する
  • 戻り値:nil

関数名は term.setBackgroundColour(イギリス綴り)でも可。
colorColors APIの色定数
colors.white、colors.black 以外の色は Advanced Computer、Advanced Monitor専用。
複数のビットが1の場合は最上位ビットの色になる。colorの値が正しくない場合はエラーとなり色は変わらないが、文字色がデフォルト(白)に戻る。