FC2ブログ
RPG製作講座
こちらのコンテンツはHSP3の基礎命令を覚えながら
HSP(3.0)で RPGを作ってみようという講座です。

HSP初心者の方や、RPGのソースコードを参考にしたい
という方におすすめです。
STEP.1-1
タイトルとウィンドウの変更
新しく扱う命令
  • screen命令
  • title命令
何をするのか?
  • screen命令でHSP3のウィンドウを表示させてみよう。
  • title命令でタイトルバーのタイトルを変更してみよう。
STEP.1-2
フォントサイズの変更とメッセージの表示
新しく扱う命令
  • font命令
  • mes命令
何をするのか?
  • font命令でフォントの設定を変更してみよう。
  • mes命令で画面に文字を表示してみよう。
STEP.1-3
繰り返し処理と描写先の変更
新しく扱う命令
  • repeat命令
  • loop命令
  • pos命令
何をするのか?
  • repeat命令で繰り返しの処理を命令してみよう。
  • loop命令でrepeat 命令の終わりを宣言しよう。
  • pos命令で文字の描写先を指定してみよう。
STEP.1-4
キー入力と待ち時間
新しく扱う命令
  • stick命令
  • wait命令
何をするのか?
  • stick命令でキー入力を所得しよう。
  • wait命令でプログラムを一時中断してみよう。
STEP.1-5
塗りつぶしと色変更と再描写
新しく扱う命令
  • boxf命令
  • color命令」
  • redraw命令
何をするのか?
  • boxf命令で短径を描写してみよう。
  • color命令で色の指定をしてみよう。
  • redraw命令で描写モードを切り替えてみよう。
STEP.1-6
乱数発生と時間・日付の取得
新しく扱う命令
「RANDOMIZE 命令」と「RND命令」と「GETTIME命令」

RANDOMIZE 命令で乱数発生の準備をしよう。
RND命令で実際に乱数を発生させよう。
GETTIME命令で現在の時刻データを取得してみよう。
STEP.2-1
ラベルとサブルーチン
新しく扱う命令
「GOTO命令」と「GOSUB命令」と「RETURN命令」

GOTO命令で指定ラベルにジャンプしてみよう。
GOSUB命令でサブルーチンにジャンプしてみよう。
RETURN命令でサブルーチンから復帰してみよう。
STEP.2-2
配列変数と配列の要素
新しく扱う命令
「DIM命令」と「LENGTH命令」

DIM命令で配列変数を作成してみよう。
LENGTH命令で配列の要素を取得してみよう。
STEP.2-3
画像の読み込みと画像コピー
新しく扱う命令
「BUFFER命令」と「PICLOAD命令」
「GSEL命令」と「GCOPY命令」

BUFFER命令で仮想ウィンドウを作ってみよう。
PICLOAD命令で画像ファイルを読み込んでみよう。
GSEL命令で描写先ウィンドウを切り替えてみよう。
GCOPY命令で画像ファイルをコピーしてみよう。
STEP.2-4
画面のコピーモードと比較処理
新しく扱う命令
「GMODE命令」と「SWITCH命令」と「CASE命令」
「SWBREAK命令」と「SWEND」

GMODE命令でウィンドウのコピーモードの指定をしよう。
SWITCH命令で比較ブロックの開始を宣言しよう。
CASE命令で比較値の指定をしよう。
SWBREAK命令で比較実行の脱出をしてみよう。
SWEND命令で比較ブロックの終了を宣言しよう。
STEP.2-5
テキストデータの読み込みと割り当て
新しく扱う命令
「SDIM命令」と「NOTESEL命令」と「NOTELOAD命令」
「NOTEGET命令」と「GETSTR命令」と「STRSIZE命令」
「INT命令」

SDIM命令で文字列型の配列変数を作成してみよう。
NOTESEL命令で対象バッファを指定しよう。
NOTELOAD命令でバッファにテキストデータを読み込んでみよう。
NOTEGET命令でバッファの指定行を読み込んでみよう。
GETSTR命令でバッファから文字列を読み込んでみよう。
STRSIZE命令で読み出しバイト数を取得してみよう。
INT命令で文字列データを整数値に変換しよう。
STEP.2-6
キャラクターのアニメーションと終了選択
新しく扱う命令
「ONEXIT命令」と「DIALOG命令」

ONEXIT命令で終了時のラベルジャンプ指定を決めよう。
DIALOG命令でダイアログを表示してみよう。
SRPG製作
ただただ勢い任せに作ったSRPG(シミュレーションRPG)の
サンプル・ソースコードや実行ファイル等を公開しています。

