株式会社リサイクルループ

ブログ

回収依頼お問合わせ

株式会社リサイクルループ

回収依頼

MENU

【HSPプログラミング講座#20】RPGマップ表示してみよう

プログラミング講座アイキャッチ

今回のHSPプログラミング講座はRPG風のマップを表示してみたいと思います。 前回の講座ではスプライト機能を使って街の画像を貼り付けてみました。今回は応用編ということで、更にスプライトについて理解を深めようと思います。 なので新しいことは一切出てきませんので安心してください!  理解しやすいように座標をずらしながらペタペタ貼り付けているだけです。 キャラクタ番号の変化、スプライト番号の変化、座標の変化に注目してくださいね!

RPG風のマップ表示に使う画像は、前回のプログラミング講座で使ったものと一緒です。 下記の画像を使っていきます。

HSPプログラミング_スプライト準備01

【プログラムの内容】

今回のプログラムでやることは、上記の8種類の画像を使って、1種類ずつに分けてキャラクタ登録をしていく作業と、スプライトにキャラクタを割り当てて座標配置する作業の2つです。 やっていることはこれだけです。

HSPプログラミング_マップ配置01

8行目から15行目までは、mapbg.bmpファイルの画像から1種類ずつ画像を切り出して、キャラクタ番号に登録している作業です。 キャラクタ番号を1つずつ変えながら、取り出したい画像の位置(x,y座標)をずらしていますよ。 わかりますかね?

20行目から36行目まではスプライト番号を1つずつ変えながら、画面に配置したいx,y座標と、キャラクタ番号を登録しています。 1列に5枚の画像を配置しています。 それを3段分貼り付けていますので、全部で15枚の画像を貼り付けています。

それでは実行結果を確認してみますか!

HSPプログラミング_マップ配置02

こんな感じで表示されました~ ホンモノのRPGみたいな画面になりましたね。 勇者の画像があればドラクエみたいにできますね~

今回のプログラムでは、できるだけシンプルに理解しやすくするために、繰り返し命令や配列変数などは使わずに、マップを配置するプログラムを1行1行書いているます。 マップが大きくなると大変なので、普通はrepeat命令などの繰り返し命令で上手に貼り付けていきます。

今回は、これ以上は無理って言うくらい、シンプルに理解しやすくしたつもりですが、それでもキャラクタ番号とか、スプライトとか理解が難しいですよね。

あとややこしいのが、mapbg.bmpの画像キャラクタ登録するときの座標と、画面に表示する座標もでてくるので、頭の中がごちゃごちゃに混ざってしまいそうで、これも難しく感じる原因かもしれませんね。

わからなければ繰り返し読み返してみてくださいね。 前回のプログラミング講座が一番シンプルですから、そちらも見返しながらやってみてください。