AX

電霊ログ

私のやってるサイト、電子の言霊の活動ログ

カテゴリークラウド

タグリスト

最近のトラックバック

月別アーカイブ(タブ)

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  • [HSP超入門] ラベル2

「予備知識その3」
今まで云うのを忘れてましたが、命令やシステム変数など HSPで既に使われている名前の事を「予約語」といいます。

では始めます。(授業みたいでやな感じ・・・)
まず、プログラミング言語によってはラベルはなかったり、あっても使うべきでは無い!としている物も多くあります。HSPではラベルを基本としているため無くてはなら無い物になっています。

ラベルのもっとも基本的な使い方が、前回やった goto 命令で飛ばす事です。
「ラベルの例1」

mes "始め"
goto *label
mes "ここは実行されない"
*label
mes "終わり"



ラベルは好きな場所から 指定した場所へと実行ぎょうを移動させる事が出来る物ですが、その性質を使ってループを作る事が出来ます。固まらない様に wait 命令を入れています(詳しい理由は過去の記事を参照)
「ラベルの例2」

*main
mes "抜けないループ"

wait 50

goto *main


repeat 命令を使っても出来ますが、こっちを好んで使っている人もいます。(私もラベル派)
自分で変数に回数を入れて if 命令で判定すればちゃんとループから抜ける事も出来ます。

*kurikaesi

mes "繰り替えし"
count=count+1
if count >= 5 :goto *owari

wait 50
goto *kurikaesi


*owari

mes "終わり"

このスクリプトではループ用のラベルと ループから抜け出すためのラベルの2つを使用しています。

そしてやっぱり HSPでの一番のラベル活用法は「ボタン」だと思います。
ボタンとはパソコンを使っていてよく目にするこれ↓
20070327025501.png
です。

このボタンは button 命令で簡単に作る事が出来ます。使い方は、
button パラメーター1 , パラメーター2
の様にbottun 命令に2つのパラメーターを指定します。

指定するパラメーターは次の通りです。
パラメーター1 = ボタンに表示したい文字列
パラメーター2 = ボタンを押した時にジャンプするラベル名


ではそれを踏まえて実際にボタンを作って見るとこの様になります。

button "ボタン",*label
stop

*label
mes "ボタンを押しました。"
stop


と、ここでいくつか大事な事があります。
・指定したラベルが存在しない時はエラーになる。
「エラーになる例1」

button "ボタン",*label
stop

mes "ボタンを押しました。"
stop


・ボタン名は "" で囲む。
「button 100,*label」や「button ,*label」の様な事は出来ません。ボタン名は必ず文字列として指令しないといけません。ボタン名を略したい時も、「button "",*label」の様に文字列として指定します。
・stop を入れる。
ボタン命令は少し特殊で、stop でプログラムを止めてしまっても、ボタンを押せばそのジャンプしたラベルの先から再開させる事が出来ます。(上の例ではジャンプ先で更に stop で止めています)

などの様にラベルを使った機能は、他の命令と比べて違う所があるので、なれない内は大変かもしれません。特に全体の動きを把握するのに苦労すると思います。

button 命令の様な、ウィンドウに貼り付けて使う事の出来る機能の事を、HSPではオブジェクトと言います。これは後々やっていくとして取り合えずそういう機能が色々あるんだ!程度にでも覚えて置いて下さい。

ここまででようやく、この講座を書き始める直前に書いたスクリプトが理解できる所までたどり着きました。しかし プログラムを書く上で覚えて置かなくてはならない基礎がまだまだ沢山あります。

この講座では一応それらの基礎が一通り終わるまで続けて行きたいと思いますので、今後とも気長にお付き合い下されば嬉しいです。
この講座の中で、分からない事や質問などがあれば、コメントとして書きこんでください。私の分かる範囲で答えて行きたいと思います。
関連記事

コメント

コメントの投稿

   管理者にだけ表示を許可する
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。