ブログを始めるきっかけとなった作品です(随時更新)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

HSPでRPG製作「STEP2-1. ラベルとサブルーチン」を公開しました。

HSPRPG製作「STEP2-1. ラベルとサブルーチン」を公開しました。

ステップ2-1.0 ラベルとサブルーチン

STEP1では全ての処理の流れ(ルーチン)を[ repeat -1 loop ]の中で行っていました。
しかし、これからソースコードが長くなっていくにつれて、どの行で
どんな処理をしているのか分かりにくくなりますよね?

そこで『ラベル』という目印の着いたソースコード群を、メインルーチンとは別の場所に
作っておき、そこに一時的にジャンプして処理します。
これらの枝分かれしたルーチンのことを『サブルーチン』と呼びます。

注目キーワード
・goto命令
・gosub命令
・return命令


ステップ2-1.1 新規命令の解説

goto命令指定したラベルにジャンプします。

gosub命令指定ラベルにサブルーチンジャンプ
[ return命令 ]でメインルーチンに戻る必要があるので注意です。
ネストが深すぎますというエラーはサブルーチンからしっかり戻っていないのが原因です。

return命令サブルーチンから復帰します(元の場所に戻る)
また、このように戻り値を指定し[ c ]受け取ることも出来ます。
	repeat 10
a = 5
b = cnt
gosub *keisan

d = stat // 戻り値を代入
mes ""+d
loop
stop

*keisan
c = a * b
return c

実行結果はこうなります
step2-1_2

ソースコードと実行ファイルまとまった圧縮ファイルはこちらです。(80.9 KB)
http://pokpokgame.huuryuu.com/rpgmake/step2-1.zip

ステップ2-1.2 ソースコードの入力

こちらのソースコードを入力してください。

	screen 0, 400, 400
randomize 6
title "step2-1"

font "", 20
x = 0 // X座標
y = 0 // Y座標

// メインルーチン
*main
redraw 0
wait 5

// 背景を塗りつぶし
color 255, 255, 255
boxf
color 0, 0, 0

gosub *draw_chr
gosub *check_key


redraw 1
goto *main

// キャラクター描写

*draw_chr
pos x*20, y*20
mes "●"
return

// キー入力チェック
*check_key
stick key, 15
if key = 1 : x -= 1 : if x < 0 : x = 0
if key = 2 : y -= 1 : if y < 0 : y = 0
if key = 4 : x += 1 : if x >= 20 : x = 19
if key = 8 : y += 1 : if y >= 20 : y = 19
if key > 8 : a = x : b = y
return

ステップ2-1.3 実行結果

さて、入力できましたか?
入力出来たら、F5キーを押してください

このように表示されましたか?出来ていればOKです
step2-1

ラベルの追加だけで、ソースコードの内容自体は変化していませんが
サブルーチンはソースコードが大量に増えた時、大いに役に立つのでとても重要なものです。
スポンサーサイト

テーマ : ゲーム製作 関連
ジャンル : ゲーム

tag : HSP ソース 講座 RPG

コメントの投稿

非公開コメント

No title

HSP って "return ほげ" みたいに、メソッドの戻り値のような記述ができたんですね…知りませんでした。。。勉強不足です。

あと、ラベルの名前は「動詞ほにゃらら」ってした方がいいと思います。…人それぞれですかね?

No title

コメントありがとうございます。
ラベル名ですか(--;)深く考えたことはなかったのですが
「動詞+●●」の方がプログラム的には自然かもしれません。
サンプルソース直しておきます。
カテゴリ
検索フォーム
カレンダー
12 | 2019/01 | 02
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -



月別アーカイブ
リンク
RSSリンクの表示
プロフィール

アクアブルブル

Author:アクアブルブル
HSPを使ってゲームを製作しています。

ランキングに参加しています。


ブログジャンキーにも登録してます。


リンクもご自由にどうぞ。

こちらは掲示板入り口

ユーザータグ

HSPコンテスト 経営シミュレーション ふりーむ SLG 講座 TRPG ブログ フリーソフト Elona A* google ニコニコ動画 MAP ソース ミスティックシード パズル HSP コンテスト SRPG ワーネバ RPG データ構造 JavaScript ゲーム TonyuSystem シナリオ アルゴリズム クォータービュー 

最新コメント
フリーソフトで面白いゲーム まとめサイト
スポンサードリンク


アフィリエイトのリンクシェアで、チャリティ活動



更新確認ツール

FC2カウンタ



googleボットチェッカー

Googleボットチェッカー

msnボットチェッカー

MSNボットチェッカー



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