蒼穹の刺客達 第13章感想
第13章プレイ前に
作者のスフィルナさんから↓の吉報が!
@kathewka 掲載感謝します。 クラチェンアイテムが入荷してるはずです。第13章は難関なのでお気をつけて…… 後、キャラ紹介もどういう感じか楽しみにしてます。必要であれば設定も送りましょうか?
— スフィルナ (@Sfilnas) February 6, 2014
クラスチェンジアイテムが…ある!
ご連絡を頂いてすぐさまキャンプ内の道具屋を覗いてみると、確かにクラスチェンジアイテムがありました。しかも結構安い!やったー!
蒼穹の刺客達 途中まで遊んだ感想など
蒼穹の刺客達
スフィルナさん作。現代版ファイアーエムブレムとでも言うべきシナリオ。
剣、斧、槍。そして銃器が飛び交う独特の世界観が特徴。
(連想)配列をフラットにする
function array_flatten($arr, $key = null) { $tmp = []; if (is_array($arr)) foreach ($arr as $key => $value) $tmp = array_merge($tmp, $this->__array_flatten($value, $key)); else { if (is_numeric($key)) $tmp[] = $arr; else $tmp[$key] = $arr; } return $tmp; }
これで
array( array( '0' => array( 'foo' => 'bar' ), '1' => array( 'faa' => 'bee' ) ) );
という構造の(連想)配列が
array( 'foo' => 'bar', 'faa' => 'bee' );
とフラット化する。ただの配列の値については0から始まる連番がキーに割り当てられる。
連想配列で同じキーの値があった時に、後方の値が優先される(前方の値が後方の値によって上書きされる)ことに注意。
JavaScript向けPlatinum製マップ(.fmf)読み込みスクリプトを公開
こんにちは!
デモ
使い方
本スクリプトには次のクラスとメソッドが用意されています。
PlMapクラス
プロパティ
- mapWidth マップの横幅(チップ数)
- mapHeight マップの縦幅(チップ数)
- chipWidth マップチップひとつの横幅(px)
- chipHeight マップチップひとつの縦幅(px)
- layerCount レイヤの数
- bitCount レイヤーデータのビットカウント(8 | 16)
- src マップファイルのパス
- loaded 読み込みが完了(true|false(初期値))
メソッド
- load( (path) )
- (path) マップファイル(.fmf)のパス(省略可)
マップファイルを読み込み、各種データをプロパティに格納します。
読み込み完了時、loadedプロパティにtrueが格納されます。
- getChip( x, y, layer )
- x X座標
- y Y座標
- layer レイヤ番号
指定した座標およびレイヤのマップチップ番号を返します。
マップファイルが読み込まれていないときはfalseを返します。
おまけ
そもそも何でPlatinumを使うの?
例えばJavaScriptでゲームを作る際、enchant.jsであればenchantMapEditorなど、専用に作られたマップエディタは幾つか存在するけれど、いずれもレイヤへの未対応などまだ機能が充実しているとは言い難い。*1
そこで、汎用マップエディタとして、2Dゲーム向けマップの作成に必要な機能を取り揃えたPlatinumを利用し、JS製ゲームのマップ作成を大きく楽にしようというのがこのスクリプトの狙い。
*1:JavaScript向けゲームエンジンとして著名なIMPACT付属のマップエディタ等、高機能なものもあるが、IMPACTは個人利用には些か値が張るので、ここでは割愛
はてなグッズ福袋欲しい!
風邪ひいてました
休み前の金曜日~成人の日の夜までがっつり風邪をひいていました。 |||orz
ブログの更新も滞ってしまいましたね。てへぺろっ!
全然余談ですが、「ブログ」と入力しようとして、なぜか「ぼると」と入力していましたね。意味わかりませんね。疲れてるのよ