実践2:文字の表示

AtomEditorもしくはTTS内部エディタでスクリプトの編集画面を開く。
Globalに以下の内容が記述されていることを確認する。
--[[ Lua code. See documentation: https://api.tabletopsimulator.com/ --]] 

--[[ The onLoad event is called after the game save finishes loading. --]]
function onLoad()
    --[[ print('onLoad!') --]]
end 

--[[ The onUpdate event is called once per frame. --]]
function onUpdate()
    --[[ print('onUpdate loop!') --]]
end

  • function onLoad() はゲームがロードされた際に1回だけ実行される関数。
  • function onUpdate() は毎フレーム実行される関数。

文字の表示

チャットに文字を表示する

まずは最初から入力されているプログラムを流用し、ゲームがロードされた際にチャット欄に文字を表示してみる。
以下のようにコメント化(コメントアウト)されているprint文のコメント化を解除してみよう。【print()参考】
function onLoad()
    print('onLoad!')
end 

function onUpdate()
    --[[ print('onUpdate loop!') --]]
end

修正したらスクリプトをセーブする。
Atomなら「Ctrl+Shift+S」、内部エディタなら[Save & Play]。

セーブが完了するとゲームルームが再ロードされる。
チャット欄に「onLoad!」と表示されていることを確認する。


ちなみに print() で表示した文字はルームのホストにのみ表示される。
ルーム内全員のチャットに見えるようにするには printToAll() を使用する。【printToAll()参考】
function onLoad()
    printToAll('onLoad!')
end

指定したカラーのプレイヤーのチャットで見えるようにするには printToColor() を使用する。【printToColor()参考】
function onLoad()
    printToColor('onLoad!',"White")
end

画面とチャット欄に文字を表示する

チャット欄と同時に画面にも文字を表示することができる。
broadcast() を使用すると指定したプレイヤーに表示する。【broadcast()参考】
function onLoad()
    pl = Player.White
    pl.broadcast('Hello!')
end

ルーム内全員に表示するには broadcastToAll() を使用する。【broadcastToAll()参考】
function onLoad()
    broadcastToAll('Hello!',"White")
end

指定したカラーのプレイヤーに表示するには broadcastToColor() を使用する。【broadcastToColor()参考】
function onLoad()
    broadcastToColor('Hello!',"White","White")
end

文字を表示することで出来ること

例えば、初期セットアップを自動化した際に、処理が完了したら「セットアップ完了」と表示しても良いかもしれない。
例えば、スクリプトの途中で変数にどんな値が入っているのか解析するのに使ってもいいかもしれない。

タグ:

+ タグ編集
  • タグ:
最終更新:2020年10月08日 11:52