まったくのプログラミング素人の筆者がC++/HSPを使用してSTG(シューティングゲーム)を作っていく過程を書くブログでしたが最近は脱線気味。プログラミング以外にも、ゲーム関連の記事、日々の戯言など。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
セーブ/ロード機能を実装してみました。
こんな感じの画面でグラフィック面を使用してセーブ/ロードを行います。
プチコンには元々MEM$を使って記録することが出来るようになっているのですが、このMEM$を使った
場合だと256文字分しか保存出来ないんですよね。
で、どうしたものかと思っていたらおちゃめさんのプチコンTipsに良い記事が掲載されていました。
具体的な方法としてはGPSET命令を使う方法。
GPSET命令はグラフィック面に点を描画する命令なのですが、命令表を見ると
GPSET x座標, y座標 [ ,色 ]
と言う書式になります。グラフィック面は256x192ドット使えます。色は256色まで指定可能です。
つまり、256x192=49152分の場所に色の数=0~255までの数字を記録出来るって事になるんです。
おちゃめさんのページでは256以上の保存方法を紹介されていましたが、自分の場合は256までで
十分だったので、そのままGPSET X,Y,Nって感じでNに保存したい変数を指定して保存するようにして
N=GSPOIT (X,Y)って感じで読み出しするようにしました。
それでも、グラフィック面1枚では足らずに2枚使用するようになってしまったのですがw
また、前回はファイル名は固定だったのですが、今回は自由にファイル名を付けられるように変更。
これはINPUT命令を使うと簡単に実装出来ました^^
で、楽譜データ、音色データ、波形データ、その他ループポイントやベロシティなど、保存出来そうな物
は全て保存出来るようには出来たのですが楽譜データが多いと読み込みに非常に時間がかかるのが
ツライ所です^^;
シンセ部分でも再生出来るようにボタンを追加したり、鍵盤のグラフィックを変更したり。
ループポイントの設定やセーブ/ロードボタン、メーターなどを追加。
ベロシティの表示、最後の音符に繋げれる音符の長さを全音符5つまでに増やしたりなど。
といった感じで、おおかた完成したかなーと言った感じなので、後はバグ取りとソフトの名前を
考えないと駄目なのですが、どちらも非常に大変そうな気がするんですよね。(特にバグ取り)
そして、出来ればTALK機能を使って歌わせるように出来たりしたら、もっと楽しそうダナーと思っている
のですが、このTALK機能が曲者で音長を同じにしても喋る言葉で長さが変わったり、音程もマチマチ
だったりして、実装するのは大変そうかなぁと思ったり。
そもそも、既に9999行まで使用してしまっているので(プチコンのエディタは9999行が最大)実装する
スペースを開けるのに一苦労だなと思いつつ、アレコレと悩んでおります^^;
こんな感じの画面でグラフィック面を使用してセーブ/ロードを行います。
プチコンには元々MEM$を使って記録することが出来るようになっているのですが、このMEM$を使った
場合だと256文字分しか保存出来ないんですよね。
で、どうしたものかと思っていたらおちゃめさんのプチコンTipsに良い記事が掲載されていました。
具体的な方法としてはGPSET命令を使う方法。
GPSET命令はグラフィック面に点を描画する命令なのですが、命令表を見ると
GPSET x座標, y座標 [ ,色 ]
と言う書式になります。グラフィック面は256x192ドット使えます。色は256色まで指定可能です。
つまり、256x192=49152分の場所に色の数=0~255までの数字を記録出来るって事になるんです。
おちゃめさんのページでは256以上の保存方法を紹介されていましたが、自分の場合は256までで
十分だったので、そのままGPSET X,Y,Nって感じでNに保存したい変数を指定して保存するようにして
N=GSPOIT (X,Y)って感じで読み出しするようにしました。
それでも、グラフィック面1枚では足らずに2枚使用するようになってしまったのですがw
また、前回はファイル名は固定だったのですが、今回は自由にファイル名を付けられるように変更。
これはINPUT命令を使うと簡単に実装出来ました^^
で、楽譜データ、音色データ、波形データ、その他ループポイントやベロシティなど、保存出来そうな物
は全て保存出来るようには出来たのですが楽譜データが多いと読み込みに非常に時間がかかるのが
ツライ所です^^;
シンセ部分でも再生出来るようにボタンを追加したり、鍵盤のグラフィックを変更したり。
ループポイントの設定やセーブ/ロードボタン、メーターなどを追加。
ベロシティの表示、最後の音符に繋げれる音符の長さを全音符5つまでに増やしたりなど。
といった感じで、おおかた完成したかなーと言った感じなので、後はバグ取りとソフトの名前を
考えないと駄目なのですが、どちらも非常に大変そうな気がするんですよね。(特にバグ取り)
そして、出来ればTALK機能を使って歌わせるように出来たりしたら、もっと楽しそうダナーと思っている
のですが、このTALK機能が曲者で音長を同じにしても喋る言葉で長さが変わったり、音程もマチマチ
だったりして、実装するのは大変そうかなぁと思ったり。
そもそも、既に9999行まで使用してしまっているので(プチコンのエディタは9999行が最大)実装する
スペースを開けるのに一苦労だなと思いつつ、アレコレと悩んでおります^^;
PR
カレンダー
10 | 2024/11 | 12 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
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 |
リンク
カテゴリー
最新記事
(04/04)
(12/26)
(12/25)
(11/17)
(10/11)
プロフィール
HN:
kt.
性別:
男性
自己紹介:
プログラミング経験は昔ファミリーベーシックでちょっとさわったくらい。
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
好きなSTGは、怒首領蜂大往生、エスプガルーダ(2)等の弾幕STGやら雷電シリーズなんかの非弾幕、バトルガレッガ、グラディウスシリーズ、R-TYPE等、STGなら何でも好きです。
音楽がカッコイイSTGが特に好きで、並木学氏は最高!
ブログ内検索
最古記事