0
私は既に移動バスケットのコード化と衝突検出を管理していますが、卵を一つずつ印刷することは困難です。私はオブジェクト指向のプログラミングに慣れていないので、通常の関数ではなくクラスを操作するのが難しいと思っています。私が起こそうとしていることは、完全に落ちるのではなく、卵を一つずつ落とすことです。 サイドノート:私は卵産卵の間にバッファーを追加したいと思います。それはどうしたらいいのですか?私の卵キャッチャーゲームのために落ちる卵を作る方法は?オブジェクト指向プログラミングの新機能C++
#define RIGHT 0
#define LEFT 1
#define number 10
int isalive = 0;
int score = 0;
int lives = 0;
int direction = 1;
class GameObject
{
public:
int x, y;
char symbol;
virtual void draw() = 0;
};
class basket : public GameObject
{
public:
basket(char symbol, int x, int y)
{
this->symbol = symbol;
this->x = x;
this->y = y;
}
void draw()
{
for (int z = 0; z < 5; z++)
{
gotoxy(x + z, y);
cout << symbol;
}
}
void movement()
{
if (_kbhit())
{
char ch = _getch();
switch (ch)
{
case 'a':
direction = RIGHT;
break;
case 'd':
direction = LEFT;
break;
}
}
}
void bounce()
{
switch (direction)
{
case RIGHT: x--;
break;
case LEFT: x++;
break;
}
if (x >= 75)
{
direction = RIGHT;
}
if (x <= 0)
{
direction = LEFT;
}
}
};
class egg : public GameObject
{
private:
public:
int isalive;
egg(char symbol,int y)
{
this->symbol = symbol;
this->y = y;
}
~egg(){}
void movement()
{
y++;
if (y > 23)
{
/*y = 0;*/
lives = lives +1;
isalive = 0;
}
}
void draw()
{
{
gotoxy(x, y);
cout << symbol;
gotoxy(0,2);
cout<<"Broken Eggs:"<<lives;
gotoxy(40,2);
cout<<"Score:"<<score;
}
}
void checkcollison(basket *basket)
{
if (x == basket->x && y == basket->y)
{
y = 0;
score += 50;
isalive = 0;
}
}
};
int main()
{
basket *f[4];
egg *eggs[number];
for (int z = 0; z < 4; z++)
{
f[z]= new basket('X', 38+z, 23);
}
for(int y = 0; y<number; y++)
{
eggs[y] = new egg('0',0);
}
while (true)
{
clrscr();
for (int z = 0; z < number;z++)
{
if (eggs[z]->isalive ==0)
{
eggs[z]->x = rand() %40+20;
eggs[z]->isalive = 1;
}
if(eggs[z]->isalive !=0)
{
eggs[z]->draw();
eggs[z]->movement();
}
}
for (int z = 0; z != 4; z++)
{
f[z]-> draw();
if(kbhit())f[z]->movement();
f[z]->bounce();
}
Sleep(100);
}
return 0;
}
は、それがシームレスに動作上方に設けられたコードと連携して使用する場合、私は私の元のコード、前後に跳ねるバスケットを含み、すなわち1でそれを実装行うときに、しかし、得点と生活、どうもありがとうございました、それは完全に台無しに見える。これは多くのことを尋ねているかもしれませんが、私が完全なコードを投稿した場合は助けてくれますか?私は経験豊富なプログラマーの頭痛を訴えるかもしれないので、もともとこれを離れてしまった。 – Clueless
投稿、私はそれを見てみましょう。 (明日はおそらく) –