現状こんな感じ。キー入力にバグがあります…。
追加したのは
【自機】
・スペースキーで弾発射。
・弾の処理
【インベーダー】
・弾にあたると消える
・数を増やした
簡単に書くとこんな感じです。インベーダーは縦と横にあわせた二次元配列で管理してるけど、一次元配列で管理した方が撃ち落とされたインベーダーのインスタンスを削除するときに管理用の配列も一緒に削除すれば配列の走査の時にスピードアップするし便利かなぁとちょっと思ってます。まだまだ作る所があるのであとで考えよう。
→インベーダーその2を見る
インベーダーゲーム進捗その2
インベーダーゲーム進捗その1
と言うわけで制作してます。現在のところここまで作りました。
【全体】
・背景の星
【インベーダー】
・左右に動いて端まで行くと下に降りる。
・攻撃する
【自機】
・カーソルキーで左右に動く
自機から弾が出せるようになったら衝突判定を付けるので大分それらしくなると思います。
現在はこんな感じです。
→インベーダーその1を見る
宣言!インベーダーゲーム作ります
久しぶりにゲームを作ります。作るのは1年ぐらい前に作ろうとして途中で断念したインベーダーゲームタイプの物。あれから色々勉強したのでどれぐらいスキルアップしたかの物差しにしようかと。経過も含めてこのブログで報告します。
蘇るPC-8801伝説 永久保存版
『蘇るPC-8801伝説 永久保存版』とは随分懐かしいのが出てきましたねぇ。初めてパソコンを買ったのは1983年の9月。すでにモデルチェンジしてたけどなんにもわからなかったので展示品を5万円ど買ってもらったのがはじまり。ゲームを作るようになってからはPC-8001のキャラクタグラフィックにあこがれたなぁ。ちょうどwindowsマシンも手に入れたことだし昔を懐かしんでみんながコレで燃えた!NEC8ビットパソコン PC-8001・PC-6001とあわせて買おうかな。Xanaduを作った木屋さんとか、森田和郎さんのインタビューなんてたまらんなぁ。森巧尚さんのインタビューとかのせてベーマガでもこういうの出してくれたら良いのに。
PHP ゼロサプレス ゼロパディング
PHPでゼロサプレスのやりかた。というか、ゼロを足すのをゼロサプレスだと思ってましたが、ゼロを足すのはゼロパディングというそうです。なのでゼロパディングのやりかたを。まぁ「「PHP ポケットリファレンス」」とかリファレンス本を読めば分かることだったんだけど。
$a = 20;
$b = sprintf(“%04d”, $a);
print $b;
— 出力結果 —
0020
となります。
これだけです。 %04d の 0 ってのが0を付けるという意味。後ろの4が、4桁でということです。なので %06dとやると、さっきのは 000020 になります。