velengel++

徒然なるままに.

Dr.MARI0を作った話(ゆるふわ

この記事は、みす 52nd Advent Calendar 2017 - Adventar n日目の記事です。(n=20)

冬と言えば風邪ですね。風邪と言えば薬です。僕も11月終わりにお世話になりました。というわけで今回はゲームを作ったお話です。


なに作ったの

ドクターマリオというパズルゲーを皆さんはご存知でしょうか。
というわけでドクターマリゼロを作ってみました。

がぞう

f:id:velengel:20171220184246p:plain

丸がウイルスで四角がカプセルですね。下にデバッグでセメントを敷いています。

やりたいんだけど

ごめんね。もうちょっとまって。かたちにしたい。

がんばったところ

  • rep(i,j)
    • 競プロ勢ならお馴染み、#defineで書きますよね。今回はblockが2*2だったのでfor(..)for(..)って書くのがめんどくさくて、これ専用のマクロにしました。まさか競プロがこんなとこで役立つとはね。
  • 謎の引力
    • できるようになったらぜひ見てください。カプセル判定をつけてないので、消したら落ちます。ひゅーん。
  • Dxlibからopenframeworksへの移行
    • もうこれが本当に大変だったんですよ。大学の授業4コマ分使いましたね。
    • mach-o linker error exit code 1
    • 解決法:プロジェクトのパスを見直すとかやっても全然ダメだったので、追加したヘッダーを消して変数は全部ofApp.hにstaticつけて突っ込んで、関数はofApp.cppにベタ書きしました。オブジェクト指向のかけらもないですね。ウケる。

でもちゃんと設計するより脳死でベタ書きの方が楽しいんだよなあ。(保守性が死ぬ

てんぼう

  • nextがないですね、ごめんなさい。
  • ドット絵とか頑張りたいですよね。
  • エフェクトも付けたら盛り上がりそう。
  • なによりMIDI研なんだからBGMやSEですよね。
  • クリアとかどうしようかなー。単純ゲーで無限に続いて飽きたらやめる、でもまあいいんだけど。
  • マウス操作できるようにしたい(もっと脳トレ細菌撲滅的な
    • これの何がいいって、ブロック2つ出しができるようになって単調性が解消されると思うんですよね。難易度は上がるけど。
    • 当たり判定とか今以上に苦労しそうだけど。

終わりに

こんだけアドベントカレンダーでまじめなネタが余ってるってことは普段からアウトプットしなさすぎなんですよね、よくない。来年はたくさんアウトプットしていこうと思います。