http://sky.geocities.jp/kmaedam/xna/spiral.htm
どこかで見たような弾幕。画像にアルファチャンネルを追加してない事をごまかす為に背景を黒くした。
試したついでに、逆にするには
array.Add(new Fire(1, 400, 300, i, add + (j * 90)));
これを
array.Add(new Fire(1, 400, 300, i, -(add + (j * 90))));
とすると出来る。
ここだけ換えると、画像の表示順は変わらないのでちょっと見た目が変わる。draw部分はforeachで回しているので、ループに入る前に配列を逆順にすると良いんじゃないかな。そこは試してないけど。
さらに螺旋のパターンを変えてみる。
上記二つは90度毎に10発の弾であったが、これを36度毎に1発の発射すると以下のようになる。元のソースを崩したくなかったので多重ループのままです。
for (j = 0; j < 10; j++)
{
for (i = 0; i < 1; i++)
{
array.Add(new Fire(1, 400, 300, i, (add + (j * 36))));
}
}
螺旋の回転するスピードを変更するには以下の一文を書き換える。
add = (add + 10) % 360;
目が回る・・・
Sponsored Link
コメント
おー
シューティングゲームで作るための文章ですね
すごいなー
>> riori
サンプルスクリプトいじってるだけでたいしたことじゃないですよ。