コード:
void tama() { //弾描画関数
if (GetKeyboardTrigger(DIK_X)) {
for (int i = 0; i < 5; i++)
{
shot_flg[i] = 1;
if (shot_flg[i] == 0)
{
shot_x[i] = input_lr + 21.0f;
shot_y[i] = input_ud - 100.0f;
break;
}
}
}
for (int i = 0; i<5; i++)
{
if (shot_flg[i] == 1)
{
shot_y[i] += dspeed;
}
if (shot_y[i]>480.0f)
{
shot_flg[i] = 0;
shot_x[i] = input_lr + 21.0f; //input_lr 自機x座標 input_ud自機y座標
shot_y[i] = input_ud - 10.0f;
}
}
typedef struct {
float x, y, z;
float rhw;
D3DCOLOR cor;
float tex_u, tex_v;
}VERTEX_2D;
//データの値を設定
VERTEX_2D vertex[4];
//弾
for (int i = 0; i < 5; i++)
{
if (shot_flg[i] == 1)
{
vertex[0].x = shot_x[i];
vertex[0].y = shot_y[i];
vertex[0].z = 0.0f;
vertex[1].x = shot_x[i] + 30.0f;
vertex[1].y = shot_y[i];
vertex[1].z = 0.0f;
vertex[2].x = shot_x[i] + 30.0f;
vertex[2].y = shot_y[i] + 30.0f;
vertex[2].z = 0.0f;
vertex[3].x = shot_x[i];
vertex[3].y = shot_y[i] + 30.0f;
vertex[3].z = 0.0f;
vertex[0].rhw = 1.0f;
vertex[1].rhw = 1.0f;
vertex[2].rhw = 1.0f;
vertex[3].rhw = 1.0f;
vertex[0].cor = D3DCOLOR_XRGB(255, 255, 255);
vertex[1].cor = D3DCOLOR_XRGB(255, 255, 255);
vertex[2].cor = D3DCOLOR_XRGB(255, 255, 255);
vertex[3].cor = D3DCOLOR_XRGB(255, 255, 255);
vertex[0].tex_u = 0.0f;
vertex[0].tex_v = 0.0f;
vertex[1].tex_u = 1.0f;
vertex[1].tex_v = 0.0f;
vertex[2].tex_u = 1.0f;
vertex[2].tex_v = 1.0f;
vertex[3].tex_u = 0.0f;
vertex[3].tex_v = 1.0f;
}
g_pd3dDevice->DrawPrimitiveUP(D3DPT_TRIANGLEFAN, 2, vertex, sizeof(VERTEX_2D));
}
}
自機から下に弾が出てしまいます。自機から上に弾を出したいのですが分からないので教えてください