りよねこたわ~

ロールプレイングゲーム作ってみたいにゃ~でもどうしたらいいのにゃ~?

キャラクターの向きでイベントを起こすにゃ~改良版にゃ~

もっと簡単な方法があったにゃ~(*´ω`*)

 

ω・`) まずはイベントに接触して、向きによる処理を起動するにゃ~。

ここは変わらないかにゃ~。

f:id:riyoneko:20180620174517j:plain

トリガーを「プレイヤーからの接触」にして、セルフスイッチAをONにしてるにゃ~。

 

ω・`) 次が改良版にゃ~。

ω・`)b 今回考えたのは、プレイヤーの座標情報を取得して処理する方法にゃ~。

f:id:riyoneko:20180620174533j:plain

トリガーを「並列処理」にして、「実行内容」を繰り返し実行してるにゃ~。

実行内容は、最初の3行でプレイヤーのX座標、Y座標、向きを変数に入れてるにゃ~。

4行目以降は、向きでイベントを起こす場合の処理を記述してるにゃ~。

ω・`) この画像の例にゃと、X座標が4、Y座標が1、向きが下のとき、セルフスイッチBをON(実行したい処理を実行)にしてるにゃ~。

 

ω・`) この方法のいいところは、このイベントだけで完結するところにゃ~。

プレイヤーの位置が変われば、セルフスイッチAがOFFになってこの並列処理は終了するから、前みたくイベントの四隅に並列処理を終了させるスクリプトを置かなくてもいいんにゃ~。

 

(`・v・´) ドヤッ!

 

ω・`) うにゃ~?テストはどうなってるのかってにゃ~?

ω-`) 修正するところがいっぱいあってたのしいにゃ~w

 

ふぉんとの話にゃ~

ω・`) 全部のマップつなげてテスト中にゃ~。

ω-`) でも最初の方に作ったオープニングとかイベントとか、なんか味気なくてにゃ~。

ω-`) 作り直しながらテストしてるにゃ~。

 

ω・`) というわけで、今日はフォントの話にゃ~。

いままで何気なく使ってたけど、フォントにもライセンスとか利用規約とかあるんだよにゃ~。

とくにゲームを作って配布する場合、再配布っていうのにあたるんにゃ~。

商用利用OKでも再配布はだめにゃ~ってフォントもあるらしいから気をつけないといけないのにゃ~。

あとは、Windowsに最初から入っているからって、気軽に使うのもよくないみたいにゃ~。

っ´ーωー`)っ なかなか難しいよにゃ~。

 

ちょっと調べてみたんにゃけど、自由度が高くてゲームのイメージに合ったフォントってなかなかないんだよにゃ~。

ちなみに、RPGツクールMVでデフォルトで使われているフォントは、「M+ 1m regular」にゃ~。

これはかなり自由度の高いフォントで、商用利用も再配布もおっけ~なんにゃ~。

 

ω-`) M+フォントでも細かく種類があるから、そのなかから選んで使おうかにゃ~。

 

壁の画像がちらついて見えるにゃ~

ω・`) 前から気になってたんにゃけど、3Dダンジョンの画面がちらつく?ときがあるんにゃ~。

ω-`) ちらつくっていうかにゃ~、うまく表現できないにゃ~。

 

ω・`) このゲームは、2Dマップの上に背景画像を被せて、その上に壁画像を表示させてるんにゃ~。

ω・`) 方向転換したり前に進んだりしたときに、その画像を更新して3Dダンジョンのように見せてるんにゃ~。

ω-`) なんていうのかにゃ~、ちゃんと壁画像は表示されるんにゃけど、更新される一瞬背景がみえちゃってるんにゃ~。

 

ω・`) 調べてみたら、それっぽい症状のことがでてきたにゃ~。

ω・`)っ ピクチャの表示について - ツクマテ

 

ω・`) なるほどにゃ~、ツクールMVの仕様なのかにゃ~。

ω・`) あらかじめ画像を表示させておくといいのかにゃ~?

さっそく試してみないとにゃッ!(`・ω・´)シャキーン

 

そろそろ次の段階にいけるかにゃ~?

ω・`) 20枚目のマップのイベントと、第1部のエンディングを作成中にゃ~。

ω・`) うにゃ~?前回と同じにゃ~?

ω-`) き、気のせいじゃにゃいかにゃ~?w

 

ま~くん 「りよちゃん、進み具合はどう?」

ω-`) 「順調に遅れてるにゃ~w」

ま~くん 「またいつもの悪い癖で、あちこち寄り道してあれこれ機能付け加えてたんじゃないの?」

ω-`) 「ち、ちが・・・わなくなくないにゃ~w」

ま~くん 「ほどほどにしないとね。」

ω・`) 「大丈夫にゃッ!そろそろ全体通してテストとかバランス調整とかに入るんにゃッ!」

ま~くん 「お~、もちろんテストは手伝うよ。」

ω・´) 「もちょっと待っててにゃッ!(`・ω・´)シャキーン」

 

このゲームの3Dダンジョンはこんな感じでできてるにゃ~【その7にゃ~】

ω・`) 20枚目のイベントと、第1部のエンディングを作成中にゃ~。

w▼´) ふふふにゃ~、マップとイベント作成も大詰めってところかにゃ~?

ω・`) このあとは、全体のマップとイベントを見直して修正、全体のテストって流れになると思うにゃ~。

 

ω・`) 前回はタイルセット毎に壁を定義したから、今回はそれをもとに壁画像を描画していくにゃ~。

詳しいことは、以下のURLに載ってるから見てみてにゃ~。

lucky-duet.com

 

まずは、次のような背景画像を用意するにゃ~。

ファイル名は「background.png」で、置く場所はプロジェクト内の「img/pictures」にゃ~。

f:id:riyoneko:20180523180049p:plain

この画像を以下のスクリプトで2Dマップ上に表示するにゃ~。

//////////

var background = new Sprite();

background.bitmap = ImageManager.loadPicture('background');

background.x = 0;

background.y = 0;

this.addChild(background);

//////////

ω・`) ちょっと(かなり)省略しちゃったかにゃ~?w

これでテストプレイすると、次のような画像になるにゃ~。

f:id:riyoneko:20180523180114j:plain

ω・`)b 左が背景画像を被せる前で、右が背景画像を被せた後にゃ~。

ω・`) あとは次のような壁画像を作って、同じ要領で読み込むんにゃ~。

f:id:riyoneko:20180523180150p:plain f:id:riyoneko:20180523180205p:plain f:id:riyoneko:20180523180240p:plain f:id:riyoneko:20180523180300p:plain

ω・`) 描画する位置は、xとyの値で調整するにゃ~。

一枚ずつ描画していくイメージにゃ~。

f:id:riyoneko:20180523180639g:plain

どうかにゃ~?3Dダンジョンに見えるかにゃ~? 

 

ω・`) これで、このゲームの3Dダンジョンがどういうふうにできているか、だいたい説明できたかにゃ~。

ω-`) これって3Dダンジョンっぽく見せてるから、疑似3Dダンジョンっていうのかにゃ~?

ω-`) 細かいことはいいんにゃ~。