はじめてのHSP

 以前からプログラミングをやりたいと思っており、市販されているプログラミングソフトは値段が高く、その値段に気後れしておりました。そんな時に出会ったのがHSPです。HSPとは、ホットスーププロセッサーの略で、Winで動作可能な、フリーウェア言語です。Visual Basic や、Visual C++などに比べて、比較的原始的ですが、その反面、気軽なプログラミングを可能としてくれるのが利点です。さらにexeファイルを作り、世間に発表する時にも一切の料金を必要としません。
 
 まずプログラミングと聞くと 思い浮かぶのが、“意味の分からない文字の羅列”なわけで、(少なくとも私はそうでした)とっつき難いとは思うんですが、ちょっとした知識と心構えを持ってのぞめば、簡単だということがわかります。

プログラミングは、簡単に言うとどういうことかというと、“私達が文字を打ちこみます、そしてそれを機械が上の行から順番に実行してくれる”というわけです。

ではまず、HSPをダウンロードしましょう(ここのHPから)。そして解凍しましょう。hsp25というフォルダーができます。そのフォルダーの中の、hsed2.exeをダブルクリックして起動させましょう。すると、HSPスクリプトエディタが現れます。プログラミングをするには、そのなかの黒いところに、文字を書いていくことになります。

 


実際どういうふうに書いていったらいいのかを知るためには、エディタのメニューに「ヘルプ(H)」の中の、「HSPのプログラミングガイドを開く」または、「HSP命令索引を開く」をクリックして、それらを読んでいきます。はじめは、とりあえず、おおざっぱに目を通しておきましょう。

実際の書き方は難しくありません。例えば、1.bmpという画像を表示しようとすると、
(1.bmpというファイルを同じディレクトリに置いて)


picload "1.bmp"


 
と、書くだけです。picloadというのは“画像を取り込んで画面に表示する”という命令の名前です。命令の名前の後には、必ず半角でスペ−スを開けます。その後に命令の詳細指定をしていきます。(この場合は、ファイル名を記しました。)命令の詳細指定は、命令によって記し方が決められているので、それに従って書いていけばいいのです。

命令の数は、常設されているだけでもたくさんあります。ですが、そのすべてを細かく覚える必要はありません。“命令の索引”があるので、必要な時に、必要なものをその時に調べればいいのです。

 
先ほど“上の行から順番に実行してくれる”といいましたが、厳密にいうと間違いともいえます。命令の中に、“今いる行(場所)から、指定した行(場所)にジャンプするという命令”がいくつかあるからです。それによって、複雑なプログラミングができるようになっています。戻る命令がない限りはあくまで上から下へと実行されていくことになります。
例えば、
 


*main
 await 1
goto *main


というふうに書くと、上から順番に実行され、goto *mainの行まで来ると、*mainの行へと戻り、再び上から順番に実行され、goto *mainの行まで来ると、さらに*mainの行へと戻るということが永遠に繰り返されます。(await 1の命令は今は特には気にしません。もちろん他の命令を付け足しても構いません。)永遠に同じ事をしていてもしょうがないので、さらに書き足すと、例えば、


*main
 stick p,1
 if p&256 : gosub *minor1
 await 1
goto *main

*minor1
 picload "1.bmp"
return



と書いてみます。stick p,1 の行で、キーボードのどのキーを押しているかをチェックします。この場合、マウスの左ボタンが押されていたならば、if p&256 : gosub *minor1の行で、*minor1の行へと移動します。picload "1.bmp"の行を実行して、returnの行で元来た行へもどります。つまり*mainとgoto *mainの間を繰り返して、ボタンが押されないかをずっと機械が待っているといえます。

このプログラムは、基本的な型のプログラムで、これを組み合わせ、応用し、命令を足して、プログラムを大きくしていきます。そうすればRPGゲームでもなんでも頑張り次第で作ることができます。