ゲームのアルゴリズムを教えて管sai (199レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

109: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:21:38 ID:Vu7kcDak(1/3) AAS
>>96
96(3): 名前は開発中のものです。 [sage] 2008/03/12(水) 21:02:38 ID:K0/YrLVn(1) AAS
今、C言語でシューティングゲーム作ってるんですが、
連続した弾の出し方が分かりません。教えてください。
専門学校の先生には、配列を使えと言われたのですが、
よく分かりません。

今、作成している途中のソースコードを書きます。

void Shot(void)
{
  for(i=0;i<100;i++)
  {
    if(Bullet[i].flag == 0 && Bullet[i].type == 0)
    {
      Bullet[i].flag = 1 ;
      Bullet[i].x = (Jiki.x+Jiki.x+Jiki.width) / 2 ;
      Bullet[i].y = Jiki.y ;
    }
  }
}

void KeyCheck(void)
{
  if(GetAsyncKeyState(VK_SPACE)<0){ Shot(); }
}
100個程度ならいいですけど配列でもいいかもしれないけど
双方向リストとかを使うようにしたほうがいいかも。c言語だし。
まあこの辺は後ほど。
でも配列を使えとかいう講師に双方向リストを実装して提出したら
うらまれそうw

unsigned int KeyShotFrmCnt = 0; //ショットキーのウェイト用カウンター
↑これはソースの頭のほうに書いてね。

void KeyCheck(void)
{
??if (KeyShotFrmCnt == 0)
??{
???if(GetAsyncKeyState(VK_SPACE)<0)
???{
????Shot();
????(KeyShotFrmCnt = 10;
???}
??} else {
???--KeyShotFrmCnt;
??}
}
110: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:23:33 ID:Vu7kcDak(2/3) AAS
うは、コピーしたらなんか辺になったorz
void KeyCheck(void)
{
if (KeyShotFrmCnt == 0)
{
if(GetAsyncKeyState(VK_SPACE)<0)
{
Shot();
KeyShotFrmCnt = 10;
}
} else {
--KeyShotFrmCnt;
}
}
111: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:28:56 ID:Vu7kcDak(3/3) AAS
2chってスペース空けるの面倒だなw

AAエディタとかで整形してるのか?
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.018s