【7】関数と変数

新しくスクリプトを作成すると、スクリプトエディターの1行目に「print("Hello world!")」という文が表示されます。実際には不要なプログラムなので消すことになりますが、ついでに少しだけ解説したいと思います。

関数

printは、関数の1つです。関数とはあるデータを受け取り、定められた独自の処理を実行し、その結果を返す命令のことです。printは、「Outputウィンドウに指定した文字や数値を表示する」という関数になります。Luaに標準装備されているものや、ロブロックス独自のもの(APIと呼ばれる)まで、数多くの関数が用意されています。
テストプレイすると下記のように表示されるでしょう。(Outputウィンドウには、様々な情報が表示されるかもしれませんが、スクロールすると「Hello world!」という文字が見つかると思います)

Outputウインドウが表示されていない場合
VIEWタブのOutputをONにすると、Output(出力)ウィンドウが表示されます。

引数(パラメーター)

関数名の後ろにカッコ(  )を付け、その中に引数(パラメーター)を指定します。パラメーターがない関数や、複数のパラメーターが指定できる関数があります。

パラメーターに指定できるものは、大きく分けると下記の3タイプになります。

文字

printでは、”Hello World!”という文字を引数として指定しています。文字列を指定したい場合は、必ずダブルクォーテーションで囲むというルールがあります。(シングルクォーテーションでもOK)

(例)

  • print(“You just joined the game!”)
  • print(“There are 50 players left”)
  • print(“10”)

数値

ダブルクォーテーションで囲まなかった数字は、数値として扱われます。print関数は、文字でも数値でも指定できますが、関数によっては数値だけしか指定できないものがあります。そのような関数で、文字を引数として指定すると、実行時にエラーになります。

(例)

  • print(1)
  • print(10)
  • print(123)

変数

ダブルクォーテーションで囲まなかった文字は、変数として扱われます。ただし、使用できない文字などがあり、その場合は、実行時にエラーになります。スペースは使用できない文字の1つなので、「print(Hello World!)」とするとエラーになります。その他にも命令文などで使用する予約語などは使用できません。

(例)

  • print(a)
  • print(val)
  • print(Hello)

もしろん、変数に値を代入してから使います。

  • a=1 print(a)
  • val=5+5 print(val)
  • Hello=”Hello World!” print(Hello)

実行時にエラーになると、Outputウィンドウに赤い文字で表示されます。そこをクリックするだけで、エラーになった行に移動できますので修正するのに便利です。

Lua言語について

ロブロックスのためのLua言語の日本語の書籍は今現在ありません。ただし、一般的なLua言語の書籍はいくつかありますので、そちらが参考になると思います。ネットで「Lua入門」と検索すると、それなりに有用なサイトもありますので、そちらも参考にしてください。

コメントを残す