Invaders War(2014)

大学での「Processingを使ったゲームを作ろう」の課題作品です。

github.com

www.youtube.com
 ProcessingはJavaなので文法は私の好きなflash(as3)に似ていて良かったです。しかしFlash特有の表示オブジェクトという概念に私は取りつかれていたので、そんな状態でProcessingを触って驚きました。Processingの世界には表示オブジェクトがないのです。Flashで言うgraphicsだけ世界です。
 Flasherな私はこの状態ではゲームは作れないと判断したので、表示オブジェクトを作ることにしました。今思うと表示オブジェクトを作ってる時は楽しかったですね!
 ゲーム自体ですが、操作やHPゲージ等はテラリアをパクってます。キャラクターデザインはインベーダーゲームのパクりです。パクリのオンパレードですがすいません。

工夫

 結構工夫したところは、ステージ情報の外部ファイル化です。地形データや敵のスポーン位置は全て外部ファイルに置いてあります。Processingが起動時にそれを読み込んでステージに適用する流れです。
 その、地形データやスポーン位置は実はただの画像ファイルです。

ステージ1のプレイ画面

f:id:takumus:20160904132807p:plain

このステージ1は以下の三枚の画像から出来ています。

ヒットレイヤー

f:id:takumus:20160904132049p:plain

デザイン用レイヤー

f:id:takumus:20160904132051p:plain

スポーン位置用レイヤー

f:id:takumus:20160904132052p:plain

 これらの画像を読み込んでステージを構成しています。なのでステージは画像編集ソフトがあればオリジナルのものがすぐに作れるという事です!
 物理演算というほどでもないですが、そこら辺の処理は結構ごり押しです。ヒットレイヤーとオブジェクトのrectが被っていないか、ピクセルの色情報からゲットし、それで補正を掛けています。

ターゲット:Windows, Mac
開発:Java + Processing