== 引数のあるスクリプト == ---- === スクリプトの呼び出し === 処理内容が多くてスクリプトが長くなるときには、 内容ごとに別のスクリプトに分けて記述し、 これを呼び出して使うことができます。 ==== 例1 ==== とんぼのスクリプト1がこのように記述されているとき、 . {{attachment:call01.png}} スクリプト1をスクリプト2の中で利用することができます。 . {{attachment:call02.png}} この場合 * スクリプト2を'''チクタク'''にし * スクリプト1は'''ノーマル'''にしておく ことに注意して下さい。 ==== 例2 ==== カウンタを使って場合わけをした場合です。 処理内容によりスクリプトを分割しています。 * スクリプト1に動きを * スクリプト2にカウンタの処理を 記述しています。 . {{attachment:call03.png}} === 例3 === さらに場合わけを行って、ちょっとだけ異なった動作をさせる場合です。 1つの動きは * 回す 5 * 進める 10 もう1つの動きは * 回す -5 * 進める 10 と、回す量だけが異なっています。 共通する処理内容だけをスクリプト1の中に書き、 これをスクリプト2で利用することにすれば 次のように書けます。 . {{attachment:call04.png}} . {{attachment:call05.png}} しかし、これでは動きについての命令が スクリプト1とスクリプト2に分かれてしまい プログラムとしては分かりにくいものになってしまいます。 ---- === 引数のあるスクリプト === . スクリプト間で値を受け渡すことができます。 . 値を渡すには引数(ひきすう)を使います。 ==== 呼び出される側のスクリプトに引数を追加 ==== 呼び出される側のスクリプトを表示し 右上のメニューボタンを押します。 . {{attachment:call07.png}} 引数を追加を選びます。 . {{attachment:call06.png}} 引数が追加されます。 . {{attachment:call08.png}} ==== 引数の値を利用する ==== 引数の部分をドラッグして 引数の値を利用したい箇所に 割り当てます。 . {{attachment:call09.png}} このようになります。 . {{attachment:call10.png}} ==== 引数のあるスクリプトの形 ==== 引数のあるスクリプトは * スクリプトの上部は左のように、 * ビューアの表示は右のように なっています。 . {{attachment:call12b.png}} 同じ形式で、左の number と右の 5 が対応しているのが分かります。 ==== 引数のあるスクリプトを使う ==== 引数のあるスクリプトは使い方がちょっと違います。 * 引数の値を指定して使います。 * チクタクにすることはできません。 ビューアで見るとこのようになっています。 . {{attachment:call11.png}} !を押すと スクリプト1:の右にある5を引数の値として 実行されます。 . {{attachment:call12a.png}} 赤で示した箇所が対応し、 Numberと書かれている箇所が5だとして実行されます。 ただし、スクリプトがこのように変わるわけではありません。 . {{attachment:call13.png}} 引数の値を10に変えて実行すると . {{attachment:call14.png}} numberの箇所が10だとして実行されます。 . {{attachment:call15.png}} ==== 例4 ==== 引数のあるスクリプトを使うと 例3のスクリプト2はこのように書けます。 . {{attachment:call16.png}} ---- === 補足 === 引数も変数と同様に、型を指定することができます。 . {{attachment:call17.png}} よく使うのは次の3つです。 * boolean はい/いいえ * number 数値 * string 文字