マドノマグラの初心者自作ゲーム制作日誌 迷走モード
プログラミング初心者が自作ゲームを作成してみようとする動きを記す。現在迷走中。
ブログ履歴
2009/11/09: Rubyで適当版自分用関連記事リンク作成プログラムを作る
2009/06/04: Visual C++(DXライブラリ使用)の環境を整えてみるも休止状態に
2009/03/17: ActionScript勉強の環境を整えるも結局休止状態に
2006/07/15: とりあえず分岐型ゲームを作る グリーンタワーVer1.2 ダウンロード(zip)
2006/07/02: ブログスタート。NScripterで何かを作ろうとする
[PR]
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
文字スプライトのボタン化 spbtn
さて、ようやくボタン化してみようというわけだ。
spbtn スプライト番号,ボタン番号
スプライト番号:既に定義しているスプライト番号
ボタン番号:どのボタンが押されたのかを処理するための定義番号
ちなみに、文字列スプライトでは、マウスカーソルがスプライトに乗っていないときは、RGBコード1の色を表示、乗ったらRGBコード2の色を表示するようだ。
さて、次はボタン処理である。
ボタン定義とおまじない。 btndef
ボタン作りには下ごしらえが必要なわけだ。
btndef "画像ファイル"
これで、ロールオーバー用のボタン画像が定義できるわけだ。(でも、今回はボタンに画像を使わないのでパス)
btndef clear
これで、ボタン定義がクリアされるわけである。
ボタン定義の必要性が一つしかなかったとしても、今後、プログラムを付け足すことになったときに、クリアしておいた方が面倒がなくなる。
ということで、おまじないとしてつけておくべきということで。
次は、そのスプライトをボタン化してみるのである。
文字列スプライトの表示 lsp print
そろそろ、タイトルっぽいものを作りたくなってくるわけである。
最初の画面に、START、CONTINUE、みたいなものが表示されるゲームが多いというわけで、そういうものができればいいなというわけである。
その第一歩として、文字列を好きな場所に表示させてみるのである。
lsp スプライト番号,";s/縦幅,横幅,文字間;RGBコード1RGBコード2文字列",左上隅x座標,左上隅y座標
スプライト番号:そのまんまスプライト番号を定義するような感じ。
縦幅:1文字の縦幅(ピクセル)
横幅:1文字の横幅(ピクセル)
文字間:そのまんま文字間
RGBコード1RGBコード2…:階層ごとに違う色の文字列スプライトを置くのにつかえる。
文字列:そのまんま表示される文字列
RGBコード1RGBコード2
x座標:スプライトの左隅のx座標
y座標:スプライトの左隅のy座標
このスプライトを表示させるには、通常はprint命令がいるようだ。
print, エフェクト番号
ただし、サンプル文は、ボタン化命令 spbtn (今回は説明なし)を用いているので、print命令は使っていないので注意。
次からはbtn系を勉強することにする。
画像・音ファイル圧縮 テキストデータの暗号化 nsa nsaarc.exe nscmake.exe
ゲームを作ったところで、中身がバレバレだとかっこ悪いというわけで、中身を秘密にしちゃおうというのが、今回の画像・音ファイル圧縮と、テキストデータの暗号化である。
まあ、この段階では音はまったく使ってないんだけれども……
スクリプトの定義ブロックに nsa と書くべし。
(素材を圧縮したnasファイルを使うという意味)
↓
ファイルの整理
(完成したゲームの入っているフォルダから必要の無い画像・音楽・テキストを退避)
↓
nsaarc.exe を実行。完成したゲームのフォルダを選択して圧縮
↓
その圧縮ファイルを収めるフォルダを選択。
↓
arc.nsa の出来上がり。
次は、テキストデータの暗号化である。
nscmake.exe で、暗号化である。方法は同様なので、省略。
これで、見えなくなったわけだ。めでたしめでたし。
バージョン表示 versionstr
古いバージョンのゲームをして、なんだバグがあるじゃないか!と騒いでしまった経験がある人もいるのではないだろうか。
そう、バージョンなどの表示が無いと、そういうトラブルだってありかねないのである。
というわけで、バージョン情報のダイアログで表示される文字を変えていく方法である。
versionstr "1行目文字","2行目文字"
1行目文字:1行目に表示される文字列
2行目文字:2行目に表示される文字列
次はタイトル画面っぽいのを作っていこうかなと思うのであった。
タイトル表示 caption
ウィンドウの左上に付くタイトルを付けたい、または色々と変えてみたいときはこれ。
caption "タイトル"
タイトル:文字通り、左上に表示されるタイトル
場面によって、微妙にタイトル部分を変えてみるというのもいいかもしれない。
次回はさらにどうでもいいところをいじってみる。
文字表示の位置を設定してみる。locate
たまに、一文が画面の真ん中らへんに出てくる演出がある。
NScripterで、brや全角スペースを駆使すれば、その状態を作ることはできる。
でも、ちょっと面倒だよなあ。
というときに役立つのがこれである。
locate 文字数,行数
文字数:横方向に送る(全角スペースをx個分)
行数:縦方向に送る(brをy個分)
まあ、個人的にはこれはあまり使わないのかもしれないが、念のためということで。
次はさらにどうでもいい部分をいじってみることにしよう。
立ち絵の消去をやってみる cl
キャラクターが登場したからといって、そのままずっといるわけにもいかない。
そう、そのキャラクターがその場を立ち去る演出がしたいときに困るのである。
というわけで、立ち絵の消去をやってみるのだった。
*下準備(前回と同様)*
まずはnscr.exeと同じフォルダ内にimageフォルダを作った。
そして、昼行灯素材倉庫(管理人:文月さん)から、ダウンロード及び解凍をして得た、ji.Bmpをimageフォルダ内に入れた。
今回使うのはこの構文
cl 消去する立ち絵の位置,エフェクト番号
消去する立ち絵の位置:これはld文で表示させたもの。
エフェクト番号:いつものとおり。
なお、背景を変えると、立ち絵も消えるようである。
さて、次は何をしてみようか。
少し、どうでもいいところをいじってみようかな?
立ち絵を表示してみる ld
ほとんどのAVGでは必ずといっていいほど、何らかのキャラクターが画面に現れるという演出がある。
そう、いわゆる簡単な立ち絵の出し方を見てみることにするのであった。
*下準備*
まずはnscr.exeと同じフォルダ内にimageフォルダを作った。
そして、昼行灯素材倉庫(管理人:文月さん)から、ダウンロード及び解凍をして得た、ji.Bmpをimageフォルダ内に入れた。
今回使うのはこの構文
ld 立ち絵の位置,":透過形式;画像ファイル",エフェクト番号
立ち絵の位置:文字通り位置を設定するもの。(3種類選べる)
l:left(左)
c:center(中央)
r:right(右)
透過形式:
c:コピー 透明色設定はなし。単純にコピーします。
l:左上設定 左上のピクセルの色を透過色として指定する。
r:右上設定 右上のピクセルの色を透過色として指定する。
a:アルファブレンド。(かなり重要らしいが今回はパス)
エフェクト番号:もう勉強したよね。
なんで透過形式が必要になるかというのは、
画像ファイルは四角形をしているから。
*そのまま立ち絵として表示すると周りの余計な部分も表示されてしまうのはサンプル文のとおり。
あと、立ち絵が上にくる順番は右→中央→左になっているようだ。(数少ない経験則でまだまだ未確認)
次は、立ち絵の消去をやってみることにしよう。