ゲムキTOP > ブログTOP

ハルポップの徒然雑記

ためになる話、どうでもいい話など

マリオの完コピvol.9 パレットアニメ

ハルポップ 2016-05-12 22:33:12 pv:2337
?ブロックの色がチカチカ光っているのをどう作るか。オリジナルは4コマある。
形は変わっていないけど色だけ変わっている。

オリジナルはおそらくパレットの色を変えてアニメーションしているのだと思う。
こっちも同じように絵は1枚で色だけを変えていくようにやってみる。
下のように変えたい色を白にして用意。


そしてsprite::setColorのメソッドを使う。
4コマ分の色を指定してオリジナルと同じように出来た。

…と思ったけど、よく見たら?マークの色も変わっていて失敗。
どうしたらいいか悩む。

参考:http://narudesign.com/devlog/cocos2d-ccsprite-setcolor/

マリオの完コピvol.8 マップスクロール

ハルポップ 2016-05-11 22:38:43 pv:3420
マリオが移動すると背景のマップがスクロールするように対応。そして戻れないように。
マリオは背景と同じレイヤーに配置されているので、背景レイヤーのX座標を変えるだけで表現できる。

this->addchild(bglayer);
bglayer->addchild(mario);
このようにシーンレイヤーに背景レイヤーを追加し、背景レイヤーにブロックやマリオを追加している。


マリオの完コピvol.7 ステージマップ

ハルポップ 2016-05-10 21:48:01 pv:3384
Tiledというエディタでステージマップを作ってみる。
最初、出力形式をcsvにやっててうまく読み込めずハングしてはまっていた。形式はXMLにしたらよい。
それからマップチップはバラバラ画像だと色がうまく出力されないのでバラバラをまとめた一枚のマップチップがいい。




↑草原が雲と同じ絵なのは本家もメモリ節約のためそうしているようだ。色を変えているため雲と同じと気づきにくい。
こちらのゲームクリエイター列伝2にその秘話が書かれている。
http://review.game-kids.net/read.php/4063128369/

マリオの完コピvol.6 上下の当たり判定

ハルポップ 2016-05-09 19:52:36 pv:3382
左右の当たり判定に続いて上下の当たり判定の作成。



これでうまくいってそうに見えているけど、ブロックの角から侵入した時の処理がうまくいっていない。
本家マリオでは角にぶつかると少し横に補正されてジャンプが続く。
そのへんの調整は後回しにしてみる。

次回はステージマップの作成。

マリオの完コピvol.5 左右の当たり判定

ハルポップ 2016-05-08 23:48:48 pv:4236
地形との当たり判定を実装。
現在、マリオが床に乗っているのは無理やりその座標に合わせているからで、当たり判定で乗っているわけではない。

当たり判定は基本のように見えてかなり難しい部類に入る。
アイテムを取ってパワーアップ、敵をミサイルで撃って敵が消滅、のような当たり判定は、当たると対象が消えるだけで済むので簡単なほうである。
しかし、地形との当たり判定は、当たった後、そこで止まらないといけない。ギリギリで止めるための座標補正も必要だ。

将来、敵を上から踏みつけるための当たり判定も必要となってくるので、マリオの肝はこの当たり判定にあると言っていいかも。

とりあえず左右の当たり判定を実装。